新闻资讯

什么是nat?解决内网问题的nat穿透方法有哪些?

2018-12-28

何为nat?其实它的基本原理并不复杂,只是在网关设备上维护私网地址(端口)到公网地址(端口)的映射关系,通过修改流经网关的IP报文头部实现地址转换。由于nat是IP转发流程中的一个环节,具体的实现势必和软硬件密切相关。为了尽可能提高设备转发和报文处理的性能,软件数据结构和处理流程会应根据设备硬件的特点进行设计。本文小编带大家一起来了解nat。

什么是nat?

简单地说,nat就是在局域网内部网络中使用内部地址,而当内部节点要与外部网络进行通讯时,就在网关(可以理解为出口,打个比方就像院子的门一样)处,将 内部地址替换成公用地址,从而在外部公网(internet)上正常使用,nat可以使多台计算机共享Internet连接,这一功能很好地解决了公共 IP地址紧缺的问题。通过这种方法,您可以只申请一个合法IP地址,就把整个局域网中的计算机接入Internet中。这时,nat屏蔽了内部网络,所有 内部网计算机对于公共网络来说是不可见的,而内部网计算机用户通常不会意识到nat的存在。

关于nat经常会出现的问题是,明明拥有公网IP地址,在使用大部分动态域名解析软件时却出现被解析到另外一个莫名其妙的公网IP地址。其实,这个所谓“莫名其妙”的公网IP地址就是ISP的网关,网关将IP封包里头的Sourece Address根据访问特定的Destination Address列表作了一次技术转换,换成了出口网关的IP地址。这时候就出现了IP被转化现象。解决的办法步骤:进入[我的控制台]—[管理]—[花生壳管理] —[高级设置]中自行选择登陆至与服务器当前接入的网络供应商相同登陆线路即可。

解决内网问题的nat穿透方法有哪些?

1.完全锥形(Full Cone)nat

处于不同内网的主机A和主机B,各自先连接服务器,从而在各自nat设备上打开了一个“孔”,服务器收到主机A和主机B的连接后,知道A与B的公网地址和nat分配给它们的端口号,然后把这些nat地址与端口号告诉A与B,由于在完全锥形nat的特点,A和B给服务器所打开的“孔”,能给别的任何的主机使用。故A与B可连接对方的公网地址和端口直接进行通信。服务器在这里充当“介绍人”,告诉A与B对方的地址和端口号。

2.受限制锥形(Restricted Cone)nat

A和B还是要先连接服务器,服务器发送A和B的地址和端口信息给A和B,但由于受限制锥形nat的特点,他们所打开的“孔”,只能与服务器通信。要使他们可以直接通信,解决办法如下:

假如主机A开始发送一个UDP信息到主机B的公网地址上,与此同时,它又通过服务器中转发送了一个邀请信息给主机B,请求主机B也给主机A发送一个UDP信息到主机A的公网地址上。这时主机A向主机B的公网IP发送的信息导致nat A打开一个处于主机A的和主机B之间的会话,与此同时,nat B也打开了一个处于主机B和主机A的会话。一旦这个新的UDP会话各自向对方打开了,主机A和主机B之间就可以直接通信了[14]。

3.端口受限制锥形(Port Restricted Cone)nat

对于该类型的nat,解决办法跟上面的方法一样。

4.对称型(Symmetric)nat

对称型nat,对于不同的外网主机地址,它都会分配不同的端口号,所以进行UDP打孔比较困难,但也可以进行端口预测打孔,不过不能保证成功。

5.花生壳nat-DDNS穿透

花生壳DDNS是将用户的动态IP 地址映射到一个固定的域名上,用户每次连接网络的时候客户端程序就会通过信息传递把该主机的动态IP 地址传送给位于服务商主机上的服务器程序,服务项目器程序负责提供 DNS 服务并实现动态域名解析。DDNS 的主要作用就是捕获用户每次变化的 IP 地址,然后将其与域名相对应,这样其他上网用户就可以通过域名来与用户交流了。

花生壳是一个动态域名解析软件,支持端口映射和内网穿透,从2006年面世起十多年间累计为全球1450多万用户提供动态域名解析服务。2016年5月,全新改版客户端花生壳3.2发布,以颠覆式的nat-DDNS创新技术、全新的交互界面及功能体验,搭配Web、微信远程管理,全面满足广大用户的多元化需求。