以下是一个使用 Python 的 socket
模块根据域名获取 IP(包括 IPv6)地址的示例代码:
python
import socket
def get_ip_by_domain(domain):
try:
# 同时获取 IPv4 和 IPv6 地址
addrs = socket.getaddrinfo(domain, None)
ips = [addr[4][0] for addr in addrs]
return ips
except socket.gaierror:
return "无法获取该域名的 IP 地址"
domain = "example.com" # 将此处的域名替换为您想要查询的域名
ip_addresses = get_ip_by_domain(domain)
print(f"域名 {domain} 对应的 IP 地址是:{ip_addresses}")
在上述代码中,socket.getaddrinfo
函数会返回域名的所有可用地址信息(包括 IPv4 和 IPv6)。然后通过列表推导式提取出每个地址信息中的 IP 地址。
例如,如果查询 www.google.com
,可能会得到类似 ['142.250.184.110', '2607:f8b0:4009:80b::200e']
这样的结果,分别是 IPv4 和 IPv6 地址。