传输层
作用
网络层: 提供点到点的连接
传输层: 提供端到端的连接
------------------------------------------------
协议
TCP
传输控制协议
可靠的、面向连接的协议
传输效率低
UDP
用户数据报协议
不可靠的、无连接的服务
传输效率高
---------------------------------------------------
TCP的封装格式
16位源端口号 16位目标端口号
32位序列号
32位确认号
4位首部长度 保留(6位) URG ACK PSH RST SYN FIN 16位窗口大小
16位校验和 16位紧急指针
可选项
数据
-----------------------------------------------------
TCP的连接
三次握手:
1 A主机: 发送 SYN ,请求建立连接
2 B主机: 发送 SYN 、ACK
3 A主机: 发送ACK
四次断开:
1 A主机:发送 FIN,请求断开连接
2 B主机: 发送 ACK
3 B主机: 发送 FIN,请求断开连接
4 A主机:发送ACK
----------------------------------------------------------
TCP的应用
FTP 文件传输协议,上传,下载 21
Telnet 远程登陆 23
SMTP 简单邮件传输协议,发邮件 25
DNS 域名解析服务 53
HTTP 超文本传输协议 80
-----------------------------------------------------------
UDP协议
UDP的封装格式
16位源端口号 16位目标端口号
16位UDP长度 16位UDP校验和
数据
-------------------------------------------------------------
UDP的应用
TFTP 简单文件传输协议 69
DNS 域名解析服务 53
NTP 网络时间协议 123
-------------------------------------------------------------
UDP的流控和差错控制
UDP缺乏可靠机制
UDP只有校验和来提供差错控制
需要上层协议来提供差错控制: 例如TFTP协议
TFTP协议提供分块传输、分块确认机制,保证数据传输的可靠性
-------------------------------------------------------------
acl
访问控制列表(ACL)
读取第三层、第四层 头部信息
根据预先定义好的规则对数据进行过滤
ACL利用以下4个元素定义规则。
IP报头: 源/目的(地址)
TCP报头: 源/目的(端口)
--------------------------------------------------------------
工作原理
访问控制列表在接口应用的方向
出: 已经过路由器的处理,正离开路由器接口的数据包
入: 已到达路由器接口的数据包,将被路由器处理
入/出(方向)
列表应用到接口的方向与数据方向有关
------------------------------------------------------------
处理过程
到达访问控制组接口的数据包,匹配第一条。
如果第一条不匹配,则匹配下一条。
依此类推,如果一直到最后都不匹配,则“隐含的拒绝”,丢弃数据包。
acl 隐含的拒绝 类似白名单,没提到的不让通过。
反掩码 0是严格匹配,255是不关心
一旦写错了,no掉,它会全部都删除的,所以一开始就要写对,可以写到文本里确认无误再敲命令。
ip access-group 1 in 这个1的组只用写一次
1个接口只能应用一个列表!
-------------------------------------------------------------
类型
(标准)访问控制列表
基于源IP地址过滤数据包
标准访问控制列表的访问控制列表号是 1~99
(扩展)访问控制列表
基于源/目的IP地址、指定协议、端口来过滤数据包
扩展访问控制列表的访问控制列表号是 100~199
---------------------------------------------------------------
标准ACL配置
创建ACL
Router(config)#access-list access-list-number { permit | deny } source [ source-wildcard ]
允许数据包通过 拒绝数据包通过
应用实例
Router(config)# access-list 1 permit 192.168.1.0 0.0.0.255
Router(config)# access-list 1 permit 192.168.2.2 0.0.0.0
允许192.168.1.0/24和主机192.168.2.2的流量通过
隐含的拒绝语句
Router(config)# access-list 1 deny 0.0.0.0 255.255.255.255
关键字
host
any
将ACL应用于接口
Router(config-if)# ip access-group access-list-number {in |out}
如:ip access-group 1 in
在接口上取消ACL的应用
Router(config-if)# no ip access-group access-list-number {in |out}
查看访问控制列表
Router(config)# Show access-lists
删除ACL
Router(config)# no access-list access-list-number
------------------------------------------------------------------------------------------------------
扩展访问控制列表的配置
创建ACL
Router(config)# access-list access-list-number { permit | deny }
protocol { source source-wildcard destination destination-wildcard } [ operator operan ]
应用实例
Router(config)# access-list 101 deny tcp 192.168.1.0 0.0.0.255 host 192.168.2.2 eq 80
Router(config)# access-list 101 permit ip any any
----------------------------------------------------------------------------------------------------------
NAT
Network Address Translation,网络地址转换
作用
通过将内部网络的私有IP地址翻译成全球唯一的公网IP地址,使内部网络可以连接到互联网等外部网络上。
------------------------------------------------------------------------------------------------------------
私有IP地址分类
A类 10.0.0.0 ~ 10.255.255.255
B类 172.16.0.0 ~ 172.31.255.255
C类 192.168.0.0 ~ 192.168.255.255
--------------------------------------------------------
NAT
优点:
节省公有合法IP地址
处理地址重叠
安全性
缺点:
延迟增大
配置和维护的复杂性
---------------------------------------------------------
NAT实现方式:
静态转换 :适用于服务器
端口多路复用:适用于公司里的个人电脑
undebug ip nat #取消
----------------------------------------------------------
静态NAT
静态转换
IP地址的对应关系是一对一,而且是不变的,借助静态转换,能实现外部网络对内部网络中某些特设定服务器的访问。
静态NAT配置步骤:
接口IP地址配置
决定需要转换的主机地址
决定采用什么公有地址
在内部和外部接口上启用NAT
Router(config)#ip nat inside source static local-ip global-ip
-------------------------------------------------------------
静态NAT的配置(续1)
将内网地址192.168.1.1静态转换为合法的外部地址100.0.0.2以便访问外网。
设置外部接口的IP地址:
Router(config)#interface g0/1
Router(config-if)#ip address 100.0.0.1 255.0.0.0
Router(config-if)#no shut
设置内部接口的IP地址:
Router(config)#interface g0/0
Router(config-if)#ip address 192.168.1.254 255.255.255.0
Router(config-if)#no shut
建立静态地址转换
Router(config)#ip nat inside source static 192.168.1.1 100.0.0.2
在内部和外部接口上启用NAT
Router(config)#interface g0/1
Router(config-if)#ip nat outside
Router(config)#interface g0/0
Router(config-if)#ip nat inside
---------------------------------------------------------------
端口多路复用(PAT)
作用
通过改变外出数据包的源IP地址和源端口并进行端口转换,内部网络的所有主机均可共享一个合法IP地址实现互联网的访问,节约IP。
PAT配置步骤:
接口IP地址配置
使用访问控制列表定义哪些内部主机能做PAT
确定路由器外部接口
在内部和外部接口上启用NAT
-----------------------------------------------------------------
PAT的配置
定义内部ip地址
Router(config)#access-list 1 permit 192.168.1.0 0.0.0.255
设置复用动态IP地址转换外部接口
Router(config)#ip nat inside source list 1 interface g0/1 overload
在内部和外部接口上启用NAT,以及配置默认路由
与静态NAT配置相同
-----------------------------------------------------------------------
跟踪NAT
debug ip nat命令跟踪NAT操作
R1#debug ip nat
IP NAT debugging is on
*Mar 1 00:03:56.875: NAT: s=192.168.4.2->145.52.23.2, d=1.1.1.1 52225]
*Mar 1 00:03:57.667: NAT*: s=192.168.4.2->145.52.23.2, d=1.1.1.1 [52481]
*Mar 1 00:03:57.811: NAT*: s=1.1.1.1, d=145.52.23.2->192.168.4.2 [52481]
s=192.168.4.2表示源地址是192.168.4.2
d=1.1.1.1表示目的地址是1.1.1.1
192.168.4.2->145.52.23.2表示将地址192.168.4.2转换为145.52.23.2
来源:https://www.cnblogs.com/summer2/p/10798416.html