【问题标题】:Connecting to STUN returned External IP address连接到 STUN 返回的外部 IP 地址
【发布时间】:2014-10-31 07:14:35
【问题描述】:

我正在尝试连接到位于 NAT 后面并在端口 4000 上侦听的网络服务器。

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

$ pystun -p 4000

我有一个返回值

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

但是当我尝试从 http://:1024 访问它时,我无法连接并且它总是卡在等待响应。

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

【问题讨论】:

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

标签: python stun nat-traversal


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2015-08-14
    • 1970-01-01
    • 2018-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-13
    • 2013-06-13
    相关资源
    最近更新 更多