什么是NAT(DNAT、SNAT)

 

NAT

Net Address Trancelate

是将局域网里的内部地址(如192.168.0.x)转换成公网(Internet)上合法的IP地址(如202.202.12.11),以使内部地址能像有公网地址的主机一样上网。这个优于代理服务器,能做直接访问外部IP地址,但NAT往往会过滤掉部分UDP数据包。

NAT(Network address translation)(RFC 1631中作出规定)作为这样一种过渡解决手段,可以用来减少对全球合法注册地址的需求。简单的说,NAT就是在内部专用网络中使用内部地址(不可路由),而当内部节点要与外界网络发生联系时,就在边缘路由器或者防火墙处,将内部地址替换成全局地址——合法地址(可路由),从而在外部公共网上正常使用。
这里需要解释一下,内部地址,是指在内部网络中分配给节点的私有IP地址,这个地址只能在内部网络中使用,不能被路由。虽然内部地址可以随机挑选,但是通常使用的是RFC 1918中定义的专用地址:10.0.0.0~10.255.255.255,172.16.0.0~172.16.255.255,192.168.0.0~192.168.255.255。全局地址,是指合法的IP地址,它是由NIC或者网络服务提供商分配的地址,对外代表一个或多个内部局部地址,是全球统一的可寻址的地址(可路由)。
NAT的主要作用是节约地址空间。在任一时刻,如果内部网络中只有少数节点与外界建立连接,那么就只有少数的内部地址需要被转化成全局地址,可以减少对合法地址的需求。同时,还可以使多个内部节点共享一个外部地址,使用端口进行区分(NAPT),这样就能更有效的节约合法地址。
除了节约地址,NAT还能简化配置,增加网络规划的灵活性。使用NAT,可以在规划地址时有更大的灵活性,从而简化内部网的设计。另外,当两个有地址重叠的私有内部网要连接在一起时,可以使用NAT来防止地址冲突,而避免逐个改变节点的地址这个繁杂的工作。
NAT地址转换有两种主要类型:静态转换(Static Translation),动态转换(Dynamic Translations)。
静态转换是最简单的一种转换方式,它在NAT表中为每一个需要转换的内部地址创建了固定的转换条目,映射了唯一的全局地址。内部地址与全局地址一一对应。每当内部节点与外界通信时,内部地址就会转化为对应的全局地址。
动态转换,增加了网络管理的复杂性,但也提供了很大的灵活性。它将可用的全局地址地址集定义成NAT池(NAT pool)。对于要与外界进行通信的内部节点,如果还没有建立转换映射,边缘路由器或者防火墙将会动态的从NAT池中选择全局地址对内部地址进行转化。每个转换条目在连接建立时动态建立,而在连接终止时会被回收。这样,网络的灵活性大大增强了,所需要的全局地址进一步的减少。值得注意的是,当NAT池中的全局地址被全部占用以后,以后的地址转换的申请会被拒绝。这样会造成网络连通性的问题。所以应该使用超时操作选项来回收NAT池的全局地址。另外,由于每次的地址转换是动态的,所以同一个节点在不同的连接中的全局地址是不同的,这会使snmp的操作复杂化。
端口地址转换(NAPT—Network address port translatin),是动态转换的一种变形。它可以使多个内部节点共享一个全局IP地址,而使用源和目的的TCP/UDP的端口号来区分NAT表中的转换条目及内部地址。这样,就更节省了地址空间。比如说,假设内部节点10.1.1.3,10.1.1.2都用源端口1723向外发送数据包。NAPT路由器把这两个内部地址都转换成全局地址192.168.2.2,而使用不同的源端口号:1492,1723。当接收方收到的源端口号为1492,则返回的数据包在边缘网关处,目的地址和端口被转换为10.1.1.3:1723;而接收到的源端口号为1723的,目的被映射到10.1.1.2:1723。
NAPT可以使整个局域网都使用一个IP地址来联入Internet,所以它常常用在小型办公室/家庭办公室(SOHO)中,作与外部公共网络的连接。
在以上的映射转换中,只使用了IP地址的转换条目被称为简单条目,而包含IP地址和TCP/UDP端口号的转换条目被称为扩展条目。
以上所有的地址转换功能,都是由防火墙或者边缘路由器(即连接内部网络和公用网络的路由器)完成的,而对于通信的各节点,无论是内部还是外部的,都是透明的。
那么NAT具体用在哪些地方呢?
外向的NAT,常常用在共享一个IP地址发出流向外部网络的数据流,而不接受外部网络向内部网络发出的连接请求的地方,比如多节点用户、远程的工作点、小型商业用户等。具体的说,就是通过ISDN、DSL(Digital subscriber Line)、cable modem连接的小型局域网。双向的静态NAT/NAPT常被安装有防火墙的大型企业使用。另外,当ISP的地址发生变化,如果企业不想改变自己的地址规划,也会用到NAT技术。

DNAT用来伪装目的,SNAT用来伪装源

标签: 无
返回文章列表 文章二维码
本页链接的二维码
打赏二维码