[英]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.