c#中通过socket的客户端服务器连接

时间:2015-12-15 14:16:18

标签: c# sockets

我正在尝试使用c#中的套接字建立客户端和服务器异步连接。实际上,我已经下载了clientserver的示例。我正在徘徊那条线:IPHostEntry ipHostInfo = Dns.GetHostEntry("host.contoso.com");如果IPhostEntry中的服务器和客户端,我想要检索什么?该行是否应该返回每个设备(服务器或客户端)的主机,IP和端口?

编辑:我在host.contoso.com的位置复制已运行的服务器的IP,我收到以下消息:使用了与请求的协议不兼容的地址

编辑:我实际上添加了IPHostEntry ipHostInfo = Dns.GetHostEntry("127.0.0.1:11000");,而且我没有收到这样的主机。

1 个答案:

答案 0 :(得分:5)

从示例中,您只在CLIENT代码上有一个ipHostInfo,服务器将没有这个,因为服务器将充当... ...服务器本身。示例中的代码:

IPHostEntry ipHostInfo = Dns.Resolve(Dns.GetHostName());
IPAddress ipAddress = ipHostInfo.AddressList[0];
IPEndPoint localEndPoint = new IPEndPoint(ipAddress, 11000);

此代码将建立服务器(将使用其运行的计算机上的当前IP并使用端口11000.

    IPHostEntry ipHostInfo = Dns.Resolve("host.contoso.com");
    IPAddress ipAddress = ipHostInfo.AddressList[0];
    IPEndPoint remoteEP = new IPEndPoint(ipAddress, port);

客户端的此代码将连接到该服务器(据推测,host.contoso.com将是您的特定情况下服务器的名称,很可能是您的计算机的IP或您运行的计算机的IP你的服务器。)