network Command

dig 和 nslookup 查询 DNS 命令

使用 dig 和 nslookup 查询 DNS 的常用命令,dig +short 快速拿到 A/CNAME 记录、dig @1.1.1.1 指定公共 DNS 对比结果、dig example.com MX/TXT 查特定类型、dig +trace 从根域名追踪权威 DNS,脚本排障优先用 dig。

dig +short 快速查解析结果,dig @指定 DNS 服务器,dig +trace 追踪完整解析链路。

适用环境Linux / DNS / Proxy / 网络链路
风险等级
最后验证2026-07-03
建议权限按命令权限要求执行

Scenario

什么时候用这组命令

这组命令适合在处理“dig 和 nslookup 查询 DNS 命令”时作为第一轮检查模板。使用时先替换占位符,再在目标机器或目标 namespace 中执行,避免在错误环境里得到误导结论。

Input

你需要先准备什么

  • 先判断失败发生在 DNS、TCP、TLS、HTTP、代理还是应用层。
  • 从客户端、服务端和中间代理所在机器分别测试,避免只验证了其中一段。
  • 记录域名、解析结果、目标 IP、端口、协议和代理配置。

Risk Notes

执行风险

  • 不要只凭浏览器提示判断网络根因,浏览器错误页往往只是结果而非原因。
  • 不要长期关闭证书校验或把代理写死到全局配置,这会在故障排查时引入额外变量。
  • 不要忽略 curl -v 中间阶段的细节,DNS 解析时间、TCP 握手延迟和 TLS 版本都可能隐藏问题。

Commands

命令详解

命令 1: 执行 dig

用于补充“dig 和 nslookup 查询 DNS 命令”的排查证据链。dig 的输出需要结合上下文其他命令交叉验证,不要单独依赖某一条结果下结论。

  • 确认命令运行位置正确。
  • 保留关键输出,方便和修复后对比。
命令 1: 执行 dig
dig +short example.com

命令 2: 执行 dig

用于补充“dig 和 nslookup 查询 DNS 命令”的排查证据链。dig 的输出需要结合上下文其他命令交叉验证,不要单独依赖某一条结果下结论。

  • 确认命令运行位置正确。
  • 保留关键输出,方便和修复后对比。
命令 2: 执行 dig
dig @1.1.1.1 example.com A

命令 3: 执行 dig

用于补充“dig 和 nslookup 查询 DNS 命令”的排查证据链。dig 的输出需要结合上下文其他命令交叉验证,不要单独依赖某一条结果下结论。

  • 确认命令运行位置正确。
  • 保留关键输出,方便和修复后对比。
命令 3: 执行 dig
dig example.com MX

命令 4: 执行 dig

用于补充“dig 和 nslookup 查询 DNS 命令”的排查证据链。dig 的输出需要结合上下文其他命令交叉验证,不要单独依赖某一条结果下结论。

  • 确认命令运行位置正确。
  • 保留关键输出,方便和修复后对比。
命令 4: 执行 dig
dig +trace example.com

命令 5: 执行 nslookup

用于补充“dig 和 nslookup 查询 DNS 命令”的排查证据链。nslookup 的输出需要结合上下文其他命令交叉验证,不要单独依赖某一条结果下结论。

  • 确认命令运行位置正确。
  • 保留关键输出,方便和修复后对比。
命令 5: 执行 nslookup
nslookup example.com

命令 6: 执行 dig

用于补充“dig 和 nslookup 查询 DNS 命令”的排查证据链。dig 的输出需要结合上下文其他命令交叉验证,不要单独依赖某一条结果下结论。

  • 确认命令运行位置正确。
  • 保留关键输出,方便和修复后对比。
命令 6: 执行 dig
dig example.com ANY

Workflow

建议执行顺序

按顺序执行,不要跳过确认类命令

先用只读命令确认状态,再执行会改变状态的命令。dig +short 快速查解析结果,dig @指定 DNS 服务器,dig +trace 追踪完整解析链路。

  • 先用 dig +short 快速查看解析结果。
  • 指定公共 DNS 服务器对比解析结果。
  • 查询特定记录类型如 A、MX、CNAME、TXT。
  • 用 dig +trace 追踪从根域名到权威的完整解析链路。
  • 需要交互式查询时使用 nslookup。
按顺序执行,不要跳过确认类命令
dig +short example.com
dig @1.1.1.1 example.com A
dig example.com MX

把命令输出变成结论

命令本身不是结论。每次执行后要回答:目标是否存在、状态是否异常、异常是否能解释用户看到的现象。

  • 记录关键字段,而不是整屏复制
  • 把正常路径和异常路径输出对比
  • 输出为空也要解释:是确实没有,还是权限/过滤条件不对
把命令输出变成结论
dig @1.1.1.1 example.com A
dig example.com MX
dig +trace example.com

执行前替换占位符并控制影响范围

包含 <service>、<pod>、<namespace>、<pid>、<container> 的命令必须先替换。涉及 reload、restart、KILL、vacuum、prune 的命令要确认影响范围。

  • 优先在测试环境或只读模式验证
  • 生产执行前保留回滚路径
  • 把最终可用命令写入工单或 runbook
执行前替换占位符并控制影响范围
nslookup example.com
dig example.com ANY

Verification

怎么判断命令有效

  • 命令已在正确机器、正确用户、正确 namespace 或正确仓库下执行。
  • 输出能支撑明确判断:正常、异常、权限不足、目标不存在或需要下一跳排查。
  • 对有副作用的命令,已确认执行窗口、影响范围和回滚方式。

Prevention

沉淀到日常流程

  • 为关键域名保留 DNS、TCP、HTTPS 三层探测,确保网络链路各层都可用。
  • 代理配置集中管理,明确 NO_PROXY 和 DNS 解析策略,避免内网域名被错误代理。
  • 证书、域名和网关变更后做外网验证,从实际用户视角确认变更生效。
  • 建立网络故障排查 SOP,按 DNS → TCP → TLS → HTTP → 代理逐层排查,减少盲猜。

常见问题

dig 和 nslookup 有什么区别?

dig 输出更详细、参数更丰富,适合脚本和排查;nslookup 交互式更友好,但功能相对有限。

Long-tail SEO

你可能正在搜索这些报错

下面这些错误原文、场景词和中英文搜索词,都是排查同类问题时常见的入口。

  • dig 查询 DNS
  • nslookup 域名解析
  • dig +short 查询
  • dns 解析排查命令
  • dig NS 记录查询
  • nslookup 指定 DNS 服务器