2

我正在使用 icanhazip.com 查找我的 IP 地址。当我使用浏览器访问该站点时,我的 ip 以我通常看到的方式输出:174.xx.xx.xx

当我使用 python 和 mechanize 从 icanhazip.com 获取我的 ip 时,我得到以下结果:2001:4800:7810:512:13b2:ccd5:ff04:c5f4

我确信它只是以我从未见过的方式表示 IP 地址。如何将其转换为我习惯的形式?

提前致谢。

In [9]: br.open("http://icanhazip.com/")
Out[9]: <response_seek_wrapper at 0x30bbe60 whose wrapped object = <closeable_response at 0x30bb0e0 whose fp = <socket._fileobject object at 0x2dd5ed0>>>

In [10]: br.open("http://icanhazip.com/").read()
Out[10]: '2001:4800:7810:512:13b2:ccd5:ff04:c5f4\n'

In [11]: print br.open("http://icanhazip.com/").read()
2001:4800:7810:512:13b2:ccd5:ff04:c5f4
4

3 回答 3

17

我是 icanhazip.com 的运营商,我经常收到这个问题。我有两个额外的 DNS 记录可以帮助您获得所需的结果。如果要强制进行 IPv4 查找,请使用ipv4.icanhazip.com。对于 IPv6,请使用ipv6.icanhazip.com

如果您只访问icanhazip.com,您看到的结果取决于您的计算机是如何配置为使用 IPv4 或 IPv6 网络的。大多数操作系统默认使用 IPv6(如果可用)。

于 2013-01-22T13:18:21.440 回答
1

看起来它是IPv6。有关详细信息,请参阅维基百科文章

如果尝试 urlopen,你会得到什么?

于 2013-01-21T19:53:08.877 回答
1

那肯定是IPv6,也没有直接转换成IPv4使用的xxx.xxx.xxx.xxx格式,它们是不同的地址。

于 2013-01-21T19:57:29.943 回答