我无法连接到服务器(C#)

时间:2015-12-11 19:05:27

标签: c# networking tcp server client

我有C#编程语言的服务器和客户端脚本。当我在我的计算机和另一台计算机上创建服务器时,我正在尝试连接到服务器,它说:

  

远程主机强行关闭现有连接

当我将服务器的IP更改为0.0.0.0(IPAdress.Any)时会发生这种情况

  

连接尝试失败,因为连接方在一段时间后没有正确响应,或者由于连接主机无法响应而建立连接失败

当我将服务器的IP更改为10.0.0.6(在ipconfig-IPv4上)时,会发生这种情况。

我也关闭了防火墙,并在路由器的网站上打开了端口(11000)。

我在客户端输入服务器的公共IP地址(位于whatismyip.com上)。

该程序在本地网络上运行时非常有效(我的意思是当两台计算机具有相同的网络时)。

脚本:

有谁知道如何解决它?

1 个答案:

答案 0 :(得分:0)

首先,检查以确保您的服务器正在主动侦听您期望的TCP端口。如果是Windows机器,请从命令行尝试:

netstat -ano | findstr ***LISTENINGPORT***

在你的情况下,我猜你应该听11000.

如果是这样,在客户端,请告诉我您的代码确切的位置。我现在假设它是这样的:

sender.Connect(new IPEndPoint(IPAddress.Parse(ip), 11000));

..并在客户端计算机上运行WireShark捕获。

有很多快速启动指南 - 基本上这可以让您看到客户通过网络发出的请求,&查看服务器上是否建立了连接(如果有)。

如果您正在建立连接,那么它只是因为其他原因而被关闭,那么您就会遇到代码问题。如果不是,那么您有网络/配置问题。这可以帮助你取得进步。