Non*_*one 1 python sockets dns network-programming dnspython
我使用dnspython查询 DNS 服务器以将域名解析为其 IP。
当我尝试解析“google.co.uk”时,我只得到一个 IP。然而,使用另一个解析器工具我得到另一个IP。两个IP都是正确的,我通过将IP放在浏览器中来测试它们,都打开“google.co.uk”。
显然,为我正在测试的域名分配了多个IP。有什么方法可以在 dnspython 中使用来检索给定域名的所有 IP 吗?
这是我的简单脚本:
import dns.resolver
def resolve(domain):
resolveList = []
resolver = dns.resolver.Resolver(); #create a new instance named Resolver
answer = resolver.query(domain,"A");
y=0
for rData in answer:
resolveList.append(rData)
++y
return resolveList
domainName = "google.co.uk"
queryResult = resolve(domainName);
for result in queryResult:
print queryResult[0]
Run Code Online (Sandbox Code Playgroud)
在一般情况下,不会,无法知道您何时已详尽枚举了特定主机名正在使用的所有 IP 地址。谷歌就是一个很好的例子;根据您在世界上的位置及其当前负载,它们将返回部分(但不是全部)地址,用于负载平衡和类似目的。