2014-10-31 44 views
0

我尝试连接到一个网络服务器是在NAT之后在端口4000连接到STUN返回外部IP地址

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

$ pystun -p 4000

我有

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

一个返回值,但是,当我TR y从http://:1024访问它,我无法连接并且始终卡住等待响应。

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

+2

我怀疑你的STUN调用只打开UDP的端口,而不是TCP。 – 2014-10-31 07:33:16

回答

1

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

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