NAT下行穿越的问题
时间:10-19
整理:3721RD
点击:
一个终端,在NAT后面,从IPA, PortA向有服务器B发送包,目的地址:IPB, PortB 这时,从服务器B上,抓包,看到收到经过NAT的包,源地址IPC, PortC,目的地址:IPB, PortB,IPC应该就是最后一次NAT的网关地址,PortC为相应翻译后的隐射端口
问:这时候,是不是从服务器B上的任一程序,或者从其它任一公网IP,向IPC, PortC发包,都会最终送达终端IPA, PortA上?
Src-A:A Src-C:C
Dst-B:B ------> GW -> Dst-B:B ----->Server B
Src-B : B Src-B : B
Dst-A:A <------ GW <- Dst-C:C <---???--Server B ??能通么?
也就是NAT网关,做下行地址翻译时候,会不会对源地址源端口进行检查?也就是只有源地址来自IPB,PortB的目的地址IPC, PortC,才会被转发给内网的终端?
另,NAT翻译对应端口的生存周期一般多少?
问:这时候,是不是从服务器B上的任一程序,或者从其它任一公网IP,向IPC, PortC发包,都会最终送达终端IPA, PortA上?
Src-A:A Src-C:C
Dst-B:B ------> GW -> Dst-B:B ----->Server B
Src-B : B Src-B : B
Dst-A:A <------ GW <- Dst-C:C <---???--Server B ??能通么?
也就是NAT网关,做下行地址翻译时候,会不会对源地址源端口进行检查?也就是只有源地址来自IPB,PortB的目的地址IPC, PortC,才会被转发给内网的终端?
另,NAT翻译对应端口的生存周期一般多少?
TCP不用说,只说UDP
首先回传包的目的地址和端口必须是NAT打洞包的源地址和端口,任何NAT都必须这样
其实回传包的源地址和端口则不同NAT各不相同,不合规格就会过滤掉。有三种情况:
1。有的NAT要求回传包的源地址和端口必须是打洞包的目的地址和端口,也就是要进行IP和端口过滤。
2。有的NAT只要求IP地址一致,端口可以不同。叫IP过滤
3。还有的NAT不要求
BTW,运营商的好像是第一种:)
不会。这个不是这样的楼主的理解有问题。首先IPA经过NAT以后serverB是不能主动对IPA发送数据包的,只能被动的响应ipa的要求。然后数据包在C上的时候是需要检查端口号的,以确定这个数据包是发送给哪个IP的
上面说的事PAT的情况,如果是1对1的映射,那么发给C的数据包会达到A