Cisco路由设备可以对内部全局地址进行复用转换,从而可以在内网地址和全局地址之间进行多对一的映射。提高Internet上合法IP地址的利用效率。
本实验演示对一个全局地址进行复用转换的配置和监测操作。
1.实验目的 通过本实验,读者可以掌握以下技能:
●配置复用内部全局地址NAT;
●查看NAT相关信息;
●监测IP地址的转换;
●测试复用内部全局地址NAT的连通性。
2.设备需求 本实验所需设备与本章实验1相同,请参见实验1设备需求部分。
3.拓扑结构及配置说明 为方便进行实验,本实验在实验2的基础上主要对R1路由器的配置进行更改,R2路由器只更改S0接口的子网掩码,对R3路由器的配置不做任何更改。
本实验将用到两个拓扑结构,拓扑结构一如图12-3所示。
在实验的配置过程中,将引入拓扑结构二,并将给出相应的图示。
路由器的角色安排与实验2相同,具体如下:
●R1路由器负责内、外网的连接及NAT转换;
●R2路由器作为外网节点,并模拟多个外网主机;
●R3路由器模拟内网上的多台主机。
准备实验时,用DCE和DTE电缆把R1和R2路由器连接起来;和R3路由器连接起来。
各路由器使用的接口及其IP地址如图12-3中的标注。使用交叉双绞线把R2
在拓扑结构一中,串行接口所连接的网段子网掩码为255.255.255.0,在R1路由器上使用属于这一网段的1个IP地址198.1.1.5作为本地全局地址,配置复用本地全局地址的NAT。
本实验要求配置R1路由器,实现内网上多个IP地址通过与198.1.1.5进行多对一的复用转换,从而成功访问外网节点。
4.实验配置及监测结果 在以下的第1部分中,首先列出了各路由器的配置,在第2部分中将对配置结果进行查看和监测。
第1部分:配置复用内部全局地址NAT 配置清单12-3列出了各路由器的配置。
配置清单12-3配置复用内部全局地址NAT 第1段:路由器R1的配置
version 12.1
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
hostname R1
!
ip subnet-zero
!
interface Ethemet0
ip address 10.1.1.10 255.255.255.0
ip nat inside
!
interface Serial0
ip address 198.1.1.1255.255.255.0
ip nat outside
!
ip nat pool lab3 198.1.1.5 198.1.1.5 netmask 255.255.255.0
ip nat inside source list 1 pool lab3 overload
ip classless
ip route 0.0.0.0 0.0.0.0 Serial0
ip http server
!
access-list 1 permit 10.1.1.0 0.0.0.255
!
line con 0
line aux 0
line vty 0 4
login
!
end
第2段:路由器R2的配置
version 12.1
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname R2
ip subnet-zero
no ip finger
!
interface Loopback0
ip address 202.1.1.2 255.255.255.0 secondary
!
ip address 202.1.1.3 255.255.255.0 secondary
ip address 202.1.1.4 255.255.255.0 secondary
ip address 202.1.1.1255.255.255.0
!
interface Serial0
ip address 198.1.1.2 255.255.255.0
clockrate 64000
!
ip classless
ip http server
!
line con 0
line aux 0
line vty 0 4
password cisco
login
!
end
第3段:路由器R3的配置
version 12.1
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname R3
!
ip subnet-zero
no ip routing
!
interface Ethernet0
ip address 10.1.1.2 255.255.255.0 secondary
ip address 10.1.1.3 255.255.255.0 secondary
ip address 10.1.1.4 255.255.255.0 secondary
ip address 10.1.1.5 255.255.255.0 secondary
ip address 10.1.1.6 255.255.255.0 secondary
ip address 10.1.1.7 255.255.255.0 secondary
ip address 10.1.1.1255.255.255.0
no ip route-cache
no ip mroute-cache
!
ip default-gateway 10.1.1.10
ip classless
ip http server
!
line con 0
transport input none
line aux 0
line vty 0 4
password cisco
login
!
end
(1)在对R1的配置中,把S0设置成NAT外部接口;把E0设置成NAT内部接口。
(2)定义了一个名为lab3的NAT地址池,它的开始和结束地址均为198.1.1.5,是属于串行接口所在网段的地址。
(3)复用内部全局地址的地址转换配置语句为:
ip nat inside source list 1 pool lab3 overload
与配置动态内部源地址转换所不同的是加入了关键词overload,启动了复用功能。由访问列表1所定义的地址范围内的内网IP地址将被进行地址转换,转换后的地址是名为lab3的NAT地址池中的IP地址。
(4)访问列表1定义的地址范围是10.1.1.0/24的内网网段。
(5)配置中。对R2路由器把S0接口的IP子网掩码进行了更改,同时删去了原来的静态路由设置。
(6)R3路由器的配置与实验2完全相同,末进行任何修改。
第2部分:查看和监测复用内部全局地址NAT 以下是用与前两个实验相同的操作对上述配置结果进行测试。
监测清单12-3记录了相关命令的使用及相应结果。
监测清单12-3查看和监测复用内部全局地址NAT 第1段:监测和查看NAT操作
R1#clear logging
Clear logging buffer [confirm]
R1#debug ip nat
IP NAT debugging is on
R1#
Term_Server>3
[Resuming connection 3 to r3 ...]
R3#ping 202.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202. 1.1, 1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max=44/44/48 ms
R3#ping
Protocol [ip]:
Target IP address: 202.1.1.2
Repeat count [5]:
Datagram size [100]:
Timeout in seconds [2]:
Extended commands [n]: y
Source address or interface: 10.1.1.2
Type of service [0]:
Set DF bit in IP header? [no]:
Validate reply data? [no]:
Data pattern [0xABCD]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.1.1.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max=44/46/48 ms
R3#
Term_Server>1
[Resuming connection 1 to r1 ... ]
R1#
R1#sh ip nat translation
Pro Inside global Inside local Outside local Outside global
icmp 198.1.1.5:2953 10.1.1.1:2953 202.1.1.1:2953 202.1.1.1:2953
icmp 198.1.1.5:2954 10.1.1.1:2954 202.1.1.1:2954 202.1.1.1:2954
icmp 198.1.1.5:2955 10.1.1.1:2955 202.1.1.1:2955 202.1.1.1:2955
icmp 198.1.1.5:2956 10.1.1.1:2956 202.1.1.1:2956 202.1.1.1:2956
icmp 198.1.1.5:2957 10.1.1.1:2957 202.1.1.1:2957 202.1.1.1:2957
icmp 198.1.1.5:5619 10.1.1.2:5619 202.1.1.2:5619 202.1.1.2:5619
icmp 198.1.1.5:5620 10.1.1.2:5620 202.1.1.2:5620
icmp 198.1.1.5:5621 10.1.1.2:5621 202.1.1.2:5621
icmp 198.1.1.5:5622 10.1.1.2:5622 202.1.1.2:5622
icmp 198.1.1.5:5623 10.1.1.2:5623 202.1.1.2:5623
R1#sh p nat statistics
Total active trailsiatio: 10 (0 static;10 extended)
Outside interfaces:
Serial0
Inside interface:
Ethemet0
Hits: 10 Misses: 10
Expired translations: 0
Dynamic mappings:
--Inside Source
access-list 1 pool lab3 refcount 10
pool lab3: netmask 255.255.255.0
start 198.1.1.5 end 198.1.1.5
type generic, total addresses 1, allocated 1 (100%), misses 0
R1#sh logging
Syslog logging: enabled (0 messages dropped, 0 flushes, 0 overruns)
Console logging: level debugging, 338 messages logged
Monitor logging: level debugging, 0 messages logged
Buffer logging: level debugging, 338 messages logged
Trap logging: level informational, 21 message lines logged
Log Buffer (4096 bytes):
06:59:41: NAT: s=10.1.1.1->198.1.1.5, d=202.1.1.1 [115]
06:59:41: NAT*: s=202.1.1.1, d=198.1.1.5->10.1.1.1 [115]
06:59:41: NAT: s=10.1.1.1->198.1.1.5, d=202.1.1.1 [116]
06:59:41: NAT*: s=202.1.1.1, d=198.1.1.5->10.1.1.1 [116]
06:59:41: NAT: s=10.1.1.1->198.1.1.5, d=202.1.1.1 [117]
06:59:41: NAT*: s=202.1.1.1, d=198.1.1.5->10.1.1.1 [117]
06:59:41: NAT: s=10.1.1.1->198.1.1.5, d=202.1.1.1 [118]
06:59:41: NAT*: s=202.1.1.1, d=198.1.1.5->10.1.1.1 [118]
06:59:41: NAT: s=10.1.1.1->198.1.1.5, d=202.1.1.1 [119]
06:59:41: NAT*: s=202.1.1.1, d=198.1.1.5->10.1.1.1 [119]
06:59:41: NAT: s=10.1.1.1->198.1.1.5, d=202.1.1.1 [120]
06:59:41: NAT*: s=202.1.1.1, d=198.1.1.5->10.1.1.1 [120]
06:59:52: NAT: s=10.1.1.2->198.1.1.5, d=:202.1.L2 [121]
06:59:52: NAT*: s=202.1.1.2, d=198.1.1.5->10.1.1.2 [121]
06:59:41: NAT: s=10.1.1.1->198.1.1.5, d=202.1.1.1 [122]
06:59:41: NAT*: s=202.1.1.1, d=198.1.1.5->10.1.1.1 [122]
06:59:41: NAT: s=10.1.1.1->198.1.1.5, d=202.1.1.1 [123]
06:59:41: NAT*: s=202.1.1.1, d=198.1.1.5->10.1.1.1 [123]
06:59:41: NAT: s=10.1.1.1->198.1.1.5, d=202.1.1.1 [124]
06:59:41: NAT*: s=202.1.1.1, d=198.1.1.5->10.1.1.1 [124]
07:00:41: NAT: expiring 198.1.1.5 (10.1.1.1) icmp 2953(2953)
07:00:41: NAT: expiring 198.1.1.5 (10.1.1.1) icmp 2954(2954)
07:00:41: NAT: expiring 198.1.1.5 (10.1.1.1) icmp 2955(2955)
07:00:41: NAT: expiring 198.1.1.5 (10.1.1.1) icmp 2956(2956)
07:00:41: NAT: expiring 198.1.1.5 (10.1.1.1) icmp 2957(2957)
07:00:41: NAT: expiring 198.1.1.5 (10.1.1.1) icmp 2919(2919)
07:00:41: NAT: expiring 198.1.1.5 (10.1.1.1) icmp 2920(2920)
07:00:52: NAT: expiring 198.1.1.5 (10.1.1.2) icmp 5621(5621)
07:00:52: NAT: expiring 198.1.1.5 (10.1.1.2) icmp 5622(5622)
07:00:52: NAT: expiring 198.1.1.5 (10.1.1.2) icmp 5623(5623)
R1#
(1)为了测试的目的。首先在R1路由器上清除日志,并且打开对NAT的监测。
(2)在模拟内网主机的R3路由器上,使用ping和扩展的ping指令发出2个源地址分别为10.1.1.1和10.1.1.2的ICMP包,目的地址分别为202.1.1.1和202.1.1.2。
(3)将控制台界面切换回R1路由器。
(4)在R1上,首先查看NAT转换表,可以看到所有10个ICMP包均被响应,并且所有10个包的内部全局地址均为198.1.1.5,其中有5个包的内部本地地址是10.1.1.1,另外5个包的内部本地地址是10.1.1.2,所有转换项均由各不相同的端口号来区分开来。
(5)IP NAT的统计信息与NAT表是一致的,有10个动态扩展型的活动转换存在。 命令的结果中也显示了相应的配置信息,如内、外部接口,NAT地址池等。
(6)发出show logging命令,查看R1路由器的日志缓冲区,日志中详细记录了监测结果。
●前10行信息是10.1.1.1与198.1.1.5间正向和反向转换的过程;
●接下来的10行信息是10.1.1.2与198.1.1.5间正向和反向转换的过程;
●监测记录的最后是10个复用转换的超时记录,表明上述转换己经从R1路由器中清除。
(7)复用地址转换只允许内网对外网的访问,从外网到内网的访问是不被响应的,因而也提高了内网的安全性。
第3部分:配置串行接口IP地址的复用NAT 在一般情况下,串行接口上的IP网段只有2个可用IP地址,即互连的双方各占用一个地址,这样就不可能进行拓扑结构一中的配置。这种情况的网络拓扑结构如图12-4所示。
对于路由器R1来说,只有1个Internet上合法的IP地址,即S0接口上的地址198.1.1.1。Cisco IOS软件支持对接口上的单一IP地址进行复用转换。本部分的实验就是对此进行的配置和监测。
监测清单12-4记录了相关命令的使用及相应结果。实验是在本实验前面成功配置的基础上更改部分配置语句来实现的。
监测清单12-4 配置、查看和监测串行接口IP地址复用NAT 第1段:使用NAT地址池的方式配置串行接口IP地址复用NAT
R1#conft
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#int s0
R1(config-if)#ip addr 198.1.1.1255.255.255.252
R1(config-if)#exit
R1(config)#ip nat pooS lab3a 198.1.1.1 198.1.1.1 netmask 255.255.255.252
R1(config)#ip nat inside source list 1 poo1s lab3a overload
R1(config)#^Z
R1#
Term_Server>2
[Resuming connection 2 to r2 ... ]
R2#conft
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#int s0
R2(config-if)#ip addr 198.1.1.2 255.255.255.252
R2(config-if)#^Z
R2#
Term_Server>3
[Resuming connection 3 to r3 ...]
R3#ping 202.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max=40/40/44 ms
R3#ping
Protocol [ip]:
Target IP address: 202.1.1.1
Repeat count [5]:
Datagram size [100]:
Timeout in seconds [2]:
Extended commands [n]: y
Source address or interface: 10.1.1.3
Type of service [0]:
Set DF bit in IP header? [no]:
Validate reply data? [no]:
Data pattern [0xABCD]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.1.1.1, timeout is 2 seconds:
!!!!!
Success Success rate is 100 percent(5/5),round-trip min/avg/max=40/40/44 ms
R3#
Term_Server> 1
[Resuming connection 1 to r1 ... ]
R1#sh ip nat translations
Pro Inside global Inside local Outside local Outside global
icmp 198.1.1.1:9386 10.1.1.3:9386 202.1.1.1:9386 202.1.1.1:9386
icmp 198.1.1.1:9387 10.1.1.3:9387 202.1.1.1:9387 202.1.1.1:9387
icmp 198.1.1.1:9388 10.1.1.3:9388 202.1.1.1:9388 202.1.1.1:9388
icmp 198.1.1.1:9389 10.1.1.3:9389 202.1.1.1:9389 202.1.1.1:9389
icmp 198.1.1.1:9390 10.1.1.3:9390 202.1.1.1:9390 202.1.1.1:9390
icmp 198.1.1.1:4759 10.1.1.3:4759 202.1.1.1:4759 202.1.1.1:4759
icmp 198.1.1.1:4760 10.1.1.3:4760 202.1.1.1:4760 202.1.1.1:4760
icmp 198.1.1.1:4761 10.1.1.3:4761 202.1.1.1:4761 202.1.1.1:4761
icmp 198.1.1.1:4762 10.1.1.3:4762 202.1.1.1:4762 202.1.1.1:4762
icmp 198.1.1.1:4763 10.1.1.3:4763 202.1.1.1:4763 202.1.1.1:4763
R1#
第2段:直接配置串行接口地址复用NAT
R1#conft
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#no ip nat pool lab3a
%Pool lab3a in use,cannot destroy
R1(config)#exit
R1#clea ip cat tran *
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#no ip nat inside source list 1 pool lab3a overload
R1(config)#ip nat inside source list 1 interface sO overload
R1(config)#^Z
R1#
Term_Server>3
[Resuming connection 3 to r3 ... ]
R3#ping 202.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg\max=40/40/40 ms
R3#ping
Protocol [ip]:
Target IP address: 202.1.1.4
Repeat count [5]:
Datagram size [100]:
Timeout in seconds [2]:
Extended commands [n]: y
Source address or interface: 10.1.1.6
Type of service [0]:
Set DF bit in IP header? [no]:
Validate reply data? [no]:
Data pattern [0xABCD]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.1.1.4, timeout is 2 seconds:
!!!!!
Success rate is 80 percent(4/5),round-trip min/avg/max=40/41/44 ms
R3#
Term_Server> 1
[Resuming connection 1 to r1 ...]
R1#sh ip nat trans
Pro Inside global Inside local Outside local Outside global
icmp 198.1.1.1:5182 10.1.1.6:5182 202.1.1.4:5182 202.1.1.4:5182
icmp 198.1.1.1:5183 10.1.1.6:5183 202.1.1.4:5183 202.1.1.4:5183
icmp 198.1.1.1:5184 10.1.1.6:5184 202.1.1.4:5184 202.1.1.4:5184
icmp 198.1.1.1:5185 10.1.1.6:5185 202.1.1.4:5185 202.1.1.4:5185
icmp 198.1.1.1:5186 10.1.1.6:5186 202.1.1.4:5186 202.1.1.4:5186
icmp 198.1.1.1:5655 10.1.1.6:5655 202.1.1.4:5655 202.1.1.4:5655
icmp 198.1.1.1:5656 10.1.1.6:5656 202.1.1.4:5656 202.1.1.4:5656
icmp 198.1.1.1:5657 10.1.1.6:5657 202.1.1.4:5657 202.1.1.4:5657
icmp 198.1.1.1:5658 10.1.1.6:5658 202.1.1.4:5658 202.1.1.4:5658
icmp 198.1.1.1:5659 10.1.1.6:5659 202.1.1.4:5659 202.1.1.4:5659
R1#sh ip nat statistics
Total active translations:10(0 static,10 dy namic;10 extended)
Outside interfaces:
Serial0
Insid interfaces:
Ethernet0
Hits:70 Misses:70
Expired translations:55
Dynamic mappings:
--Inside Source
access-list 1 interface Serial0 refcount 10
(1)串行接口IP地址复用转换的第一种配置方法是使用NAT地址池,地址池申只有1个地址,即串行接口上的IP地址198.1.1.1,然后对这个地址池进行复用转换配置。
请注意在配置新的地址池和复用转换语句之前应先将原来的地址池和复用转换语句删除.
(2)在R2路由器上把S0的子网掩码更改为30位。
(3)切换到R3路由器,发出1个ping测试和1个扩展的ping测试,它们的源地址分别是10.1.1.1和10.1.1.3。
(4)在R1路由器上查看NAT转换列表,结果说明NAT是成功的,实现了2个内网地址对S0接口地址(198.1.1.1)的复用转换。
(5)另外一种配置串行接口IP地址复用转换的方法如第2段中的操作,命令为:
ip nat inside source list 1 interface sO overload
以上配置语句的关键是以interface sO代替NATT地址池。
此配置方法同样用于其他类型的接口,如以太网接口。拨号接口等。
这种配置方法对于拨号接口很重要,尤其是拨号到Internet,因为拨号接口常用协商的IP地址(命令为ip address negotiated),其IP地址是每次拨号时从对端地址池中动态获取的,使用接口地址转换的方式解决了这一间题。
(6)相应的测试表明第2种配置是成功的,统计命令也列出了相关的信息。