分析NAT路由器原理及其应用关键事项
出处:fwx7610m 发布于:2011-08-29 21:54:59
随着用户越来越多,IP地址耗尽促成了CIDR的开发,网络地址转换属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中。原因很简单,NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。
NAT路由技术使得一个私有网络可以通过internet注册IP连接到外部世界,位于iNSide网络和outside网络中的NAT路由器在发送数据包之前,负责把内部IP翻译成外部合法地址。内部网络的主机不可能同时于外部网络通信,所以只有一部分内部地址需要翻译。
NAT的翻译可以采取静态翻译(static translation)和动态翻译(dynamic translation)两种。静态翻译将内部地址和外部地址一对一对应。当NAT需要确认哪个地址需要翻译,翻译时采用哪个地址pool时,就使用了动态翻译。当影射一个外部IP到内部地址时,可以利用TCP的load distribution技术。使用这个特征时,内部主机基于round-robin机制,将外部进来的新连接定向到不同的主机上去。注意:load distributiong只有在影射外部地址到内部的时候才有效。
虽然NAT可以借助于某些代理服务器来实现,但考虑到运算成本和网络性能,很多时候都是在路由器上来实现的。
随着接入Internet的计算机数量的不断猛增,IP地址资源也就愈加显得捉襟见肘。事实上,除了中国教育和科研计算机网(CERNET)外,一般用户几乎申请不到整段的C类IP地址。在其他ISP那里,即使是拥有几百台计算机的大型局域网用户,当他们申请IP地址时,所分配的地址也不过只有几个或十几个IP地址。显然,这样少的IP地址根本无法满足网络用户的需求,于是也就产生了NAT技术。
NAT使用的几种情况:
a,连接到internet,但却没有足够的合法地址分配给内部主机。
b,更改到一个需要重新分配地址的ISP。
c,有相同的IP地址的两个internat合并。
d,想支持负载均衡(主机)。
采用NAT后,一个主要的改变就是你失去了端对端IP的traceability,也就是说,从此你不能再经过NAT使用ping和traceroute,其次就是曾经的一些IP对IP的程序不再可以正常运行。但有几个协议需要注意,首先tftp,rlogin,rsh,rcp和ip multicast都被NAT支持,其次就是bootp,snmp和NAT路由器更新全部给拒绝了。NAT的几个相关概念:
Inside Local IP address: 指定于内部网络的主机地址,全局,但为私有地址。
Inside Global IP address: 代表一个或更多内部IP到外部世界的合法IP。
Outside Global IP address: 外部网络主机的合法IP。
Outside Local IP address: 外部网络的主机地址,看起来是内部网络的,私有地址。
Simple Translation Entry: 影射IP到另一个地址的Entry。
Extended Translation Entry:影射IP地址和端口到另一个pair的Entry。
a,内部地址翻译(Translation inside local addresses):
这是比较通用的一种方法,将内部IP一对一的翻译成外部地址。
在内部主机连接到外部网络时,当个数据包到达NAT路由器时,router检查它的NAT表,因为是NAT是静态配置的,故可以查询出来(simply entry),然后router将数据包的内部局部IP(源地址)更换成内部全局地址,再转发出去。外部主机接受到数据包用接受到的内部全局地址来响应,NAT接受到外部回来的数据包,再根据NAT表把地址翻译成内部局部IP,转发过去。
b,内部全局地址复用(overloading inside glogal addresses)
使用地址和端口pair将多个内部地址影射到比较少的外部地址。这也是所谓的PAT。和内部地址翻译一样,NAT router同样也负责查表和翻译内部IP地址,的区别就是由于使用了overloading,router将复用同样的内部全局IP地址,并存储足够的信息以区分它和其他地址,这样查询出来的是extended entry。NAT router和外部主机的通讯采用翻译过的内部全局地址,故同一般的通信没有差别,router到内部主机通讯时,同样要查NAT表。
c,TCP负载重分配(TCP load distributing)和以上两种操作不同,这是NAT由外到内的翻译,所以那种以为WEB server一定要放置到NAT外部的说法是错误的。
工作原理:外部主机向虚拟主机(定义为内部全局地址)通讯,根据查询到的外部地址和端口做出响应。此时,如果同一主机再做第二个连接,NAT router将根据NAT表将建立与另一虚拟主机的连接,并转发数据。
d,处理重叠网络。
这种方法主要用于两个intranet的互连,同样给我们处理两个重叠网络提供了方法。它的实现要求DNS server的支持(用于区别两个不同的主机)。
1,主机A要求向主机C建立连接,先象DNS server做地址查询。
2,NAT router截获DNS的响应,如果地址有重叠,将翻译返回的地址。它将创建一个simply entry把重叠的外部全局地址(目的地址)翻译成外部局部地址。
3,NAT路由器转发DNS响应到主机A,它已经把主机C的地址(外部全局地址)翻译成外部局部地址。
4,当NAT路由器接受到主机C的数据包时,它将建立内部局部、全局,外部全局、局部地址间的转换,主机A将由内部局部地址(源地址)翻译成内部全局地址,主机C将由外部全局地址(目的地址)翻译成外部局部地址。
一些高层协议是在IP包的有效数据内发送网络层(第三层)信息的。比如,主动模式的FTP使用单独的端口分别来控制命令传输和数据传输。当请求一个文件传输时,主机在发送请求的同时也通知对方自己想要在哪个端口接受数据。但是,如果主机是在一个简单的NAT防火墙后发送的请求,那么由于端口的映射将会使对方接收到的信息无效。
上一篇:浅谈我国无线电管理技术发展历程
下一篇:浅谈CDP协议方案
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- 工业5G技术在智能制造中的应用与实践解析2025/12/31 10:57:21
- 工业以太网交换机选型与现场应用技术指南2025/12/18 10:48:14
- 无线传输电路基础,射频前端设计、天线匹配与链路预算计算2025/10/27 13:55:50
- ASK 解调的核心要点与实现方式2025/9/5 16:46:17
- 双偶极子天线:结构、特性与应用全解析2025/9/3 10:29:21









