Python 为什么IPv6不像IPv4那样显示客户端IP名称?

Python 为什么IPv6不像IPv4那样显示客户端IP名称?,python,ipv6,Python,Ipv6,你好,抱歉打扰你们了。但是我在杂志上读到了一些关于将代码移植到IPV6的内容,所以我试着改变这个代码socket.AF_INET6,socket.SOCK_流 在python中,它可以工作,但问题是服务器不显示客户端ip 我希望它能像这样显示出来。已从'127.0.0.1',59815获取连接 但对于它来说,它把一切都搞砸了,给我这个从“::1',59815,0,0, 如果我问你,客户端IP在吗?。最后两个零是什么意思?。我应该如何将代码移植到IPv6。?谢谢我在用蟒蛇 因此,如果我执行此soc

你好,抱歉打扰你们了。但是我在杂志上读到了一些关于将代码移植到IPV6的内容,所以我试着改变这个代码socket.AF_INET6,socket.SOCK_流

在python中,它可以工作,但问题是服务器不显示客户端ip

我希望它能像这样显示出来。已从'127.0.0.1',59815获取连接

但对于它来说,它把一切都搞砸了,给我这个从“::1',59815,0,0, 如果我问你,客户端IP在吗?。最后两个零是什么意思?。我应该如何将代码移植到IPv6。?谢谢我在用蟒蛇

因此,如果我执行此socket.socketsocket.AF_INET6,socket.SOCK_流,我会将代码放入IPV6,o是否还有其他需要执行的操作谢谢::1是本地主机的IPV6地址,就像127.0.0.1是本地主机的IPv4地址一样。因此,您将看到客户端的IPv6地址

套接字地址中的字段记录在中。它们是:

主办 港口城市 flowinfo 作用域id Flowinfo和作用域id是IPv6的新特性。Flowinfo包含在中指定的流标签。如果您不知道如何使用它,可以安全地将其保留在0。当地址在多个作用域中有效时,使用作用域id。例如,IPv6在每个IPv6接口上都有效,但不可能将它们从一个接口路由到另一个接口。因此,如果要与链接本地地址通信,必须指定要使用的接口。作用域id是接口的编号

在将代码移植到IPv6时,您必须考虑以下几点。您已经更改了套接字处理。您还应该了解名称解析和使用同时支持IPv4和IPv6的功能,即不使用而是使用等,并且在存储IP地址时不要忘记分配足够的空间。IPv6地址比IPv4地址占用更多空间

PS:该库提供了非常有用的处理IP地址的类。

::1是本地主机IPv6 IP地址。