路由器配置NAT
实验目的
通过实验理解NAT的作用以及路由器配置NAT的命令
网络拓扑图
实验环境配置
PC0 192.168.1.1
PC1 192.168.1.2
Server0 192.168.1.222
Router0
内网端口 f0/0 192.168.1.254
外网端口 f0/1 100.1.1.1
Router1
f0/0 100.1.1.2
f0/1 150.1.1.1
Router2
f0/0 150.1.1.2
f0/1 200.1.1.254
PC2 200.1.1.1
Router0
1 #f0/0配置ip
2 Router(config)#int f0/0
3 Router(config-if)#ip add 192.168.1.254 255.255.255.0
4 Router(config-if)#no shutdown
5
6 #f0/1配置ip
7 Router(config)#int f0/1
8 Router(config-if)#ip add 100.1.1.1 255.255.255.0
9 Router(config-if)#no shutdown
10
11 #往Router1的方向配置一条默认路由
12 Router(config)#ip route 0.0.0.0 0.0.0.0 100.1.1.2
Router1
#f0/0配置ip
Router(config)#int f0/0
Router(config-if)#ip add 100.1.1.2 255.255.255.0
Router(config-if)#no shutdown
#f0/1配置ip
Router(config)#int f0/1
Router(config-if)#ip add 150.1.1.1 255.255.255.0
Router(config-if)#no shutdown
#设置目的ip是200.1.1.0/24网段,下一跳为Router2的路由
ip route 200.1.1.0 255.255.255.0 150.1.1.2
Router2
#f0/0配置ip
Router(config)#int f0/0
Router(config-if)#ip add 150.1.1.2 255.255.255.0
Router(config-if)#no shutdown
#f0/1配置ip
Router(config)#int f0/1
Router(config-if)#ip add 200.1.1.254 255.255.255.0
Router(config-if)#no shutdown
#设置目标ip在100.1.1.0/24网段,下一跳为Router1的路由
Router(config)#ip route 100.1.1.0 255.255.255.0 150.1.1.1
至此,实验环境配置完毕。
尝试与外网通信
看看PC0能不能ping通PC2。显然不可以,解析:
PC0到PC2的数据包:源ip为192.168.1.1 , 目标ip为200.1.1.1 经过Router0:符合路由表规则,发往Router1 经过Router1:目标ip在200.1.1.0/24网段,符合路由表规则,发往Router2 经过Router2:Router2与PC2在同一网段,且Router2是PC2的网关,数据包成功到达PC2 PC2回包,源ip为200.1.1.1,目标ip为192.168.1.1 经过Router2:目标ip不属于100.1.1.0/24网段,不符合路由规则 回包失败
由此可见,只需要数据包经过内网出口的路由器(Router0)时将内网ip(192.168.1.0/24)转换为公网ip(100.1.1.0/24)即可解决互通的问题。这便是NAT的作用。
路由器配置NAT
注:以下操作都是针对与Router0进行的
#定义内网端口
Router(config)#int f0/0
Router(config-if)#ip nat inside
#定义外网端口
Router(config)#int f0/1
Router(config-if)#ip nat outside
#全局配置模式下,定义一个访问控制列表ACL,匹配内网所有的ip地址
Router(config)#acc 1 permit any
#对内网端口的源ip做nat。如果源ip属于ACL表1,就允许使用外网端口int f0/1的ip地址,并且做端口复用
Router(config)#ip nat inside source list 1 interface f0/1 overload
成功ping通!!
以上NAT是动态的,且开启了端口复用(PAT),即内网ip使用同一个公网ip,只是分配的端口号不同,在一定的时间内如果不使用就会被回收。
如果内网有个需要长期对外网开放的服务器,则需要设置静态NAT
#对内网端口的源ip做nat。如果源ip为192.168.1.3、端口号为80,就转换为公网ip 100.1.1.3,端口号80
Router(config)#ip nat inside source static tcp 192.168.1.222 80 100.1.1.3 80
此时用PC2的浏览器输入http://100.1.1.3:80,成功访问到内网的web服务器
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步