Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

Linux 建置 DNS 伺服器實戰 (二):客戶端配置、伺服器分類與 named 核心配置

編輯:關於伺服器

四、DNS 客戶端配置:/etc/resolv.conf

客戶端解析行為由 /etc/resolv.conf 控制,核心指令:

指令功能範例
domain指定本地域名,單標籤主機名將自動附加此域名domain example.com
search定義搜尋域名列表 (最多 6 個),按順序嘗試補全主機名search example.com sub.example.com
nameserver指定 DNS 伺服器 IP (非主機名);最多 3 個,按順序優先級遞減nameserver 192.168.1.1
nameserver 8.8.8.8

最佳實踐:至少配置兩台 DNS 伺服器 (主 + 備);優先使用內網 DNS 解析內部資源,外部解析轉發至上游。

五、DNS 伺服器三大角色分類

類型角色定位資料來源更新機制典型用途
主 DNS (Primary/Master)區域權威來源,唯一可寫入本地區域檔管理員手動修改區域檔企業內網主域、公網權威 DNS
從 DNS (Secondary/Slave)分擔查詢負載,提供高可用從主 DNS 區域傳輸 (AXFR/IXFR)自動定期同步 (由 SOA Refresh 控制)備用解析、異地災備、負載分流
快取 DNS (Caching/Recursive)遞迴查詢並快取結果,提升響應速度根域 → 頂級域 → 權威域 遞迴查詢依據各記錄 TTL 自動過期客戶端直連、ISP 區域解析、企業出口

類比:主/從 DNS 關係類似 Windows NT 域的 PDC/BDC;快取 DNS 類比瀏覽器快取,減少重複查詢開銷。

六、DNS 伺服器端核心配置:named 守護進程與 named.boot

1. named 守護進程

BIND 8 核心服務進程,啟動時讀取 /etc/named.boot (BIND 9 為 named.conf),載入所有區域配置。

2. named.boot 關鍵指令詳解

; 註解行以分號開頭
directory /var/named           ; 區域檔基礎路徑,可重複指定多個目錄
cache   .  named.ca            ; 根域提示檔 (必須),含 13 組根伺服器 IP,可從 ftp://rs.internic.net/domain/named.ca 獲取
primary example.com  example.com.zone   ; 本機為 example.com 主 DNS,區域檔為 example.com.zone
secondary example.net  192.168.1.1  example.net.bak ; 本機為 example.net 從 DNS,主 DNS 為 192.168.1.1,備份檔 example.net.bak
forwarders  202.96.128.68  202.96.134.133 ; 轉發器:本機無法解析時轉發至指定 DNS (如 ISP DNS)
slave                          ; 從模式:所有查詢強制轉發至 forwarders,不做遞迴查詢

指令深度解析

  • directory:後續所有相對路徑檔案的基準目錄,建議集中管理
  • cache:缺一不可,缺失會導致嚴重效能問題 (無法找到根伺服器)
  • primary:宣告本機為該域主 DNS,區域檔需包含完整 SOA、NS、A 等記錄
  • secondary:三參數:域名、主 DNS IP、本地備份檔名。啟動時嘗試從主 DNS 拉取區域資料
  • forwarders:轉發鏈路設計原則:
    • 快取 DNS → 指向主/從 DNS
    • 從 DNS → 指向主 DNS
    • 主 DNS → 指向 ISP/上游 DNS
  • slave:啟用後完全禁用遞迴查詢,所有查詢轉發至 forwarders,適用於防火牆後純轉發場景

配置驗證與除錯技巧

  1. 語法檢查:named -c /etc/named.boot -t /chroot/path -u named -g 前台運行觀察錯誤輸出
  2. 區域檔驗證:named-checkzone example.com /var/named/example.com.zone
  3. 查詢測試:dig @localhost example.com SOA、nslookup www.example.com 127.0.0.1
  4. 日誌分析:啟用 logging 通道 (BIND 8 需修改原始碼或使用 syslog),關注 lame server、zone transfer failed 等關鍵字
Copyright © Windows教程網 All Rights Reserved