TCP/IP协议的传输层协议主要有两个:
TCP:传输控制协议
IP:用户数据报协议
TCP报文段是将若干个字节构成一个分组,称为报文段。
TCP报文段的首部格式(首部长度为20~60字节)
源端口号
目标端口号
确认号
首部长度
保留
控制位:
URG:紧急指针有效位
ACK:只有当ACK=1时,确认序列号字段才有效;当ACK=0S时,确认号字段无效。
PSH:标志位为1时,要求接受方尽快将数据段送达应用层。
RST:值为1时,通知重新建立TCP连接。
SYN:同步序号位,TCP需要建立连接时将这个值设为1。
FIN:发送端完成发送任务为,当TCP完成数据传输需要断开连接时,提出断开连接的一方将这个值设为1。
窗口大小
效验和
紧急指针
选项
TCP连接
在数据通信之前,发送端与收端要先建立连接;等数据发送结束后,双方再短开链接。TCP连接的每一方都是有一个IP地址和一个端口号组成的。
为什么TCP释放连接需要四次?
TCP建立连接需要进行三次握手,而断开连接需要进行四次握手,这是由于TCP的半关闭造成的,因为TCP连接是全双工,所以进行关闭时每个方向上都要单独关闭,这个单方向关闭叫做办关闭。当一方完成它数据发送任务的时候,就发送一个FIN来向另一方通告对方我将要终止这个方向的连接。
TCP连接的释放一共需要四部(四次挥手)
一次挥手:
当PC1认为数据发送完成后,他需要向PC2发送连接释放请求,FIN表示你报文段是一个连接释放请求。
第二次挥手:
当PC2收到释放请求后会通知相应的应用的程序,告诉它PC1方向PC2这个方向的连接已经释放。
ACK=1时除了TCP连接的请求报文以外,TCP通信过程中所有的数据的 ACK都为1,代表应答。
当第二次挥手完成后,PC1到PC2方向的连接已经释放。
端口号 | 协议 | 说明 |
21 | FTP | FTP服务器所开发的控制端口 |
23 | TELNET | 用于远程登录,可以远程控制管理目标计算机 |
25 | SMTP | SMTP服务器开放的端口,用于发送邮件 |
80 | HTTP | 超文本传输协议 |
110 | POP3 | 用于邮件的接受 |
端口 | 协议 | 说明 |
69 | TFTP | 简单文件传输协议 |
111 | RPC | 远程过程调用 |
123 | NTP | 网络时间协议 |
访问控制列表的概述:
1、路由器和交换机接口的指令列表,用来控制端口进出的数据包。
2、表中包含了匹配关系;条件和查询语句,表只是一个框架结构,目的是为了对某种访问进行控制。
规则
入站:对到来的分组进行处理后再路由到主站接口,效率高。
出站:对分组路由到出站接口,然后根据ACL对其进行处理。
要么应用出站,要么应用入站,区别应用入站时,不在经过路由器处理数据,直接在ACL控制,匹配就通过,不匹配就下一条。
优先顺序:从上到下,每次访问一条。
列表类型
1~99和1300~1999:标准IP ACL(基于源IP地址过滤)
100~199和2000~2699:扩展IP ACL(基于源目的IP地址,源和目的TCP/IP端口,协议类型)
隐藏语句:access-list ip deny any any //拒绝所有
access-list ip per any any //允许所有
创建标准ACL
access-list 1 permit 192.168.1.0 0.0.0.255
access-list 1 permit (关键字:host、any)192.168.2.2
删除建立的ACL语法
no access-list access-list-number
标准ACL应用于接口
ip access-group access-list-number {in | out}
no ip access-group access-list-number {in | out} //取消ACL应用
show access-list //查看ACL配置
扩展ACL
创建扩展ACL
(例如1:允许网络192.168.1.0/24访问网络192.168.2.0/24的IP流量通过,而拒绝其他任何流量)
access-list 10 permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
access-list 10 deny ip any any
(例如2:拒绝网络192.168.1.0/24访问FTP服务器192.168.2.2/24的IP流量通过)
access-list 10 deny tcp 192.168.1.0 0.0.0.255 host 192.168.2.2 eq 21
access-list 10 permit ip any any
删除已建立扩展ACL命令(不能删除单条ACL语句,只能删除整个ACL)
no access-list access-list-number
应用接口(取消接口上的应用命令前面加no)
int e/0
ip access-group access-list-number {in | out}
创建命名ACL命名语法
ip access-list {standard | extended} access-list-name
创建标准命名ACL
例如: ip access-list standard cisco
peimit host 192.168.1.1
deny any
创建扩展命名ACL
例如: ip access-list extended bent
11 permit ip host 192.168.1.10 host 192.168.100.100
permit ip any host 192.168.100.100
远程ACL管理
案例:
access-list 1 permit 192.168.2.0 0.0.0.255
username benet password tset
line vty 0 4
login local
access-list 1 in
exit
有