【发布时间】:2020-08-14 10:41:33
【问题描述】:
是否可以在 c# 中通过公共 IP 地址(或在我的 LAN 之外)使用 TCPclient 和 TCPlistener?如果 NAT 为每个 LAN 通信随机分配端口号,是否有任何方法可以知道其 NAT 路由器将分配给 TCPlistener 的端口号以使 TCPclient 能够与其通信。 附言如果不可能,是否有任何其他工具/技术可以在不重新配置路由器(将所有消息转发到 TCPlistener)的情况下在 LAN 外进行通信?
【问题讨论】:
-
总而言之,答案是:NO!。
-
Nat 遍历是可能的。没有看到它用 TCP 做了很多。一些资源-stackoverflow.com/questions/2443471/…github.com/jasonpang/tcp-holepunching
标签: c# tcp tcpclient lan tcplistener