NAT
NAT(Network Address Translation,网络地址转换)是1994年提出的,用于实现私有网络和公有网络之间的互访。当在专用网内部的一些主机本来已经分配到了本地IP地址,但又想和外网上的主机通信时,可使用NAT方法。
这种方法需要在私网IP连接到公网IP的路由器上安装NAT软件。装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的公网IP地址。这样,所有使用私网IP地址的主机在和外界通信时,都要在NAT路由器上将其本地地址转换成公网IP地址,才能和外网连接。
工作原理:
NAT用来将内网地址与端口号转为合理的公网地址和端口号,建立一个会话与公网进行通信(一个公网地址对应多个私网地址)
优点:节省公有合法TP地址、外理地址重卷、增强灵活性、安全性
缺点:延迟增大、配置和维护的复杂性、不支持某些应用(比如VPN),所以应用走公网的话会加大延迟
私有地址
A类私有地址:10.0.0.0~10.255.255.255 /8 /14是A类
B类私有地址:172.16.0.0~172.31.255.255 /16 /23是B类
C类私有地址:192.168.0.0~192.168.255.255 /24 /24以上都是C类
静态NAT
静态NAT实现私网地址和公网地址的一对一转换。有多少个私网地址就需要配置多少个公网地址。
静态NAT不能节约公网地址,但可以起到隐藏内部网络的作用。
内部网络向外部网络发送报文时,静态将报文的源地址替换为对应的公网地址。
外部网络向内部网络发送响应报文时,静态 AT将报文的目的地址替换为相应的私网地址。
有2种配置方法:
第一种:全局模式下设置静态NAT
[R1]nat static global 8.8.8.8 inside 192.168.10.10
[R1linta0/0/1(外网口)
[R1-GigabitEthernet0/0/1]nat staticenable (在网口上启动nat static enable功能)
第二种:直接在接口上声明nat static
[R1]intg0/0/1(外网口)
[R1-GigabitEthernet0/0/1]nat static global 8.8.8.8 inside 192.168.10.10
[R1]dis nat static (查看NAT静态配置信息)
动态NAT:多个私网IP地址对应多个公网IP地址,基于地址池一对一映射
1、配置外部网口和内部网口的IP地址
2、定义合法IP地址池
[R1]nat address-group1 212.0.0.100 212.0.0.200(新建一个名为1的nat地址池 ,范围是212.0.0.100到212.0.0.200)
3、定义访问控制列表[R1]acl 2000
创建ACL,允许源地址为192168.20.0/24网段和11.0.0.0/24的数据通过
[R1-acl-basic-20001]rule permit source 192.168.20.00.0.0.255 允许源IP为192.168.20.0的数据通过(把permit换成deny则是拒绝)
[R1-acl-basic-2000]rule permit source 11.0.0.0.0.0.0.255
4、在外网口,上设置动态IP地址转换
[R1-acl-basic-2000]intg0/0/1 (外网口)
[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group1no-pat (将ACL2000匹配的数据转换为改接口的IP地址作为源地址)(no pat不做端口转换,只做IP地址转换,默认为pat)
ACL访问控制列表
创建ACL,允许源地址网段和反掩码通过
(1)ACL两种作用
用来对数据包做访问控制(丢弃或者放行)
结合其他协议,用来匹配范围
(2)ACL工作原理
当数据包从接口经过时,由于接口启用了acl,此时路由器会对报文进行检查,然后做出相应的处理。
(3)ACL种类
基本acl(2000-2999):只能匹配源ip地址。
高级acl(3000-3999):可以匹配源ip、目标ip、源端口、目标端口等三层和四层的字段和协议。
二层ACL(4000-4999):根据数据包的源AC地址、目的MAc地址、802.1q优先级、二层协议类型等二层信息制定规则。
(4)ACL的应用原则:
基本ACL,尽量用在靠近目的点
高级ACL,尽量用在靠近源的地方(可以保护带宽和其他资源)
NAT Server配置命令
NAT server:端口映射,将私网地址端口映射到公网地址,实现内网服务器供外网用户访问
[R1]int a0/0/1
[R1-GigabitEthernet0/0/11nat server protocol tcp global 9.9.9.9 www inside 192.168.10.100 www(在连接公网的接口上将私网服务器地址和公网地址做一对NAT映射绑定)
[R1-Giaabi LEthernet0/0/1nat server protocol tep global current-interface 8080 inside 10.1.1.1 www(在连接公网的接口,上将私网服务器地址和外网接口做一对NAT映射绑定)
[R1-GigabitEthernet0/0/1]nat server protocol tcp global current-interface 8080 inside 10.1.1.2 www
EasyIP(多个内网地址对一个接口)
多个私网IP地址对应路由器外网接口公网IP地址
1、配置外部网口和内部网口的IP地址
2、定义合法IP地址池
由于直接实验外网口IP地址所以不用再定义IP地址池
3、定义访问控制列表
rule permit ip source 192.168.30.0 0.0.0.255(允许源地址为192168300/24网段的数据通过)
4、在外网口,上设置IP地址转换
natoutbound 3000 当ac13000匹配的源IP数据到达此接口时,转换为该接口的IP地址:做为源地址
display nat session all ( 查看NAT的流表信息)
PAT端口多路复用
1、PAT作用
改变数据包的ip地址和端口号
能够大量节约公网IP地址
2、PAT类型
动态PAT:包括NAPT和EasyIP
静态PAT:包括NAT Server
3、NAPT配置命令
NAPT:多个私网p地址:对应定外网IP地址(比如200.1.1.10),配置方法与动态NAT类似
配置外部网口和内部网口的IP地址
定义合法IP地址池
[R1]nat address-group 1 200.1.1.10 200.1.1.10(使用一个固定IP
定义访问控制列表)
[R1]acl2000(允许源地址为192168300/24网段的数据通过)
[R1-acl-adv-2000]rule permit source 192.168.30.0 0.0.0.255
在外网口上设置IP地址转换
[R1-acl-basic-2000linta0/0/1 (外网口)
[Rl-GigabitEthernet0/0/1]nat outbound 2000 address-aroup 1