ipv6地址比较 java_ipv6等效于环回地址

我的理解是.NET(在我的测试中为v3.5到4.5.2)将返回带有两个冒号的IPv6地址,如下所示 -

Dim host As String = Dns.GetHostName()

Dim ip As IPHostEntry = Dns.GetHostEntry(host)

Console.WriteLine(ip.AddressList(0).ToString())

Console.ReadKey()

在我的情况下输出fe80 :: 2d36:51be:16dc:257b%36,通过网关到ADSL调制解调器的无线连接 . 我对你的问题感兴趣的是我想要返回IPv4地址,我知道这是203.214.36.136(直到我重置调制解调器) . 我可以通过登录我的ISP或使用这样的代码看到 -

Using client = New WebClient()

Dim ret As String = client.DownloadString("http://icanhazip.com/").Trim()

Console.WriteLine(ret)

Console.ReadKey()

client.Dispose()

End Using

使用的网页将返回一个IPv4 IP地址(通过登录我的ADSL调制解调器和我的ISP网页,我可以验证它是否正确) . 我不确定页面上的哪些代码重定向以返回IP地址(我从一个SO解决方案中复制了这个也处理IP寻址) .

尝试使用.MaptoIPv4的代码(当然我使用VS2012或2013,使用.NET v4.5)我也使用了ipv4的空值(你的变量),但是从我上面的第一个代码块返回的字符串值,你的变量strIP .

它失败了 .

我还在努力确定应该如何使用这些方法 .

[编辑]实际上,我错误地认为主机AddressList中的第一个IP地址是我想要的 . 其中有3个,其中2个是IPv6,还有一个IPv4是调制解调器的网关 .

所以我没有为解决方案做出太多贡献 . 抱歉 .

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值