无法从另一台PC连接到我的C#服务器

时间:2018-10-05 10:55:56

标签: c# sockets network-programming

我有一个服务器和一个客户端应用程序,服务器没有异常,并且似乎可以正确监听,但是由于某些原因,客户端无法连接,因此我尝试使用本地网络和公共IP。

-使用本地网络的IP,仅当客户端应用程序在与服务器相同的计算机上运行时,我才能连接到它。

-使用公共​​IP,无法连接到服务器。

但是,在两种情况下,如果连接失败,它的行为总是相同的:等待大约5到10秒,然后抛出System.Net.Socket.SocketException。我先尝试使用端口1507,然后尝试使用端口80,但它并没有改变

服务器

IPAddress adress = IPAddress.Parse(MyIp);
TcpListener listener = new TcpListener(adress, 80);
listener.Start();
TcpClient Client = await listener.AcceptTcpClientAsync();

客户

TcpClient client = new TcpClient();
client.ConnectAsync(IPAddress.Parse(MyIp), 80).GetAwaiter().GetResult();

我不明白问题出在哪里,是我的代码引起的吗?如果不是,那是什么,我该如何解决?

1 个答案:

答案 0 :(得分:2)

您是否尝试过从特定端口上的外部网络进行Telnet? 如果您无法连接,则可能是路由器端口重定向或防火墙阻止了访问。