《 常见 NAT 配置 》
1. 动态NAT配置
动态NAT一般用于局域网中多个私有IP在出口时,从公有IP地址池中提取合法
的公有IP对外访问。
设内部局域网使用10.0.0.0网络,公网IP地址 133.1.1.33~133.1.1.62为一
个地址池,当内部网络要访问外网时,从地址池中提取公有IP。
Router(config)#int f0/0
Router(config-if)#ip address 10.65.1.1 255.255.0.0
Router(config-if)#ip nat inside
Router(config-if)#int s0/0
Router(config-if)#ip address 133.0.0.1 255.255.255.252
Router(config-if)ip nat outside
Router(config-if)#exit
Router(config)#ip nat pool p1 133.1.1.33 133.1.1.62 netmask 255.255.
255.224
Router(config)#access-list 1 permit 10.65.0.0 0.0.255.255
Router(config)#ip nat inside source list 1 pool p1
Router(config)#ip route 0.0.0.0 0.0.0.0 s0/0
Router#show ip nat translation
动态nat 没有转换请求时,没有转换记录。
[root#PCA root]#ping 133.0.0.1
Router#show ip nat translation
动态nat 当有访问请求时,如向外部的ping操作,产生一个转换记录。但
转换记录是有生存期的。
2. PAT的配置
PAT(Port Address Translate)是一种特殊动态NAT,它用于将多个内部本
地IP地址映射到一个公网IP的不同端口上。
将原动态nat命令行地址池pool改变成为对外接口s0/0,并在后边加上参数
overload。
举例如下:
Router(config)#int f0/0
Router(config-if)#ip address 10.65.1.1 255.255.0.0
Router(config-if)#ip nat inside
Router(config-if)#int s0/0
Router(config-if)#ip address 133.0.0.1 255.255.255.252
Router(config-if)ip nat outside
Router(config-if)#exit
Router(config)#access-list 2 permit 10.65.0.0 0.0.0.255
Router(config)#ip nat inside source list 2 interface s0/0 overload
Router(config)#ip route 0.0.0.0 0.0.0.0 s0/0
Router#show ip nat translation
3. 基于NAT的负载均衡
一般的NAT都是将内部私有IP转换自己的公网IP,负载均衡是将一个公网IP
翻译成多个内部私有IP。
例如内部的www负载重时可做多台服务器,有自己的私有IP,但对外映射成
为一个统一的IP地址,对外部来讲多台服务器是捆绑在一起的一个虚拟服务器,
外部访问这个虚拟服务器时,轮流指向各台服务器,从而达到负载均衡。
Router(config)#int f0/0
Router(config-if)#ip address 10.65.1.1 255.255.0.0
Router(config-if)#ip nat inside
Router(config-if)#int s0/0
Router(config-if)#ip address 133.0.0.1 255.255.255.252
Router(config-if)ip nat outside
Router(config-if)#exit
Router(config)#ip nat pool p2 10.65.1.2 10.65.1.4 netmask 255.255.
255.0 type rotary
Router(config)#access-list 2 permit 133.0.0.33
Router(config)#ip nat inside destination list 2 pool p2
Router(config)#ip route 0.0.0.0 0.0.0.0 s0/0
Router#show ip nat translation
pool p2 指定内部IP地址池P2 。
rotary 参数是轮流的意思。
list 2 指定的IP地址133.0.0.33是被访问的虚拟服务器的IP地址。
Destination 意思是目的,即数据从外向内。
4. 基于服务的NAT配置
转换可以具体到协议和端口。如TCP 21、TCP 80 等,设内部10.65.1.2
是一个FTP服务器,内部10.65.1.3是一个www服务器。
Router(config)#int f0/0
Router(config-if)#ip address 10.65.1.1 255.255.0.0
Router(config-if)#ip nat inside
Router(config-if)#int s0/0
Router(config-if)#ip address 133.0.0.1 255.255.255.252
Router(config-if)ip nat outside
Router(config-if)#exit
Router(config)#ip nat inside source static tcp 10.65.1.2 20
133.0.0.1 20
Router(config)#ip nat inside source static tcp 10.65.1.2 21
133.0.0.1 21
Router(config)#ip nat inside source static tcp 10.65.1.3 80
133.0.0.1 80
Router(config)#ip route 0.0.0.0 0.0.0.0 s0/0
Router#show ip nat translation
10.65.1.2和10.65.1.3对外部来说是一个133.0.0.1的虚拟服务器,外部对
133.0.0.1的21端口的访问会转到10.65.1.2服务器上,而对于133.0.0.1的80端
口的访问将转到10.65.1.3这台服务器上。
由于目的地址端口被指定,所以NAT可以直接使用接口的IP地址。