Linux dig & nslookup DNS 診斷工具

當網站連不上,第一步通常是懷疑 DNS (Domain Name System) 有問題。 dignslookup 是最常用的 DNS 查詢工具。

nslookup:老牌簡單

Windows 也有這個指令,適合簡單查詢。

# 查詢 google.com 的 A 紀錄 (IP)
nslookup google.com

# 查詢 MX 紀錄 (郵件伺服器)
nslookup -type=mx google.com

# 指定用 8.8.8.8 (Google DNS) 查詢
nslookup google.com 8.8.8.8

dig:專業詳細 (推薦)

dig (Domain Information Groper) 提供更完整的 DNS 資訊,包括 TTL、傳播時間等,是維運人員的首選。

1. 查詢 A 紀錄 (預設)

dig google.com

重點看 ANSWER SECTION

;; ANSWER SECTION:
google.com.     186     IN      A       142.250.183.206

2. 指定 DNS Server (@)

想測試是不是你的 ISP DNS 壞了?指定 Google DNS (8.8.8.8) 問問看。

dig @8.8.8.8 google.com

3. 查詢其他類型的紀錄 (-t)

# 查詢 CNAME
dig -t CNAME www.example.com

# 查詢 TXT (常用於驗證網域所有權)
dig -t TXT google.com

# 查詢 NS (Name Server)
dig -t NS google.com

4. 追蹤解析路徑 (+trace)

顯示從 Root Server 一層一層往下問的過程,Debug DNS 設定錯誤時超好用。

dig google.com +trace

5. 精簡輸出 (+short)

寫 Script 時只想要 IP,不想看一大堆 Header?

dig google.com +short
# 輸出: 142.250.183.206