Loading... ## 实训目的 · 熟悉动态NAT/NAPT。 ## 实训背景 NAT(Network Address Translation, 网络地址转换)是1994年提出的,用于将内网地址转换成因特网上的公网地址,并与因特网上其他主机通讯。 动态NAT是在内网连接外网时,临时将内网地址与公网地址组成映射关系,一段时间没用就会删除映射关系。动态NAT一般用在有多个公网地址、并且内网地址同时并发数小于等于公网地址的情况下,单纯的动态NAT一般用在ISP级别,比较少用。 NAPT(Network Address Port Translation, 网络地址端口转换)或者说是NAT overload,是将源地址+源端口与目地址+目端口记录在NAT表中做匹配的,所以可以实现大量内网地址共用少量(1个)公网地址的方式,现在被广泛使用。普通家用路由器就是NAPT方式。 在锐捷RSR20中,动态NAT即使不加overload也是默认端口复用(NAPT)。 ## 实训拓扑 ![](https://cdn.gta5pdx.cn/usr/uploads/2022/06/4000822351.png) 实训所需设备: 环境:Cisco Packet Tracer 8.0 设备: 3台PC,1台二层交换机,1台2811路由器,1台Server服务器 ## 实训步骤 ###### 步骤1:基本配置。 R1: ``` Ruijie>enable Ruijie#configure terminal Ruijie(config)#hostname R1 R1(config)# ``` ###### 步骤2:SW1不用配置,当成普通交换机,设置路由器R1内外接口。 ``` R1(config)#interface fastEthernet 0/0 R1(config-if-FastEthernet 0/0)#no shutdown R1(config-if-FastEthernet 0/0)#ip address 208.60.117.98 255.255.255.0 R1(config-if-FastEthernet 0/0)#ip nat outside R1(config-if-FastEthernet 0/0)#exit R1(config)#interface fastEthernet 0/1 R1(config-if-FastEthernet 0/0)#no shutdown R1(config-if-FastEthernet 0/1)#ip address 192.168.1.1 255.255.255.0 R1(config-if-FastEthernet 0/1)#ip nat inside R1(config-if-FastEthernet 0/1)#exit R1(config)# ``` ###### 步骤3:配置PC1、PC2、PC3的IP地址。 PC1: ![](https://cdn.gta5pdx.cn/usr/uploads/2022/06/1934336861.png) PC2: ![](https://cdn.gta5pdx.cn/usr/uploads/2022/06/1762714302.png) PC3: ![](https://cdn.gta5pdx.cn/usr/uploads/2022/06/1722909296.png) Server: ![](https://cdn.gta5pdx.cn/usr/uploads/2022/06/1453938451.png) ***因为Server代表了因特网上的服务器,所以它并不需要把默认网关设置为我们的路由器R1。*** ###### 步骤4:设置动态NAT规则。 ``` R1(config)#ip nat pool gzccc1 208.60.117.98 208.60.117.99 netmask 255.255.255.0 //定义名为gzccc1的地址池,本例中有2个出口地址,208.60.117.99不需要在F0/0上配置也能使用 R1(config)#access-list 2 permit 192.168.1.0 0.0.0.255 //定义ACL,允许哪些IP可以经过NAT R1(config)#ip nat inside source list 2 pool gzccc1 overload //设置动态NAT规则 R1(config)#end R1# ``` 以上规则创建了动态的NAT,将多个内网地址192.168.1.0/24 经过R1转换成多个公网地址(208.60.117.98或208.60.117.99),这个规则有3个特点: · 多对多的动态转换,内网访问外网会在地址池内择一转换。 · 除了外网接口的公网IP外,地址池中的其他地址,并不需要配置,路由器会根据内部的NAT表来响应。 · 在锐捷RSR20中,外网地址是依次轮流使用的,例如PC1先发起连接,则 208.60.117.98会先分配给PC1,下一台PC分配到208.60.117.99,再下一台PC分配到 208.60.117.98,依此循环,重复使用。 ###### 步骤5:验证。 ``` R1#show ip nat translations ``` 在R1中show ip nat translations,发现此时表为空。 在PC1的浏览器中访问208.60.117.100,可以看到,R1分配了IP地址 218.85.152.98 给PC1作为临时外网地址。 查看R1的NAT转换表 ``` R1#show ip nat translations ``` ![](https://cdn.gta5pdx.cn/usr/uploads/2022/06/3807389220.png) 在Server中查看其arp,发现Server虽然能响应PC1~3的连接,但是Server并不知道PC1 ~ 3的存在。这就是NAT起的作用。 Server中有 208.60.117.98 和 208.60.117.99 的MAC地址(都是R1的F0/0端口MAC),但是Server主动去ping 208.60.117.99 却丢包,说明动态NAT的其他地址(208.60.117.99)不需要配置,R1上也没有真正的208.60.117.99,R1会根据内部的NAT表来响应与 208.60.117.99相关的通讯。 ![](https://cdn.gta5pdx.cn/usr/uploads/2022/06/3163708420.png) 例如内网PC2临时映射了 208.60.117.99,则在外网返回数据给 208.60.117.99 时,R1会将数据返回给PC2,而外网主动连接 208.60.117.99 时,R1没有在NAT表中没有找到匹配记录,于是丢弃,不响应。 ![](https://cdn.gta5pdx.cn/usr/uploads/2022/06/1871868608.png) ###### 步骤6:NAT表的超时。 PC1 ~ 3都不访问Server,静等2分钟后,在R1中show ip nat translations,发现此时表已清空。 最后修改:2022 年 06 月 06 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏