GetAddrInfo中没有这样的主机c#sockets

时间:2015-12-18 08:06:45

标签: c# sockets

我正在尝试使用c#中的套接字建立服务器 - 客户端连接。我试图首先从同一台机器建立连接,并在第二步从不同的计算机建立连接。我来自serverclient的帖子。我的问题是关于客户端连接。我正在尝试执行类似的操作:

 private static void StartClient()
 {
    try
    {
     //IPHostEntry ipHostInfo = Dns.GetHostEntry(Dns.GetHostName());
     IPHostEntry ipHostInfo = Dns.GetHostEntry("127.0.0.1:11000");
     IPAddress ipAddress = ipHostInfo.AddressList[0];
     IPEndPoint remoteEP = new IPEndPoint(ipAddress, port);

     // Create a TCP/IP socket.
     Socket client = new Socket(ipAddress.AddressFamily,
     SocketType.Stream, ProtocolType.Tcp);
     .......
   }

但是我收到了消息:

  

在System.NEt.Dns.GetAddrInfo

中不知道这样的主机

我的问题是什么?端口11000与我在服务器上使用的相同。当我在本地运行时应该添加什么作为hostEntry?当我从其他机器运行客户端时该怎么办?

编辑:当我将行Dns.GetHostEntry("127.0.0.1:11000");更改为Dns.GetHostEntry("127.0.0.1");Dns.GetHostEntry("serverIp");时,我收到了相同的消息。

EDIT2:当我给机器的ip时,一切正常。是否可以从服务器向clinets发送消息?

1 个答案:

答案 0 :(得分:2)

  

{{1}}

查询Dns.GetHostEntry时不得添加端口:

  

hostNameOrAddress

     

输入:System.String

     

要解析的主机名或IP地址。