一、什么是动态NAT?动态NAT与静态NAT的区别是什么?
(1)动态NAT(Network Address Translation)是一种网络地址转换技术,它会动态地将内部私有网络中的局域网IP地址映射为公共IP地址,从而实现内部网络与外部网络之间的通信。动态NAT会根据内部主机的需求动态地分配公共IP地址,以便多个内部主机可以共享有限的公共IP地址。
(2)动态NAT与静态NAT的区别在于:
- 动态NAT会动态地分配公共IP地址,而静态NAT则是将内部私有IP地址与公共IP地址进行一对一的静态映射。
- 动态NAT适用于较大规模的网络环境,可以更高效地利用有限的公共IP地址资源;而静态NAT适用于需要固定映射关系的特定应用场景,例如服务器对外提供服务时需要使用静态NAT将私有IP映射为公共IP。
- 动态NAT配置相对灵活,适用于动态IP分配的场景;静态NAT配置相对固定,适用于需要固定映射关系的场景。
二、下面我们通过一个简单的拓扑图来让大家更好的理解动态NAT配置
第一步:根据图中提供的网段地址,为每台PC机以及路由器填上对应的IP地址
根据每台PC机所处的位置配置地址,这里可以统一给他们的地址为.1 / .2(每个IP网段共有254个地址是可以分配给PC机的,分别是第1~254,IP地址中的第一个地址.0是网络地址(保留地址),IP网段的最后一个地址.255是广播地址(保留地址)
由图可知,私网与公网分别处于三个不同的网段之中,因此题目中拓扑的PC机及服务器的IP规划我将这样规划:
PC0:192.168.1.1(IP地址),255.255.255.0(子网掩码)
PC1:192.168.1.2(IP地址),255.255.255.0(子网掩码)
PC2:192.168.2.1(IP地址),255.255.255.0(子网掩码)
PC3:192.168.2.2(IP地址),255.255.255.0(子网掩码)
Server0:200.1.1.1(IP地址),255.255.255.0(子网掩码)
Server1:200.1.1.2(IP地址),255.255.255.0(子网掩码)
第二步:规划路由器对应接口的IP地址
1. 连接交换机及PC机处的fa0/0接口要配的是254(表示允许这个网段的的所有PC机或服务器通过);
2. 交换机与交换机互联的se0/0接口则根据所在位置配置对应地址即可;
(1)路由器Router0上的配置
Router>enable
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#interface FastEthernet0/0
Router(config-if)#ip address 192.168.1.254 255.255.255.0
Router(config-if)#no shutdown(开启接口)
Router(config)#interface FastEthernet0/2
Router(config-if)#ip address 192.168.2.254 255.255.255.0
Router(config-if)#no shutdown(开启接口)
Router(config)#interface Serial0/0
Router(config-if)#ip address 100.1.1.1 255.255.255.0
Router(config-if)#no shutdown
(2)路由器Router1上的配置
Router>enable
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#interface FastEthernet0/0
Router(config-if)#ip address 200.1.1.254 255.255.255.0
Router(config-if)#no shutdown(开启接口)
Router(config)#interface Serial0/0
Router(config-if)#ip address 100.1.1.2 255.255.255.0
Router(config-if)#no shutdown
三、进行路由后续配置,要求私网路由不能发布到公网上
(1)路由器Router0上的配置
Router>en
Router#conf t
Router(config)#int loopback 0(环回接口,可以不配置)
Router(config-if)#ip add 1.1.1.1 255.255.255.255
Router(config-if)#router ospf 1
Router(config-router)#network 100.1.1.0 0.0.0.255 area 0(因为题目要求公网不能访问私网,所以这里不能宣告私网的PC网段)
Router(config-router)#passive-interface fa0/0(被动接口,可以不配置)
Router(config-router)#passive-interface fa0/1(被动接口,可以不配置)
(2)路由器Router1上的配置
Router(config)#int loopback 0(环回接口,可以不配置)
Router(config-if)#ip add 2.2.2.2 255.255.255.255
Router(config-if)#router ospf 1
Router(config-router)#network 200.1.1.0 0.0.0.255 area 0
Router(config-router)#network 100.1.1.0 0.0.0.255 area 0
Router(config-router)#passive-interface fa0/0(被动接口,可以不配置)
四、在边界路由器上配置动态NAT,使得私网LAN1的PC能够访问公网,LAN2中只有IP地址为奇数的PC可以访问公网
(1)配置动态NAT的步骤:
1、在内部本地地址和外部本地地址之间创建映射:
ip nat pool name start-ip end-ip netmask
2、创建标准ACL,以允许转换这些地址:
access-list access-list-number permit source
4、绑定ACL与地址池:
ip nat inside source list access-list-number pool name
5、定义分别属于内部网络和外部网络的接口:
01. ip nat inside
02. ip nat outside
6、分析动态 NAT、验证动态 NAT:
01. show ip nat translations
02. show ip nat translations verbose
03. show ip nat statistics
04. clear ip nat translations *
(2)按题目要求在边界路由器上配置动态NAT,使得私网LAN1的PC能够访问公网,LAN2中只有IP地址为奇数的PC可以访问公网
Router>en
Router#conf t
Router(config)#ip nat pool abc 100.1.1.3 100.1.1.5 netmask 255.255.255.0
(创建一个NAT地址池,命名为"abc",其中包含从100.1.1.3到100.1.1.5的IP地址范围,子网掩码255.255.255.0)
Router(config)#access-list 1 permit 192.168.1.0 0.0.0.255
(创建一个访问控制列表(ACL)1,允许192.168.1.0/24网段的流量通过)
Router(config)#access-list 1 permit 192.168.2.1 0.0.0.254
(在ACL 1中添加一条规则,允许奇数位的PC流量通过,如果题目只允许偶数通过的情况只需将1改为任意偶数)
Router(config)#access-list 1 deny any
(在ACL 1中添加一条规则,拒绝所有其他流量通过)
Router(config)#ip nat inside source list 1 pool abc
(绑定ACL与地址池,将ACL 1中允许的流量使用地址池"abc"进行转换)
Router(config)#int fa0/0
Router(config-if)#ip nat inside(NAT内部接口)
Router(config-if)#int fa0/1
Router(config-if)#ip nat inside
Router(config-if)#int se0/0
Router(config-if)#ip nat outside(NAT外部接口)
五、全部配置完成,开始测试结果(测试可以用捉包的方式测试,也可以在路由器内sh ip route查看配置情况,使用sh running-config可以查看配置的命令)
好啦,到这里已经完成了本次配置的内容学习啦,觉得学到东西的各位朋友们可以关注博主并点个赞哦 ~ 您的认可是我坚持创作的动力。小白会不定期更新,关注小白让你实时了解更多的思科路由配置知识!!!
注:本文章配置皆为个人学习理解,如有不同理解或有讲解错误的地方,欢迎评论区留言指出,谢谢!