TcpListener.Start() 上的 SocketException

cub*_*ian 0 c# sockets networking socketexception

我正在尝试制作一个基本的客户端/服务器程序,但是当我启动 TcpListener 时,它给了我SocketException:The requested address is not valid in its context.
实际上有一个返回我的公共 IP 的方法,并且它与 ipconfig 结果匹配,因此下面的 IP 地址字符串不能是问题。当然,出于安全原因,下面显示的 IP 不是我的真实 IP。我打开了下面的端口供一般使用。
无论如何,Not valid in context很模糊,所以我不确定这意味着什么。

这是我的代码(对于 TcpListener):

ServerIn = new TcpListener(IpAddress.Parse("100.100.100.100"), 8000);
ServerIn.Start();
Run Code Online (Sandbox Code Playgroud)

提前致谢。

Nib*_*Pig 5

TcpListener 只能绑定到运行它的计算机的本地 IP 地址。所以你指定的IP不是本地机器的IP。您的公共 IP 与本地计算机的 IP 不同,尤其是当您使用某种 NAT 时。

如果我没记错的话,通常只使用 IPAddress.Any 作为您的 IP 来初始化侦听器。