簡體   English   中英

TcpListener和套接字連接失敗

[英]TcpListener & Socket connection fails

我的朋友運行一個簡單的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%打開。

為什么會這樣?

使用telnet驗證與遠程服務器的連接。 例如,運行命令“ telnet ip_address端口”。 如果連接成功,則可以訪問服務器。 如果telnet無法連接,則可能由於防火牆問題而導致您無法訪問服務器。

嘗試禁用防火牆。 1個


1-幫助用戶進行聊天以測試防火牆問題,但該防火牆尚未打開。 那有問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM