三种NAT的创建
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如上图所示,R1的loopback口为外网,用两台路由器模拟主机PC1和PC2,关闭他们的路由功能,并且将他们的默认网关都知道R2的F1/0口,即192.168.1.1
在R2上设置NAT,从而可以使PC1和PC2可以ping通202.100.1.1,但202.100.1.1却ping 不通PC1和PC2。
配置思路:
首先对每个路由器进行设置,在R1上起一个Loopback口,在R2上起一条默认的路由,0.0.0.00.0.0.010.1.1.1即经过它的数据的下一跳都为10.1.1.1.
一,静态NAT的设置:
在R2上起一条静态的NAT,将PC1的地址转化成10.1.1.3,对于R2来言,当PC1通过其到达外网的时候,端口F1/0为进口即为inside,端口F0/0为出口,即为outside。
在配置静态nat的时候首先要定义其的inside和outside口,路由器R2上的配置见下:
R2>en
R2#conf t
R2(config)#interface fastEthernet0/0
R2(config-if)#ip address10.1.1.2255.255.255.0
R2(config-if)#no shut
R2(config-if)#end
R2#conf t
R2(config)#interface fastEthernet1/0
R2(config-if)#ip address192.168.1.1255.255.255.0
R2(config-if)#no shut
R2(config-if)#end
R2#conf t
Enter configuration commands,one per line.End with CNTL/Z.
R2(config)#
R2(config)#ip route0.0.0.00.0.0.010.1.1.1
R2(config)#ip nat inside source static192.168.1.210.1.1.3(将地址192.168.1.2转化成10.1.1.3)R2(config)#interface fastEthernet1/0
R2(config-if)#ip nat inside
R2(config-if)#end
R2#con
*Mar101:08:35.227:%SYS-5-CONFIG_I:Configured from console by console
R2#conf t
Enter configuration commands,one per line.End with CNTL/Z.
R2(config)#interface fastEthernet0/0
R2(config-if)#ip nat outside
R2(config-if)#
这个时候我们在R1上用debug ip icmp查看转换的结果。
同时用PC1去ping一下202.100.1.1结果见下:
R1#debug ip icmp
ICMP packet debugging is on
R1#
*Mar101:13:21.591:ICMP:echo reply sent,src202.100.1.1,dst10.1.1.3
*Mar101:13:21.703:ICMP:echo reply sent,src202.100.1.1,dst10.1.1.3
*Mar101:13:21.731:ICMP:echo reply sent,src202.100.1.1,dst10.1.1.3
*Mar101:13:21.811:ICMP:echo reply sent,src202.100.1.1,dst10.1.1.3
*Mar101:13:21.851:ICMP:echo reply sent,src202.100.1.1,dst10.1.1.3
R1#
这里显示的是刚ping它的地址是10.1.1.3,这说明我们的地址转化成功。
在R2上用show ip nat translations命令查看转化的内容。
结果见下:
R2#show ip nat translations
Pro Inside global Inside local Outside local Outside global
---10.1.1.3192.168.1.2------
这里显示的是内部当地地址为192.168.1.2,转化后的地址是10.1.1.3。
二、动态地址池:
所谓的动态地址池就是定义一个规则,和定义一个地址段,只要是满足这个规则的数据,自己从这个地址段中挑选一个地址到达外网。
同样还用这个图为例子,这个时候NAT的转化命令有所改变,唯一不改变的是inside和outside不用改变。
详细见下边命令及说明。
R2(config)#access-list101permit ip192.168.1.20.0.0.0any(定一个扩展的访问列表,允许192.168.1.2主机通信,这里注意,在ACL中有一条默认的deny any any,所以这里就不用写deny了)
R2(config)#ip nat pool yaobiao10.1.1.310.1.1.10netmask255.255.255.0(定义一个地址池名字为yaobiao,转后的地址从10.1.1.3到10.1.1.10)
R2(config)#ip nat inside source list101pool yaobiao(符合ACL101的流量,从地址池中拿一个地址出去)
R2(config)#
动态地址的转换更加方便,在多个内网的情况下,用静态NAT转换命令显然就很繁琐,所以就设置成一个ACL,反是符合ACL的流量自己从地址池中选择一个地址出去。
更加的
专业化。
三、PAT的多对一转换。
PAT的多对一转换也是常见的一种形式,这种形式大大的节约了公网地址,就是说,一大批的内网地址都用一个公网地址上网。
还是用上边的图为例子,与动态相类似,首先设定一个规则,反是可以通过这个规则的流量,都直接转发到outside接口IP地址上。
具体配置及命令说明见下:
R2>en
R2#conf t
Enter configuration commands,one per line.End with CNTL/Z.
R2(config)#access-list101permit ip192.168.1.20.0.0.0any(首先定义一个规则)
R2(config)#ip nat inside source list101interface fastEthernet0/0overload(反是满足这个规则的流量都直接转到outside口上)
R2(config)#
这个时候在R1上用debug ip icmp命令查看情况见下:
R1#debug ip icmp
ICMP packet debugging is on
R1#
*Mar101:36:23.771:ICMP:echo reply sent,src202.100.1.1,dst10.1.1.2
*Mar101:36:23.859:ICMP:echo reply sent,src202.100.1.1,dst10.1.1.2
*Mar101:36:23.883:ICMP:echo reply sent,src202.100.1.1,dst10.1.1.2
*Mar101:36:23.891:ICMP:echo reply sent,src202.100.1.1,dst10.1.1.2
*Mar101:36:23.987:ICMP:echo reply sent,src202.100.1.1,dst10.1.1.2
R1#
这里很明显,我们用主机192.168.1.2去ping的202.100.1.1,但是结果显示的却是10.1.1.2,即是outside口去ping的202.100.1.1.。