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

标签 .net sockets hosts-file

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

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

最佳答案

使用Dns.GetHostAddresses(host);

实际代码片段如下:

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

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

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

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

关于.NET Socket.Connect 将主机名解析为 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4134565/

相关文章:

python - 在python套接字编程中建立连接后如何获取客户端的IP地址?

c - UDP 单播 : two processes listening on same udp port; only one receiving packets

search-engine - 如何找到Google的IP地址?

c# - 避免在 DbParameter.Value 中装箱?

c# - Unity Application Block,如何将参数传递给注入(inject)工厂?

Android BluetoothSocket OutputStream 无限写入 block

apache - 添加Apache VirtualHost,localhost的DocumentRoot修改为VirtualHost的DocumentRoot

objective-c - 如何覆盖 MacOS 上特权位置的只读文件?

c# - 如何使用 IronPython 中的包调用 Python 脚本?

c# - 如何使用 XUnit 测试方法参数类型交错数组