labulaka521
V2EX  ›  问与答

端口受限型 nat 和对称型 nat 无法穿透吗?

  •  
  •   labulaka521 · May 15, 2020 via Android · 2441 views
    This topic created in 2213 days ago, the information mentioned may be changed or developed.
    端口受限型 nat 一端如果需要接收数据,那么就必须先主动连接对方,然后才可以接收到对方的数据

    我觉得这样做可以连接
    通过一个中转服务器交换两段 ip 端口信息,然后对称性 nat 的一端定时给端口受限型 nat 一端发送 udp 数据,与此同时,端口受限型一端给对称性 nat 一端的 ip 的每个端口都发送数据,这时端口受限型 nat 如果给某个端口发送过数据,而这个端口刚好和对称型 nat 映射过来的端口一致,那么端口受限端 nat 就可以收到对称型 nat 一端发来的数据,就可以建立起连接。
    然后写了代码,把 10000-65534 每个端口发送了一边数据了,但是端口受限型 nat 一端还是收不到数据,而且每次发送间隔了若干毫秒。觉得有可能是 ip 不对,但是这个也没办法来验证。
    也有可能是 ip 变化了,但是这个不知道怎么改
    5 replies    2020-05-16 15:59:43 +08:00
    pursuer
        1
    pursuer  
       May 16, 2020 via Android
    你把端口都发一遍,那 nat 设备端口不就被你占满了,甚至会影响到其他用户的 udp 通信。nat 设备可能会限制 nat udp 端口数量的吧
    labulaka521
        2
    labulaka521  
    OP
       May 16, 2020 via Android
    @pursuer 感觉除了这个办法,没有其他的办法了😂😂
    labulaka521
        3
    labulaka521  
    OP
       May 16, 2020
    @pursuer 早上测试了下,竟然成功收到对称型端发来的数据了。😆
    wnpllrzodiac
        4
    wnpllrzodiac  
       May 16, 2020 via Android
    不行就 relay 大发
    labulaka521
        5
    labulaka521  
    OP
       May 16, 2020 via Android
    @wnpllrzodiac 目前已经成功了,不过用的时间有点久😩,这个 nat 映射后的端口没有规律
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2509 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 01:22 · PVG 09:22 · LAX 18:22 · JFK 21:22
    ♥ Do have faith in what you're doing.