我有以下代码:
Dim ipAdd As IPAddress = Dns.GetHostEntry(strHostname).AddressList(0)
Dim strIP As String = ipAdd.ToString()
当我转换为字符串而不是像 192.168.1.0 或类似的 IPv4 地址时,我得到了 IPv6 版本:fd80::5dbe:5d89:e51b:d313 地址。
有没有办法从 IPAddress 类型返回 IPv4 地址?
谢谢
最佳答案
您可以获取第一个 IPv4 地址,而不是无条件地获取地址列表的第一个元素:
var address = Dns.GetHostEntry(strHostname)
.AddressList
.First(ip => ip.AddressFamily == AddressFamily.InterNetwork);
关于c# - .Net IP 地址 IPv4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2048132/