.NET Socket.Connect将主机名解析为IP地址

时间:2010-11-09 14:12:10

标签: .net sockets hosts-file

我正在查看某些代码中的.NET套接字连接函数。 http://msdn.microsoft.com/en-us/library/d7ew360f.aspx此函数接受一个字符串作为表示远程主机名称的参数。

我的问题是,套接字如何获取此远程主机的IP地址?它是执行DNS查找还是可以转到Windows主机文件? (Windows XP)

1 个答案:

答案 0 :(得分:1)

使用Dns.GetHostAddresses(host);

实际代码的片段如下:

public void Connect(string host, int port){
    // Checking parameters etc, removed.

     IPAddress[] addresses = Dns.GetHostAddresses(host);
     Connect(addresses,port);
}

因此,带有主机名的构造函数只需使用IP地址调用构造函数。

有关Dns.GetHostAddresses()的文档,请参阅http://msdn.microsoft.com/en-us/library/system.net.dns.gethostaddresses.aspx