TcpListener&套接字连接失败

时间:2013-09-16 17:06:25

标签: c# sockets tcp tcplistener

我的朋友运行一个简单的C#控制台应用程序,它在端口8484上启动TcpListener。这就是它的完成方式:

public static void Listen()
{
    Listener = new TcpListener(IPAddress.Any, 8484);
    Listener.Start();
    Listener.BeginAcceptSocket(new AsyncCallback(EndAccept), null);
}

public static void EndAccept(IAsyncResult IAR)
{
    Console.WriteLine("Connection accepted on Port 8484.");
    Socket socket = Listener.EndAcceptSocket(IAR);
    Instance = new Client(socket);
    Listener.Stop();
    Listener = null;
}

我使用以下方式与他联系:

public void Connect()
{
    _socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
    try
    {
        _socket.Connect(IP, Port);

        Debug.WriteLine("Connected with server!");
    }
    catch (Exception ex)
    {
        Debug.WriteLine(TypeName + " [ERROR] Could not connect to server @ {0}:{1}: {2}", IP, Port, ex.Message);
    }
}

然而,出于某种原因 - 他不能接受这种联系,它表示没有回应。端口8484在他的计算机上100%打开。

为什么会这样?

2 个答案:

答案 0 :(得分:0)

使用telnet验证与远程服务器的连接。例如。运行命令“telnet ip_address port”。如果成功连接,则可以访问服务器。如果telnet无法连接,则可能由于防火墙问题而无法访问服务器。

答案 1 :(得分:0)

尝试禁用防火墙。 1


1 - 帮助用户进行聊天以测试防火墙问题,但尚未打开。这有问题