【51CTO.com 独家特稿】目前,ICANN已把IPv4地址分配完毕。按理说,一些组织多少应该有些紧张,因为没有了IP地址,怎么保证一些网络设备互联到Internet?这是因为目前许多单位普遍使用了NAT(Network Address Translation,网络地址装换)技术。下面就通过一则现实中运行的实例,和一些截图让大家完全明白NAT运行的机制和原理。
一、网络结构图说明
网络拓扑图如图1所示,分公司的PC(10.10.10.2/24)通过Internet访问总部的Server(192.168.10.2/24)。其中在分公司的Cisco 3750上应用了PAT规则,也就是"端口NAT"。在公司总部的防火墙B上应用了Static NAT,并且防火墙B上的互联网端口的IP地址配置为114.23.72.19/24。分公司Cisco 3750上的互联网端口的IP地址配置为114.23.72.219/24。在分公司的PC电脑上,和总部的Server上都运行了"360流量监控"软件,通过软件中的"网络连接"面板,能够清楚的看出NAT运行的机理。
(图1 网络结构图)
#p#
二、交换机和防火墙上NAT的配置
1、总部防火墙B上应用的是Static NAT规则,通过防火墙的Web控制页面就可操作完成,即在114.23.72.19/24和192.168.10.2/24之间做一静态转换,并且这两个IP地址之间的服务端口也都是一一段应。
2、Cisco 3750上的配置文件如下所示:
ip nat pool corporation 114.23.72.219 114.23.72.219 netmask 255.255.255.0
\\定义内部全局地址池
ip nat inside source list 10 pool corporation overload \\建立映射关系
!
interface GigabitEthernet1/0/1 \\定义外网接口
no switchport
ip address 114.23.72.219 255.255.255.0
ip nat outside
!
interface GigabitEthernet1/0/10 \\定义内网接口
ip nat inside
!
access-list 10 permit 10.10.10.0 0.0.0.255 \\定义内部本地地址范围
#p#
三、实时监控查看NAT运行过程
"360流量监控"软件可以详细的显示本机服务和远程主机服务的连接情况。因为在大部分的电脑中,Tcp 139端口都是默认打开的,这样只需在分公司PC的"命令行"中执行"telnet 114.23.72.19 139"命令,就可在分公司PC与总部Server之间建立一个TCP连接,这是因为Telnet应用是通过TCP建立连接的。建立连接后,就可通过"360流量监控"中的"网络连接"面板查看它们的连接情况。如图2所示,是在PC上"360流量监控"的截图。从图上可以看出,PC上启动了一个"Telnet.exe"的进程,进程使用的是TCP协议,在本地的7420端口,和总部Server服务器的139端口建立了连接。
(图2 分公司PC上360实时截图)
(图3 总部Server上360实时截图)
图3所示是在Server上的"360流量监控"的截图。从图上可以看出,在总部Server上启动了一个"System"的系统进程,并且在本地的139端口和目标IP的52617端口之间建了TCP连接。
通过这两幅截图就能明白现实中NAT运行的原理。图中并没有显示出在10.10.10.2和192.168.10.2之间直接建立了连接,就是因为在Cisco 3750和防火墙B上应用了NAT规则。#p#
四、总结
1、NAT规则有三种类型:静态NAT(Static NAT)、动态NAT(Dynamic NAT)和端口NAT(PAT),也称动态复用NAT。其实动态NAT就是静态NAT的一种特例。本实例中就应用了三种NAT规则中的两种,静态NAT和PAT。
静态NAT:将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,也是一直不变的。实例中总部的IP地址114.23.72.19和192.168.10.2之间就是这种一对一的转换。也就是某个私有IP地址只转换为某个公有IP地址。借助于静态NAT,可以实现外部网络对内部网络中某些特定服务器的访问。
动态NAT:将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定,随机的。所有被授权访问Internet的私有IP地址可随机转换为任何指定合法的IP地址。也就是说,只要指定哪些内部地址可以进行转换,以及用哪些合法地址作为外部地址时,就可以进行动态NAT转换。动态NAT可以使用多个合法外部地址集。当ISP提供的合法IP地址略少于网络内部的计算机数量时。可以采用动态转换的方式。
PAT:改变外出数据包的源端口并进行端口转换,采用端口多路复用方式。内部网络的所有主机均可共享一个合法外部IP地址实现对Internet的访问,可以最大限度地节约IP地址资源。同时,也可以隐藏网络内部的所有主机,有效避免来自Internet的攻击。因此,目前网络中应用最多的就是PAT规则。
2、NAT也能有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。但NAT最主要的作用,是在一定程度上减缓了IPv4地址耗尽的进度,但它也只是减缓,并不能阻止。目前,再有组织申请IP地址,就只能是IPv6地址了。因为IPv6地址数量庞大,按保守方法估算,IPv6实际可分配的地址,在整个地球每平方米面积上可分配1000多个地址,号称能让"每颗沙子都拥有一个IP地址"。既然IPv6有这么多的地址,能保证每一个Internet上的终端使用的都是全球唯一IP地址,所以当IPv6地址在全球普及的时候,也是NAT技术消亡的时候。
【51CTO.com独家特稿,非经授权谢绝转载!合作媒体转载请注明原文出处及出处!】