DNS 查询

您可以把网站的域名(www.google.com)想象成一个人的“姓名”,而 IP 地址(250.191.78)则是这个人的“身份证号”,在互联网上,服务器之间通信是通过 IP 地址来进行的,而不是容易记的域名。

如何查询一个网站的ip
(图片来源网络,侵删)

DNS (Domain Name System,域名系统) 就像是一个互联网的“电话簿”或“通讯录”,当您在浏览器输入域名时,计算机会自动向 DNS 服务器查询,获取该域名对应的 IP 地址,然后才能与正确的服务器建立连接。

查询网站 IP 地址的过程,本质上就是执行一次 DNS 查询


使用命令行工具(最常用、最直接)

这是最专业、最快捷的方法,适用于所有主流操作系统(Windows, macOS, Linux)。

Windows 系统

使用 nslookupping 命令。

如何查询一个网站的ip
(图片来源网络,侵删)

步骤:

  1. Win + R 键,输入 cmd 并回车,打开“命令提示符”。

  2. 输入以下命令之一(推荐 nslookup,因为它专门用于 DNS 查询):

    • 使用 nslookup(推荐)

      如何查询一个网站的ip
      (图片来源网络,侵删)
      nslookup www.baidu.com

      输出示例:

      服务器:  unassigned-address
      Address:  192.168.1.1
      非权威应答:
      www.baidu.com  canonical name = www.a.shifen.com.
      Name:    www.a.shifen.com
      Address:  182.61.200.7
      Name:    www.a.shifen.com
      Address:  182.61.200.6

      在“Address:”后面显示的就是 IP 地址,注意,一个域名可能对应多个 IP 地址(为了负载均衡或冗余)。

    • 使用 ping

      ping www.github.com

      输出示例:

      Pinging github.com (140.82.121.3) with 32 bytes of data:
      Reply from 140.82.121.3: bytes=32 time=15ms TTL=118
      ...

      Pinging 后面的括号里直接显示了 IP 地址。

macOS / Linux 系统

使用 digping 命令。dig 功能更强大,是首选。

步骤:

  1. 打开“终端”(Terminal)。

  2. 输入以下命令:

    • 使用 dig(推荐)

      dig www.zhihu.com

      输出示例:

      ; <<>> DiG 9.11.3-1ubuntu1.17-Ubuntu <<>> www.zhihu.com
      ;; global options: +cmd
      ;; Got answer:
      ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34567
      ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
      ;; QUESTION SECTION:
      ;www.zhihu.com.                   IN      A
      ;; ANSWER SECTION:
      www.zhihu.com.            300     IN      CNAME   zhihu.com.
      zhihu.com.                 300     IN      A       104.16.106.77
      zhihu.com.                 300     IN      A       104.16.107.77

      ANSWER SECTION 部分,A 记录后面的就是 IP 地址。

    • 使用 ping

      ping www.apple.com

      输出示例:

      PING www.apple.com (17.253.144.10): 56 data bytes
      64 bytes from 17.253.144.10: icmp_seq=0 ttl=55 time=15.123 ms
      ...

      同样,在 PING 后面的括号里显示了 IP 地址。


使用在线查询工具(最简单、无需命令)

如果您不想使用命令行,或者是在手机上,可以使用在线网站来查询,这些网站实际上是在后台替您执行了 DNS 查询。

常用网站:

使用步骤:

  1. 打开上述任一网站。
  2. 在搜索框中输入您想查询的域名,www.taobao.com
  3. 点击查询按钮,页面会立即显示该域名对应的 IP 地址。

使用浏览器开发者工具(适合开发者)

对于网站开发者来说,这是一个非常有用的方法,可以在不离开浏览器的情况下查看网络请求的 IP。

步骤(以 Chrome 浏览器为例):

  1. 打开 Chrome 浏览器,访问您想查询的网站,www.bing.com
  2. 按下 F12 键,或者右键点击页面空白处,选择“检查”(Inspect)。
  3. 在打开的开发者工具中,切换到 “网络”(Network) 选项卡。
  4. 刷新页面(按 F5),浏览器会重新加载页面并记录所有网络请求。
  5. 在网络请求列表中,找到第一个通常是类型为 document 的请求(即主页面请求),点击它。
  6. 在下方的“标头”(Headers)信息中,找到“常规”(General)部分,您会看到 IP 地址: ... 或类似的字段,这里就显示了服务器连接的 IP 地址。

高级查询:使用 whois 查询 IP 的归属

如果您想知道某个 IP 地址属于哪个公司或组织(是阿里云、腾讯云还是 AWS),可以使用 whois 命令。

命令行使用:

# Windows (需要先安装 whois 工具,或者使用在线 whois)
whois 8.8.8.8
# macOS / Linux
whois 8.8.8.8

输出示例:

# ... (大量信息)
inetnum:        8.8.8.0 - 8.8.8.255
netname:        GOOGLE
country:        US
...

从输出中您可以清晰地看到这个 IP 地址段属于 GOOGLE(谷歌)。


方法 优点 缺点 适用场景
命令行 (nslookup/dig) 快速、准确、功能强大 需要记住基本命令 日常运维、网络诊断、开发者首选
在线查询工具 简单、直观、无需安装 需要联网,有隐私顾虑(极少) 快速查询、不熟悉命令行的用户
浏览器开发者工具 可视化、可结合页面分析 步骤稍多,仅限开发者 网站开发、调试、分析前端资源加载
whois 查询 IP 归属信息 不直接查询域名IP 了解 IP 地址的注册和管理机构

对于绝大多数用户来说,掌握 nslookup (Windows) 或 dig (macOS/Linux) 命令 就足以应对所有查询网站 IP 的需求了。