为什么需要NAT
IPV4地址有限,IPV6尚未普及
节约IP地址
安全
什么是NAT
Network Address Translation,网络地址转换,用于实现位于内网主机访问外部网络的功能。
当局域网内的主机需要访问外部网络时,通过NAT技术可以将其私网地址转换为公网地址,并且多个私网用户可以
共用一个公网地址,这样既可保证网络互通,又节省了公网地址。
NAT分类
静态NAT转换
私有地址和公有地址的一对一映射
缺点:无法缓解IP地址短缺问题
动态NAT转换
通过使用地址池来实现。从配置的公网地址池中选择一个未使用的公网地址做映射。每台主机都会分配到地址
池中的一个唯一地址。动态NAT地址池中的地址用尽以后, 只能等待被占用的公用IP被释放后,其他主机才能
使用它来访问公网。
NAPT
NAPT(Network Address Port Translation,网络地址端口转换) 实现多对一的地址转换,将多个私网IP
转换为同一个公网IP。在做地址转换时NAPT不仅记录IP地址的转换关系,还要记录端口号的对应关系,区分
不同的私网IP。
NAPT的配置方式和动态NAT类似,只是在最后调用公网和私网地址池时不加no-pat参数即可。
Easy IP
Easy IP可以实现内部主机使用出口IP地址访问Internet。
与动态NATPT类似,但不需要配置地址池,直接使用出接口作为NAT转换后地址
NAT服务器
实现内网服务器对外开放,可以使外网用户访问内网服务器
静态NAT配置
interface GigabitEthernet0/0/1 //对应出接口配置
nat static enable
nat static global 12.1.1.3 inside 192.168.1.1 //global配置外部公网地址。inside配置内部私有地址。
nat static global 12.1.1.4 inside 192.168.1.2
注意:global地址不能和接口地址冲突
display nat static //查看静态表项
动态NAT
acl 2000 //匹配感兴趣流
rule 5 permit source 192.168.1.0 0.0.0.255
nat address-group 1 12.1.1.3 12.1.1.254 //建立地址池
interface GigabitEthernet0/0/1
nat outbound 2000 address-group 1 no-pat //将对应ACL和地址池关联起来,实现对应地址NAT转换,no-pat表示只转换数据报文的地址而不转换端口信息。
display nat session all
display nat outbound //查看动态NAT配置信息
display nat address-group 1//查看NAT地址池配置信息
对应思科动态地址池转换不复用
NAPT
acl 2000 //匹配感兴趣流
rule 5 permit source 192.168.1.0 0.0.0.255
nat address-group 1 12.1.1.3 12.1.1.5//建立地址池
interface GigabitEthernet0/0/1
nat outbound 2000 address-group 1
NAPT的配置方式和动态NAT类似,只是在最后调用公网和私网地址池时不加no-pat参数即可。
对应思科动态地址池转换复用
Easy IP
acl 2000 //匹配感兴趣流
rule 5 permit source 192.168.1.0 0.0.0.255
interface GigabitEthernet0/0/1
nat outbound 2000
display nat session all
display nat outbound //查看NAT outbound 配置信息
与动态NAT类似,但不需要配置地址池,直接使用出接口作为NAT转换后地址
对应思科的端口复用
NAT服务器/端口映射
interface GigabitEthernet0/0/0
nat server protocol tcp global 23.1.1.4 telnet inside 192.168.2.2 telnet //protocol指定一个需要地址转换的协议;global-address指定换的公网地址;inside指定内网服务器的地址。
注意:global地址不可与出接口冲突
配置NAT Server时,如果将内网地址和公网接口地址作映射显示地址冲突时,此时可将命令中的公网IP地址替换为参数current-interface指定global地址为当前接口地址。例如,使用公网接口GE0/0/1的IP地址作为NAT转换的公网地址。
interface GigabitEthernet0/0/0
nat server protocol tcp global current-interface telnet inside 192.168.2.2 telnet //用出接口地址进行端口映射
display nat server//查看详细的NAT服务器配置结果。
注意事项
ENSP做实验注意事项,由于模拟器BUG
1.实验动态NAT的时候,使用AR1220及以上型号,地址池稍微地址配置多些。否则可能导致某台设备不通或者丢包严重。
2.实现NAPT的时候,使用AR1220及以上型号,否则可能出现没有效果,无法访问
查看命令
display nat session all //查看动态
display nat static //查看静态
思科配置命令
一对一
interface s1/0
ip nat outside
interface f0/0
ip nat inside
ip nat inside source static 192.168.1.1 202.101.100.1
端口映射
interface FastEthernet0/0
ip nat outside
interface FastEthernet1/0
ip nat inside
ip nat inside source static tcp 192.168.2.1 23 23.1.1.3 23
动态NAT
interface f1/0
ip nat outside
interface f0/0
ip nat inside
ip nat pool nat1 202.101.100.1 202.101.100.10 netmask 255.255.255.0
access-list 1 permit 192.168.1.0 0.0.0.255
ip nat inside source list 1 pool nat1 overload
端口复用 PAT
interface FastEthernet0/0
ip nat inside
interface FastEthernet1/0
ip nat outside
access-list 1 permit 192.168.1.0 0.0.0.255 //匹配192.168.1.0网段
ip nat inside source list 1 interface FastEthernet1/0 overload
查看命令show ip nat translations //查看NAT表项