Domain IP Lookup

两种截然不同的使用时刻

dig / nslookup

完整协议细节,可脚本化,可离线使用

网页版工具

无需配置,支持批量查询,可分享

实用指南

dig、nslookup 与网页版 DNS 工具:各自的适用场景

3 分钟阅读

dig 和 nslookup 之所以成为命令行里的常用工具,是有原因的:它们精确、可脚本化,而且几乎所有带终端的系统上都能使用。网页版查询工具并不打算取代它们,只是覆盖那些命令行不太适合手头任务的场景。

终端工具更有优势的地方

  • 直接查询某台指定的非默认 DNS 服务器:dig @1.1.1.1 example.com 一条命令即可,无需任何配置界面。
  • 查看完整的响应,包括标志位、TTL 以及返回记录的确切结构,在您需要调试 DNS 本身、而不只是想要一个答案时非常有用。
  • 把检查脚本化,嵌入已经存在于 shell 脚本或 CI 流水线中的自动化流程。
  • 完全脱离浏览器,在您已经通过 SSH 登录的服务器上离线工作。

网页工具的价值所在

  • 用手机或任何手边没有终端的设备快速查一下。
  • 一次解析规模很大的域名列表,并带有进度视图和规范的导出功能,而不必手动把一连串 dig 调用的输出写进文本文件。
  • 给非技术背景的同事发一个链接,而不是手把手教他们安装并使用命令行工具。
  • 安排定时的重复检查,之后在仪表盘中查看结果,而不必自己维护一个 cron 任务和存放输出的地方。
对比维度dig / nslookup网页版工具
所需准备一个终端,大多数系统已预装无需准备,只需浏览器
查询指定服务器一个参数即可(@1.1.1.1)通常固定使用该工具自带的解析器
批量解析需要自己编写循环脚本内置,带进度和导出
完整协议细节(标志位、TTL)有,体现在原始响应中通常被抽象隐藏
能否分享给非技术同事不太方便一个链接即可

实际上,大多数用网页工具做快速单次查询的人,在需要深入调试 DNS 时仍会保留 dig。两者并非竞争关系,而是适用于从“我只想快速得到一个答案”到“我需要看清协议究竟在做什么”这条光谱上的不同位置。

即使很少使用其余功能,也值得了解的两个 dig 参数

  • dig +short 会去掉冗长的头部和标志位输出,只打印答案,非常适合通过管道传给脚本,而不必解析 dig 默认的、面向人阅读的输出格式。
  • dig +trace 会手动重走完整的解析链,显示从根服务器一直到权威应答的每一跳。当问题出在比最终记录更靠前的环节时,这是找出究竟哪一步出了问题的最快办法。

nslookup 的交互模式,常被忽视

大多数人只把 nslookup 当作单条命令来运行,用完就走。但如果不带任何参数直接输入 nslookup,就会进入交互式提示符,在其中只需指定一次服务器(server 1.1.1.1),之后的多次查询都会沿用,无需每次重复输入。当您要针对同一个非默认解析器连续检查几条相关记录时,这非常方便。相比 dig 以参数驱动的方式,这个功能较小、讨论也较少,但如果您出于习惯或平台默认配置而专门使用 nslookup(而不是 dig),值得知道它的存在。

需要查看某个域名的公网 DNS 地址?使用 Domain IP Lookup 工具。

本主题的免费工具