连接到STUN返回外部IP地址

时间:2014-10-31 07:14:36

标签: python stun nat-traversal

我正在尝试连接到在端口4000处侦听NAT的Web服务器。

在我的网络服务器上,使用pystun(https://github.com/jtriley/pystun)和命令:

$ pystun -p 4000

我的返回值为

NAT Type: Symmetric NAT External IP: <ip> External Port: 1024

但是当我尝试从http://:1024访问它时,我无法连接并且它始终坚持等待响应。

这是使用STUN的正确方法吗?

1 个答案:

答案 0 :(得分:1)

您的NAT已经为您的STUN服务器打开了端口(穿孔),因为当您运行“pystun”时,它已经看到了STUN的传出数据包。但是当您从其他地方尝试访问您的网络服务器时,您的数据包未知到NAT。因此,NAT会默默地丢弃所有传入的数据包。

请注意,虽然您在与STUN服务器通信时从NAT获取外部端口,但由于它是symmetric type,因此该端口将更改为其他随机端口,而4元组(src-address) ,src-port,dst-sddress,dst-port)更改。