我正在使用Python套接字做一些简单的实验,其中我有一个主机名,它用两个IP地址解析,但是当我使用时,
socket.gethostbyname('demo.sample.com')
我只获得一个 IP 地址。为什么会这样显示?有没有其他方法可以获取多个 IP 地址?
EDIT - 1
我明白了,伙计们,而不是gethostbyname('demo.sample.com')
I tried gethostbyname_ex('demo.sample.com')
它给出了我预期的结果。
From 文档 https://docs.python.org/3/library/socket.html#socket.gethostbyname可见:
- gethostbyname 仅返回单个 IPv4 地址。并引用:
有关更完整的接口,请参阅 gethostbyname_ex()。
- gethostbyname_ex 将返回多个 IPv4 地址,但请检查用法。并引用:
gethostbyname_ex() 不支持 IPv6 名称解析,应使用 getaddrinfo() 来支持 IPv4/v6 双堆栈。
- getaddrinfo 将返回所有 IPv4 和 IPv6 地址,但请检查用法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)