NAT设置可以分为静态地址转换、动态地址转换、复用动态地址转换。以下设置以Cisco路由器为例。
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
地址转换配置步骤:
1
在全局设置模式下,定义内部合地址池
ip nat pool
地址池名字
起始
IP
地址
终止
IP
地址
子网掩码
2.
在全局设置模式下,定义一个标准的
access-list
规则以允许哪些内部本地地址可以进行动态地址转换。
access-list
标号
permit
源地址
通配符
其中标号为
1
-
99
之间的整数。
3.
在全局设置模式下,设置在内部的本地地址与内部合法
IP
地址间建立复用动态地址转换。
ip nat inside source list
访问列表标号
pool
内部合法地址池名字
overload
4.
在端口设置状态下,指定与内部网络相连的内部端口
ip nat inside
5.
在端口设置状态下,指定与外部网络相连的外部端口
ip nat outside
1. 静态地址转换
静态地址转换将内部本地地址与内部合法地址进行一对一地转换,且需要指定和哪个合法地址进行转换。如果内部网络有WWW服务器或FTP服务器等可以为外部用户提供服务,则这些服务器的IP地址必须采用静态地址转换,以便外部用户可以使用这些服务。
A.
ip nat pool nat-pool 218.27.84.252 218.27.84.254 netmask 255.255.255.248
ip nat inside source list 1 pool nat-pool overload
ip nat inside source static 192.168.2.254 218.27.84.249 假如发布 WEB 时需要静态映射发布
ip nat inside source list 1 pool nat-pool overload
ip nat inside source static 192.168.2.254 218.27.84.249 假如发布 WEB 时需要静态映射发布
ip route <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />0.0.0.0 0.0.0.0 Serial0/0
access-list 1 permit 192.168.2.0 0.0.0.255
interface Ethernet0/1
ip address 192.168.2.254 255.255.255.0
ip address 192.168.2.254 255.255.255.0
ip nat inside
B…
静态源地址翻译
1)
定义外部接口和外部接口
Router (config)#interface fa X/X
Router(config-if)#ip nat (inside | outside )
2)
定义源地址转换
Router (config)#ip nat ( inside | outside ) source static source_add translate_add
Eg..
Router (config)#ip nat inside source static 10.1.1.10 202.100.192.68
Router (config)#ip nat outside source static 202.100.192.68 10.1.1.10
2.
动态地址转换
动态地址转换也是将内部本地地址与内部合法地址一对一地转换,但是动态地址转换是从内部合法地址池中动态地选择一个未使用的地址来对内部本地地址进行转换的。
动态地址转换也是将内部本地地址与内部合法地址一对一地转换,但是动态地址转换是从内部合法地址池中动态地选择一个未使用的地址来对内部本地地址进行转换的。
Router(config)#ip nat pool < name ><start_ip><end_ip>{netmask <netmask >| prefix <prefix_length>}
Name:地址池名;netmask :地址掩码; prefix-langth:掩码前缀长度
EG…
Router (config)#ip nat pool <pool-name> <S-ip><E-ip> prefix 24
3. 复用动态地址转换
复用动态地址转换首先是一种动态地址转换,但是它可以允许多个内部本地地址共用一个内部合法地址。对只申请到少量IP地址但却经常同时有多个用户上外部网络的情况,这种转换极为有用。Overload 叫过载配置。。。就是符合条件数据的源地址(N个,例如局域网的各个私有IP)都被转换为一个合法IP,或者多个合法IP,这样叫过载配置。
4.检查NAT运行情况
Show ip nat translation 查看地址翻译表
Show ip nat statistics 地址翻译的统计信息
Debug ip nat
PAT(Port Address Translation)也称为NAPT,就是将多个内部地址映射为一个公网地址,但以不同的协议端口号与不同的内部地址相对应。这种方式常用于拨号上Internet网。
如果使用PAT技术,也应当使用NAT+PAT,这样才不至于功能受限。
CCNA
实验
–NAT
和
PAT
的配置
下面是实验拓扑图:
相关说明:
NAT
用于提供几乎无限的地址空间并掩藏内部网络寻址方案,地址管理更加容易,它允许严格控制进入和离开网络的流量;但是静态或动态NAT都存在一个问题,它只能提供一对一的地址转换。使用端口地址转换PAT可以实现地址复用的功能,使用PAT后,所有通过地址转换设备的机器都拥有了分配给它们相同IP地址,因此源端口号用来区分不同的连接。
需要牢记:
(config)#ip nat inside source list 100 interface s1/0 overload
实验过程:
实验过程:
I:配置各路由器的IP地址,确保直连接口能Ping通。
II:KC-R1模拟企业网关路由器。
KC-R1(config)#ip route 0.0.0.0 0.0.0.0 173.16.1.128 #指向外网的静态路由
IV:配置NAT。
方法一:静态NAT
KC-R1(config)#int f0/0
KC-R1(config-if)#ip nat inside #将f0/0设置为内网口
*Mar 1 00:05:49.875: %LINEPROTO-5-UPDOWN: Line protocol on Interface NVI0, changed state to up
KC-R1(config-if)#exit
KC-R1(config)#int s1/0
KC-R1(config-if)#ip nat outside #将s1/0设置为外网口
KC-R1(config-if)#exit
KC-R1(config)#ip nat inside source static 10.1.1.1 173.16.1.56 #静态NAT
KC-R1(config)#exit
Ping测试:
PC-1#ping 202.101.1.149 #测试证明能通
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.101.1.149, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 120/122/132 ms
此时PC-1能通,PC-2不能通。
KC-R2#debug ip packet #查看数据包
*Mar 1 00:09:59.487: IP: tableid=0, s=10.1.1.2 (Serial1/0), d=173.16.1.128 (Serial1/0), routed via RIB
*Mar 1 00:09:59.491: IP: s=10.1.1.2 (Serial1/0), d=173.16.1.128 (Serial1/0), len 100, rcvd 3
*Mar 1 00:09:59.495: IP: s=173.16.1.128 (local), d=10.1.1.2, len 100, unroutable
………………….
*Mar 1 00:23:51.243: IP: s=202.101.1.149 (local), d=173.16.1.56 (Serial1/0), len 100, sending
*Mar 1 00:23:51.447: IP: tableid=0, s=173.16.1.56 (Serial1/0), d=202.101.1.149 (Loopback0), routed via RIB
I:配置各路由器的IP地址,确保直连接口能Ping通。
II:KC-R1模拟企业网关路由器。
KC-R1(config)#ip route 0.0.0.0 0.0.0.0 173.16.1.128 #指向外网的静态路由
IV:配置NAT。
方法一:静态NAT
KC-R1(config)#int f0/0
KC-R1(config-if)#ip nat inside #将f0/0设置为内网口
*Mar 1 00:05:49.875: %LINEPROTO-5-UPDOWN: Line protocol on Interface NVI0, changed state to up
KC-R1(config-if)#exit
KC-R1(config)#int s1/0
KC-R1(config-if)#ip nat outside #将s1/0设置为外网口
KC-R1(config-if)#exit
KC-R1(config)#ip nat inside source static 10.1.1.1 173.16.1.56 #静态NAT
KC-R1(config)#exit
Ping测试:
PC-1#ping 202.101.1.149 #测试证明能通
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.101.1.149, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 120/122/132 ms
此时PC-1能通,PC-2不能通。
KC-R2#debug ip packet #查看数据包
*Mar 1 00:09:59.487: IP: tableid=0, s=10.1.1.2 (Serial1/0), d=173.16.1.128 (Serial1/0), routed via RIB
*Mar 1 00:09:59.491: IP: s=10.1.1.2 (Serial1/0), d=173.16.1.128 (Serial1/0), len 100, rcvd 3
*Mar 1 00:09:59.495: IP: s=173.16.1.128 (local), d=10.1.1.2, len 100, unroutable
………………….
*Mar 1 00:23:51.243: IP: s=202.101.1.149 (local), d=173.16.1.56 (Serial1/0), len 100, sending
*Mar 1 00:23:51.447: IP: tableid=0, s=173.16.1.56 (Serial1/0), d=202.101.1.149 (Loopback0), routed via RIB
方法二:动态NAT
KC-R1(config)# ip nat pool kachy 173.16.1.58 173.16.1.126 netmask 255.255.255.0 #创建地址池
KC-R1(config)#access-list 1 permit 10.1.1.0 0.0.0.255 #创建ACL
KC-R1(config)#ip nat inside source list 1 pool kachy #二者关联
KC-R1(config)#exit
Ping测试
PC-1#ping 202.101.1.149 #测试证明能通
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.101.1.149, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 96/125/148 ms
PC-1#telnet 202.101.1.149 #测试证明能远程连接
Trying 202.101.1.149 … Open
Password required, but none set
[Connection to 202.101.1.149 closed by foreign host]
此时PC-2也可以ping通,telnet上。
查看当前KC-R1的NAT表。
KC-R1#sh ip nat translations #查看NAT表
Pro Inside global Inside local Outside local Outside global
— 173.16.1.58 10.1.1.1 — —
— 173.16.1.59 10.1.1.2 — —
KC-R1#
方法三:配置PAT
KC-R1(config)#access-list 100 permit ip 10.1.1.0 0.0.0.255 any #创建访问列表
KC-R1(config)#ip nat inside source list 100 interface s1/0 overload #二者关联,地址重载 转换复用在端口上!
KC-R1(config)#exit
测试
PC-1#ping 202.101.1.149
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.101.1.149, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 84/97/116 ms
PC-1#
PC-1#telnet 202.101.1.149
Trying 202.101.1.149 … Open
Password required, but none set
[Connection to 202.101.1.149 closed by foreign host]
同样,PC-2也能到达。
在路由器KC-R1上
KC-R1#debug ip nat #查看翻译过程
*Mar 1 00:19:32.843: NAT*: s=10.1.1.1->173.16.1.56, d=202.101.1.149 [46610]
*Mar 1 00:19:32.847: NAT*: s=10.1.1.1->173.16.1.56, d=202.101.1.149 [46611]
*Mar 1 00:19:33.083: NAT*: s=202.101.1.149, d=173.16.1.56->10.1.1.1 [31823]
在路由器KC-R2上
KC-R2#debug ip packet
*Mar 1 00:23:34.931: IP: tableid=0, s=173.16.1.56 (Serial1/0), d=202.101.1.149 (Loopback0), routed via RIB
*Mar 1 00:23:34.935: IP: s=173.16.1.56 (Serial1/0), d=202.101.1.149, len 100, rcvd 4
*Mar 1 00:23:34.939: IP: tableid=0, s=202.101.1.149 (local), d=173.16.1.56 (Serial1/0), routed via FIB
KC-R1(config)# ip nat pool kachy 173.16.1.58 173.16.1.126 netmask 255.255.255.0 #创建地址池
KC-R1(config)#access-list 1 permit 10.1.1.0 0.0.0.255 #创建ACL
KC-R1(config)#ip nat inside source list 1 pool kachy #二者关联
KC-R1(config)#exit
Ping测试
PC-1#ping 202.101.1.149 #测试证明能通
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.101.1.149, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 96/125/148 ms
PC-1#telnet 202.101.1.149 #测试证明能远程连接
Trying 202.101.1.149 … Open
Password required, but none set
[Connection to 202.101.1.149 closed by foreign host]
此时PC-2也可以ping通,telnet上。
查看当前KC-R1的NAT表。
KC-R1#sh ip nat translations #查看NAT表
Pro Inside global Inside local Outside local Outside global
— 173.16.1.58 10.1.1.1 — —
— 173.16.1.59 10.1.1.2 — —
KC-R1#
方法三:配置PAT
KC-R1(config)#access-list 100 permit ip 10.1.1.0 0.0.0.255 any #创建访问列表
KC-R1(config)#ip nat inside source list 100 interface s1/0 overload #二者关联,地址重载 转换复用在端口上!
KC-R1(config)#exit
测试
PC-1#ping 202.101.1.149
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.101.1.149, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 84/97/116 ms
PC-1#
PC-1#telnet 202.101.1.149
Trying 202.101.1.149 … Open
Password required, but none set
[Connection to 202.101.1.149 closed by foreign host]
同样,PC-2也能到达。
在路由器KC-R1上
KC-R1#debug ip nat #查看翻译过程
*Mar 1 00:19:32.843: NAT*: s=10.1.1.1->173.16.1.56, d=202.101.1.149 [46610]
*Mar 1 00:19:32.847: NAT*: s=10.1.1.1->173.16.1.56, d=202.101.1.149 [46611]
*Mar 1 00:19:33.083: NAT*: s=202.101.1.149, d=173.16.1.56->10.1.1.1 [31823]
在路由器KC-R2上
KC-R2#debug ip packet
*Mar 1 00:23:34.931: IP: tableid=0, s=173.16.1.56 (Serial1/0), d=202.101.1.149 (Loopback0), routed via RIB
*Mar 1 00:23:34.935: IP: s=173.16.1.56 (Serial1/0), d=202.101.1.149, len 100, rcvd 4
*Mar 1 00:23:34.939: IP: tableid=0, s=202.101.1.149 (local), d=173.16.1.56 (Serial1/0), routed via FIB
转载于:https://blog.51cto.com/pizazzdog/112131