这是我的服务器
在 Internet 上使用多个不同的端口检查工具时,我的服务器上有连接,表明我的端口是开放的
http://www.infobyip.com/tcpportchecker.php
http://www.yougetsignal.com/tools/open-ports/
static void Main(string[] args)
{
IPHostEntry ipHostInfo = Dns.Resolve(Dns.GetHostName());
IPAddress ipAddress = ipHostInfo.AddressList[0];
IPEndPoint localEndPoint = new IPEndPoint(IPAddress.Any, 10897);
Console.WriteLine("Server Start");
Socket listener = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
listener.Bind(localEndPoint);
listener.Listen(10);
while (true)
{
Console.WriteLine("Waiting for a connection...");
Socket handler = listener.Accept();
Console.WriteLine(handler.RemoteEndPoint);
handler.Shutdown(SocketShutdown.Both);
handler.Close();
}
}
这是我的客户代码
static void Main(string[] args)
{
IPEndPoint ip = new IPEndPoint(IPAddress.Parse("MY IP HERE"), 10897);
Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
server.Connect(ip);
}
每次我都会收到此错误,我使用 System.Net.Sockets.TcpClient 和套接字从客户端尝试了多次不同的尝试,每次连接被拒绝时,我的客户端似乎有问题,因为我的服务器从端口检查器接收连接
我已经阅读了许多其他套接字主题,但所有问题都与服务器而不是客户端有关,我不知道有什么问题可以帮助我吗?
编辑:我可以通过 localhost (127.0.0.1) 连接,但不能通过我的公共 IP