IP 地理定位與 DNS 查詢指南:從網域名稱到伺服器位置的完整排查路徑
Web/SEO趙婉清
IP 地理定位原理
IP 定位不是 GPS——它基於 IP 位址分配資料庫,精度取決於資料庫品質。
| 精度級別 | 範圍 | 資料來源 |
|---|---|---|
| 國家級 | 國家 | WHOIS 分配記錄 |
| 城市級 | 城市/地區 | ISP 報告 + 骨幹網路路由 |
| 區縣級 | 10-50km | 商業資料庫(MaxMind) |
| 街道級 | 1-5km | WiFi/行動網路定位輔助 |
IP 定位無法精確定位到具體地址,只能到大致區域。
使用工具庫查詢 IP 資訊
DNS 查詢
- 開啟 DNS 查詢工具
- 輸入網域(如
example.com) - 選擇記錄類型(A/AAAA/CNAME/MX/TXT/NS)
- 點擊查詢,查看結果
Whois 查詢
- 開啟 Whois 查詢工具
- 輸入網域
- 查看註冊資訊(註冊商、註冊日期、到期日期、註冊人)
DNS 記錄類型詳解
| 類型 | 名稱 | 用途 | 範例 |
|---|---|---|---|
| A | 位址記錄 | 網域 → IPv4 | example.com → 93.184.216.34 |
| AAAA | IPv6 位址 | 網域 → IPv6 | example.com → 2606:2800:220:1:... |
| CNAME | 別名記錄 | 網域 → 另一個網域 | www.example.com → example.com |
| MX | 郵件交換 | 郵件伺服器 | example.com → mail.example.com (優先順序10) |
| TXT | 文字記錄 | SPF/DKIM/驗證 | "v=spf1 include:_spf.google.com" |
| NS | 名稱伺服器 | 網域名稱伺服器 | example.com → ns1.example.com |
| SOA | 起始授權 | 區域管理資訊 | 主要NS + 管理員信箱 + 序號 |
| SRV | 服務記錄 | 服務發現 | _http._tcp.example.com → target:port |
| CAA | 憑證授權 | 限制憑證簽發 | 0 issue "letsencrypt.org" |
常見 DNS 查詢場景
查網站 IP
# 命令列
dig example.com A
nslookup example.com
# 結果
example.com. 3600 IN A 93.184.216.34
查郵件伺服器
dig example.com MX
# 結果
example.com. 3600 IN MX 10 mail.example.com.
example.com. 3600 IN MX 20 mail2.example.com.
查 SPF 記錄(防垃圾郵件)
dig example.com TXT
# 結果
example.com. 3600 IN TXT "v=spf1 include:_spf.google.com ~all"
DNS 解析流程
使用者輸入 example.com
↓
1. 瀏覽器 DNS 快取 → 命中?返回
↓
2. 作業系統 DNS 快取 → 命中?返回
↓
3. 路由器 DNS 快取 → 命中?返回
↓
4. ISP 遞迴解析器 → 命中?返回
↓
5. 根網域伺服器(.)→ 返回 .com NS
↓
6. .com 頂級網域伺服器 → 返回 example.com NS
↓
7. example.com 權威伺服器 → 返回 A 記錄
↓
結果:93.184.216.34
DNS 快取時間(TTL)
dig example.com
# ANSWER SECTION:
example.com. 3600 IN A 93.184.216.34
# ↑ TTL(秒)= 1小時
| TTL 值 | 適用場景 |
|---|---|
| 300(5分鐘) | 頻繁變更(CDN、藍綠部署) |
| 3600(1小時) | 一般網站 |
| 86400(1天) | 穩定服務(郵件、NS) |
Whois 資訊解讀
查詢結果關鍵欄位
Domain Name: EXAMPLE.COM
Registrar: Google Domains LLC
Registrar URL: https://domains.google
Creation Date: 1995-08-14
Expiration Date: 2028-08-13
Name Server: NS1.GOOGLE.COM
Name Server: NS2.GOOGLE.COM
Registrant Organization: Example Inc.
DNSSEC: unsigned
| 欄位 | 含義 | 用途 |
|---|---|---|
| Registrar | 註冊商 | 網域管理入口 |
| Creation Date | 註冊日期 | 判斷網域年齡 |
| Expiration Date | 到期日期 | 防止網域過期 |
| Name Server | DNS 伺服器 | 網域解析入口 |
| Registrant | 註冊人 | 歸屬資訊(可能隱私保護) |
| DNSSEC | DNS 安全擴充 | DNS 回應驗證 |
隱私保護
# 未開啟隱私保護
Registrant Name: John Doe
Registrant Email: john@example.com
# 開啟隱私保護後
Registrant Name: REDACTED FOR PRIVACY
Registrant Email: Please contact registrar
網路排查實戰
場景一:網站打不開
1. DNS 查詢 → 網域能否解析?
❌ 無法解析 → DNS 設定錯誤或網域過期
✅ 能解析 → 繼續
2. Ping IP → 伺服器是否可達?
❌ 逾時 → 伺服器當機或防火牆
✅ 可達 → 繼續
3. curl -I → HTTP 回應碼?
301/302 → 重新導向問題
403 → 權限問題
500 → 伺服器錯誤
200 → 可能是前端問題
場景二:郵件發送失敗
1. 查 MX 記錄 → 郵件伺服器設定是否正確?
2. 查 SPF 記錄 → 發送伺服器是否在 SPF 白名單?
3. 查 DKIM 記錄 → 簽章是否正確?
4. 查 DMARC 記錄 → 郵件策略是否正確?
# 一鍵查郵件相關記錄
dig example.com MX
dig example.com TXT # SPF + DKIM + DMARC 都在 TXT 中
場景三:CDN 設定驗證
1. 查 CNAME → 網域是否指向 CDN?
www.example.com → cdn.example.com.cdn77.org
2. 查 A 記錄 → CDN 邊緣節點 IP
3. 多地 DNS 查詢 → 驗證 CDN 就近解析
使用 JavaScript 查詢 DNS
瀏覽器端(DoH)
// DNS over HTTPS(Cloudflare)
async function dnsLookup(domain, type = 'A') {
const url = `https://cloudflare-dns.com/dns-query?name=${domain}&type=${type}`;
const response = await fetch(url, {
headers: { 'Accept': 'application/dns-json' },
});
const data = await response.json();
return data.Answer;
}
// 使用
const records = await dnsLookup('example.com', 'A');
// [{ name: "example.com", type: 1, TTL: 3600, data: "93.184.216.34" }]
Node.js 端
import { resolve } from 'node:dns/promises';
// 查 A 記錄
const addresses = await resolve('example.com', 'A');
// ["93.184.216.34"]
// 查 MX 記錄
const mxRecords = await resolve('example.com', 'MX');
// [{ exchange: "mail.example.com", priority: 10 }]
// 查所有記錄
const anyRecords = await resolve('example.com', 'ANY');
常見問題
DNS 修改後多久生效?
取決於 TTL。如果舊 TTL 是 3600 秒,最壞情況需要 1 小時。修改 DNS 前先降低 TTL 到 300 秒,等舊 TTL 過期後再修改。
為什麼不同地方 DNS 結果不同?
CDN 和 Anycast 會根據使用者位置返回不同的 IP。這是正常行為,不是 DNS 問題。
DNSSEC 有什麼用?
DNSSEC 用數位簽章驗證 DNS 回應的真實性,防止 DNS 劫持攻擊。如果 DNSSEC 驗證失敗,瀏覽器會拒絕連線。
總結
IP 定位和 DNS 查詢是網路排查的基本功。掌握 DNS 記錄類型、解析流程和 Whois 資訊解讀,就能快速定位網站問題。工具庫提供 DNS 查詢 和 Whois 查詢 兩個線上工具,無需安裝命令列工具,瀏覽器中即可完成網路排查。
#IP定位#DNS查询#Whois#网络工具#教程