我想了解当两个主机在端口限制锥形NAT后面建立连接时,udp打孔是如何工作的。
据我了解,它发生在几个阶段,涉及三个主机。
主机A和主机B位于端口限制锥形NAT后面。
主机C是可以从主机A和B接收数据包的服务器。
问题是:
受限制的锥形NAT后面的A如何从B接收来自B的数据包 限制锥NAT?
端口限制锥形NAT不允许数据包,其中源地址:端口对与要发送的目标地址:端口对的数据包不匹配。为什么在A和B之间发送的其他数据包到达A和B?
是否因为端口受限锥形NAT将packet_2视为来自B的响应?
所以packet_1会丢失但是packet_2会到达B.我是对的吗?
提前谢谢。
答案 0 :(得分:2)
答案 1 :(得分:1)
首先,限制锥形意味着如果A与C对话,则B不能使用在A和C之间打孔的孔与A通信,假设B在nat后面不。意思是,nat遍历在这种情况下不起作用。
Resctricted锥形NAT后面的A如何从B接收数据包 这也是限制锥形NAT的背后?
在这种情况下,它是一种不同的情况,称为发夹条件。换句话说,nat背后的B可以从nat后面使用A的翻译地址吗?有些nat正确处理这种情况,有些则没有。
在你的情况下,即使你的nat正确处理发夹条件,由于'限制锥',B的包也不会被转发。所以,结果是一样的。
为什么A和B之间的其他数据包到达A和B?
他们不会在你的情况下。
答案 2 :(得分:0)
A sends packet_1 to B's external address
B sends packet_2 to A's external address
How can A behind the restricted cone NAT receive a packet from B which is also behind the restricted cone NAT?
Is it because the port restricted cone NAT considers packet_2 as the response from B?
So packet_1 will be lost but packet_2 arrives to B. Am I right?
你是对的,请阅读skype works如何,这就是你要找的东西
答案 3 :(得分:0)
我写过一篇:PyPunchP2P。看看是否有人可以使用它。