NAT 技术的相关应用
2013-12-29梁国权
摘要:分析NAT技术中静态NAT、动态地址NAT和复用动态地址转换三种技术基本知识。利用实际例子分析三种NAT的使用,并给出具体操作方法。给出验证NAT是否成功的方法。
关键词:NAT;静态NAT;动态NAT;复用动态NAT;验证NAT
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2013)02-0247-03
1 NAT技术简介
NAT(Network Address Translation)网络地址转换。其使用环境通常是两个不同网段的网络,它们之间需要实现访问,那么就可以通过NAT进行地址转换实现访问。例如现在普遍使用最多的情况就是内网中有多台主机,但只能通过一个合法外网IP地址访问外网资源,使用NAT技术就可以解决。当然如果外网要访问内网中的资源,也可以通过相应的NAT技术来实现。
NAT的作用主要就是:一就是安全方面,通过NAT转换后不让外网用户了解掌握到内部网络的结构、地址等情况,起到防范作用。二就是公网IP地址资源方面,当内网主机较多时,如果一台主机一个公网IP就显得浪费,通过NAT技术可实现多台内网主机共用一个外网IP地址就可以访问INTERNET,以缓解当前公网IP地址短缺的情况。
2 实现NAT的方法
在路由中实现NAT常见有:静态NAT、动态地址NAT和复用动态(端口多路复用)地址转换三种技术方法,具体要分析网络与使用环境而选择。
2.1 静态NAT
静态NAT是一对一的IP地址转换方式。就是将内网中某一台主机的IP地址转换成外网中某一个固定的IP地址。使用这种方法当多台内网主机要访问外网时,就要一对一做转换,需要内网IP地址与外网IP数量相同才能实现。
图1
如图1所示,静态NAT就是将内网中具体IP地址为192.168.0.1转换成外网中IP地址202.16.100.11,它们之间是一对一的转换关系。例如,内网中IP地址为192.168.0.1主机中建立了Web服务器、E-mail服务器、FTP服务器等,如果这些服务也想对外网用户进行开放,则就可以通过静态NAT实现,当外网用户访问202.16.100.11地址时等同于直接访问内网中的主机。
以下就以神州数码DCR-2626按图1中参数列出关键配置,实现NAT的静态转换。
interface fastethernet 0/0
ip address 202.16.100.11 255.255.248.0
//配置F0/0端口的IP地址
ip nat outside
//将该接口指定为外部端口
exit
interface fastethernet 0/3
ip address 192.168.0.1 255.255.255.0
//配置F0/3端口的IP地址
ip nat outside
//将该接口指定为内部端口
exit
ip nat inside source static 192.168.0.1 202.16.100.11
//实现静态NAT将内网192.168.0.1与外网202.16.100.11转换
如果内网是一台WEB服务器,要实现外网也可以访问内网中的网站,就需要将上述的一行配置内容换成下列一行就可。
ipnatinsidesourcestatictcp192.168.0.180202.16.100.1180
这样配置生效后,外网用户访问HTTP://202.16.100.11就可以使用内网192.168.0.1主机WEB服务器的资源了。如果内网中还存在多个WEB网站,但只有一个合法的外网IP地址,则可以通过改变端口号来处理,如下配置:
ipnatinsidesourcestatictcp192.168.0.180202.16.100.118080
通过上行配置,可以实现内部网络中其他WEB服务NAT转换。外网用户HTTP://202.16.100.11:8080就可以使用内网192.168.0.2主机WEB服务器的资源了。
2.2 动态NAT
动态NAT是多对多的转换方式,与静态NAT不同就是具有多个外网IP地址可提供给内网转换。它先将一些可供转换的外网IP组织起来,也就是建立地址池,然后当某台内网主机需要访问外网时就从地址池中选择一个还没有被占用的外网IP进行转换,当内网主机访问完成后就归还该外网IP,接下来如果有其他内网主机要使用时就可以再次使用此外网IP。这种方法允许合法IP地址数少于主机数。
图2
如图2所示,当IP地址为192.168.0.22的内网主机要访问外网时,先从地址池中选择还没有被使用的外网IP地址202.16.100.11,再通过NAT实现转换。从上述原理中,其实动态NAT也可以理解成是内网IP地址与合法外网IP地址进行一对一的转换,但是动态NAT是从地址池中动态地选择一个未使用的地址对内网IP地址进行转换。该方法也可以节省一定的合法IP地址,所以该方法常常被使用。
以下就以神州数码DCR-2626为例,以图2的连接实现动态NAT,列出关键配置。
interface fastethernet 0/0
ip address 202.16.100.10 255.255.248.0
ip nat outside
exit
interface fastethernet 0/3
ip address 192.168.0.1 255.255.255.0
ip nat outside
exit
//先定义路由器中内网、外网端口IP地址及指定内部外部端口
ip access-list standard abc
permit 192.168.0.0 255.255.255.0
//建立名字为abc的访问控制列表,允许转换的源地址范围为192.168.0网段
ip nat pool kkk 202.16.100.10 202.16.100.50 255.255.248.0
//建立名字为kkk的NAT地址池,地址范围为202.16.100.10至202.16.100.50,子网掩码为255.255.248.0
ip nat inside source list abc pool kkk
//启用动态NAT转换,允许访问列表abc中的地址范围,通过kkk地址池进行动态地址转换。
通常路由上还要配置外网的默认网关,内网用户才能访问到外网相关资源,配置如下:
ip router 0.0.0.0 0.0.0.0 202.16.100.1
//假设外网网关为202.16.100.1
2.3 复用动态NAT(PNAT)
复用动态NAT又称端口多路复用技术,也称为PNAT,可以理解成是一种多对一的转换方式。PNAT技术是通过改变外出数据包的源端口并进行端口转换,它可将多个内网IP地址映射为一个外网IP地址,使用不同的端口来区分所对应的各个不同的内网IP地址。这种方法可以实现全部内网主机通过共享一个外网IP地址就可以实现外网资源访问,大大节省外网IP地址资源,但此方法有可能引起信道一定拥塞。
图3
如图3所示,内网192.168.0.0/24网段中,任何主机如果要访问外网资源,PNAT可以实现都将这些内网IP都转换成202.16.100.11外网IP访问外网资源。
以下就以神州数码DCR-2626为例,按图3的拓扑,列出关键配置,实现PNAT。
//假设外网网关为202.16.100.1
3 验证NAT转换
配置好相对应的NAT后,可以通过下列方法对NAT进行验证:
3.1 查看协议状态
Showipnatstatistics
显示出转换后的IP信息,也就是显示当前的NAT转换统计的情况。不过要注意,在查看之前请先让内网用户与外网进行通信,以保证有数据通过而进行转换,才能正确验证出相关NAT转换有没有正常工作。
3.2 查看当前存在的转换
showipnattranslations
如果能显示出内网IP与外网IP的转换,就证明NAT转换成功。
3.3 调试NAT
debug ip nat
通过debug信息可以看到NAT转换的包信息,如果可以显示出内网与外网数据包的转换情况,则证实NAT工作正常。
参考文献:
[1] 朱红星.计算机网络管理员(技师)[M].广州:广东科技出版社,2011.
[2] 蒲卫,吴豪.网络组建与管理[M].北京:清华大学出版社,2011.
[3] 雷震甲,吴晓葵,严体华.网络工程师教程[M].北京:清华大学出版社,2011.