来自:zip11 > 馆藏分类
配色: 字号:
宽带内网ip nat内网穿透原理
2022-04-07 | 阅:  转:  |  分享 
  
内网ipnat上网,p2p内网穿透Nat类型实际上大部运营商提供的光猫上网服务都是锥形nat的。而光纤入户,3g4g网络,公共wifi登
因为安全因素都是对称nat。对称型nat是可以打洞的。只要请求链接的对方是非端口限制锥型nat就都能实现打洞p2p链接的。只有双方
都是对称是一定无法实现。2.4.UDP穿透之四种NATUDP穿透之网络发现协议图解:?全锥形NAT?受限锥形NAT?端口受限锥型N
AT?对称型NAT上述除了对称性NAT无法实现简单的打洞穿透外,其它都是可以简单的实现穿透的。2.4.1.全锥形NAT全锥形NAT
的IP、端口都不受限。只要客户端由内到外打通一个洞之后(NatIP:NatPort->A:P1),其他IP的主机(B)或端口(
A:P2)都可以使用这个洞发送数据到客户端。映射关系为:Client->NatIP:NatPort->Any,即任何外部主机都可通
过NatIP:NatPort发送数据到Clietn上。2.4.2.受限锥形NAT受限锥形NAT的IP受限,端口不受限。当客户端由内
到外打通一个洞之后(NatIP:NatPort->A:P1),A机器可以使用他的其他端口(P2)主动连接客户端,但B机器则不被
允许。映射关系为:Client->NatIP:NatPort->A,即只有来自A的数据包才能通过NatIP:NatPort发送到
Client上。2.4.3.端口受限锥型NAT端口受限锥型NAT的IP、端口都受限。返回的数据只接受曾经打洞成功的对象(A:P1)
,由A:P2、B:P1发起的数据将不被NatIP:NatPort接收。映射关系为:Client->NatIP:NatPort->A
:P1,即只有来自A:P1的数据才可通过NatIP:NatPort发送到Client上。2.4.4.对称型NAT对称型NAT具有端
口受限锥型的受限特性。但更重要的是,他对每个外部主机或端口的会话都会映射为不同的端口(洞)。只有来自相同的内部地址(IP:PORT
)并且发送到相同外部地址(X:x)的请求,在NAT上才映射为相同的外网端口,即相同的映射。一个外部地址(X:x)对应一个NAT上的
映射,每个映射仅接收来自他绑定的外部地址的数据。关键点在到不同的目的地(目的IP:目的端口)分配不同的映射地址(IP:Port)5
大NAT穿透方法许多程序在局域网中是可以适用的,但是在外网与内网之间和内网与内网之间就不可行。问题就在于NAT,本文就将介绍下5大
NAT穿透方法,解决内外网的互访问题。完全锥形(FullCone)NAT处于不同内网的主机A和主机B,各自先连接服务器,从而在各
自NAT设备上打开了一个“孔”,服务器收到主机A和主机B的连接后,知道A与B的公网地址和NAT分配给它们的端口号,然后把这些NAT
地址与端口号告诉A与B,由于在完全锥形NAT的特点,A和B给服务器所打开的“孔”,能给别的任何的主机使用。故A与B可连接对方的公网
地址和端口直接进行通信。服务器在这里充当“介绍人”,告诉A与B对方的地址和端口号。2.受限制锥形(RestrictedCone)
NATA和B还是要先连接服务器,服务器发送A和B的地址和端口信息给A和B,但由于受限制锥形NAT的特点,他们所打开的“孔”,只能
与服务器通信。要使他们可以直接通信,解决办法如下:假如主机A开始发送一个UDP信息到主机B的公网地址上,与此同时,它又通过服务器中
转发送了一个邀请信息给主机B,请求主机B也给主机A发送一个UDP信息到主机A的公网地址上。这时主机A向主机B的公网IP发送的信息导
致NATA打开一个处于主机A的和主机B之间的会话,与此同时,NATB也打开了一个处于主机B和主机A的会话。一旦这个新的UDP会
话各自向对方打开了,主机A和主机B之间就可以直接通信了[14]。3.端口受限制锥形(PortRestrictedCone)NA
T对于该类型的NAT,解决办法跟上面的方法一样。4.对称型(Symmetric)NAT对称型NAT,对于不同的外网主机地址,它都会
分配不同的端口号,所以进行UDP打孔比较困难,但也可以进行端口预测打孔,不过不能保证成功。以上的穿透NAT,是对NAPT来进行穿透
,主要是针对UDP协议。TCP协议也有可能,但是可行性非常小,要求更高。并且,语音视频通信是用UDP传输的,故针对TCP的NAT穿
透在这里不作讨论。基础NAT不修改经过的数据包的端口号,它们可以看作是完全锥形NAT的精简版本,即基础NAT也可以被穿透。NAT设
备将在一定时间后关闭UDP的一个https://link.zhihu.com/?target=https%3A//hsk.oray.com/映射,所以为了保持与服务器能够一直通信,服务器或客户端必须要周期性地发送UDP包,保持映射不被关闭。
献花(0)
+1
(本文系zip11首藏)