【发布时间】:2013-05-11 08:31:32
【问题描述】:
我想解析一个 IP 地址,但没有得到想要的结果。
我想检索像这样的真实网络名称:http://www.google.com
但我得到的是:mad01s14-in-f6.1e100.net
Public Function IP_To_HostName(ByVal IP As String) As String
Return system.net.Dns.GetHostEntry(IP).HostName.ToString
End Function
MsgBox(IP_To_HostName("173.194.41.6")) ' One of the Google addresses
我不太了解网络协议和这个,我在哪里失败了?
PS:注意我不想使用过时的方法!
UPDATE:
尝试将“www.google.com”作为字符串获取,但似乎 IP 地址没有任何别名...(别名长度为 0,我不明白为什么)
For Each a In System.Net.Dns.GetHostEntry("173.194.41.6").Aliases
MsgBox(a) ' Is empty
Next
【问题讨论】:
-
没有直接的方法。想想两个站点托管在同一台机器上的情况。
-
www.google.com 只是一组机器的一个别名,其中一台机器的 ip 为 173.194.44.16,你得到的是地址的真正指针,而不是别名。
-
谢谢大家,那我需要得到的是别名,对吧?那么如何获取别名呢?
标签: .net vb.net ip hostname system.net