我如何获取某个域名(例如 www.google.com)的所有 IP?
当然,nslookup 和 host 命令会给我一个域的 IP。但如果我想要该域的所有(或至少不止一两个)IP 列表,我该怎么办?
答案1
尝试执行dig google.com a
。对我来说,它显示了 6 个 IPv4 地址的一致列表。
答案2
您可以使用实际的 whois 命令,该命令适用于任何 IP 地址。whois 命令还将返回诸如网络位数(17)之类的信息。由此,您可以确定实际的 IP 地址数量。例如,如果我 whois IP 地址 209.85.135.147,我将获得:
NetRange: 209.85.128.0 - 209.85.255.255
CIDR: 209.85.128.0/17
NetName: GOOGLE
NetHandle: NET-209-85-128-0-1
Parent: NET-209-0-0-0-0
NetType: Direct Allocation
/17 表示子类 B 网络,可能的地址数量为:
2^(32-17) - 2
或者
2^15 - 2
或者
32,768 - 2
或者
32766 个可能的 IP 地址。-2 是因为第一个地址(网络地址 209.85.128.0)和最后一个地址(即广播地址(209.85.255.255))不能用于指向主机。
当然,这是针对 IPv4 地址的。
当您使用域名(例如 google.com)时,whois 将返回不同的信息。最后,请记住,主机名返回的 IP 可能取决于您实际所在的国家/地区。
当从加拿大渥太华进行查询时,主机 google.com 将返回单个 IP 地址。
$ host google.com
google.com has address 173.194.32.104
google.com mail is handled by 100 google.com.s9a1.psmtp.com.
google.com mail is handled by 200 google.com.s9a2.psmtp.com.
google.com mail is handled by 300 google.com.s9b1.psmtp.com.
google.com mail is handled by 400 google.com.s9b2.psmtp.com.
$
答案3
你可以给罗布特克斯一张照片,非常全面。