Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 连接到STUN返回的外部IP地址_Python_Stun_Nat Traversal - Fatal编程技术网

Python 连接到STUN返回的外部IP地址

Python 连接到STUN返回的外部IP地址,python,stun,nat-traversal,Python,Stun,Nat Traversal,我正在尝试连接到NAT后面的Web服务器,该NAT在端口4000侦听 在我的Web服务器上,使用pystun()和命令: $pystun-p4000 我的返回值为 NAT类型:对称NAT 外部IP: 外部端口:1024 但当我试图从http://:1024访问它时,我无法连接,它总是停留在等待响应 这是使用STUN的正确方法吗?您的NAT只为您的STUN服务器打开了端口(穿孔),因为它在您运行“pystun”时看到了STUN的传出数据包。但是,当您试图从其他地方访问您的Web服务器时,NAT不

我正在尝试连接到NAT后面的Web服务器,该NAT在端口4000侦听

在我的Web服务器上,使用pystun()和命令:

$pystun-p4000

我的返回值为

NAT类型:对称NAT
外部IP:
外部端口:1024

但当我试图从http://:1024访问它时,我无法连接,它总是停留在等待响应

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

您的NAT只为您的STUN服务器打开了端口(穿孔),因为它在您运行“pystun”时看到了STUN的传出数据包。但是,当您试图从其他地方访问您的Web服务器时,NAT不知道您的数据包。所以NAT会悄悄地丢弃所有传入的数据包


请注意,尽管您在与STUN服务器通信时从NAT获得了一个外部端口,但由于它的原因,当4元组(src地址、src端口、dst sddress、dst端口)更改时,该端口将更改为其他随机端口。

我怀疑您的STUN调用只打开UDP端口,而不是TCP端口。