本書將告訴你精通 Internet 基礎設施--分散式主機資料庫--需要知道的每一件事︰透過此資料庫,你可以將名稱轉換成位址、為電子郵件設定投遞路徑,甚至是列出電話號碼(新制定的 ENUM 標準)。閱讀本書你將可獲得這個關鍵服務的第一手資訊。
本書第五版內容涵蓋 BIND 9.3.2(這是本書撰寫當時 BIND 9 系列最新的版本)以及BIND 8.4.7。BIND 9.3.2 除了對 DNS 的安全防護做了改進,而且還支援 IPv6 以及重要的新功能,例如:國際化網域名稱、ENUM(電話號碼對映)以及 SPF(送信者政策框架)。
不論你是個每日與 DNS 為伍的管理者,或是個想更瞭解 Internet 運作原理的使用者,都將發現本書是你必備的讀物。
本書探討的主題包括:
* DNS 的用途、運作原理以及使用時機
* 如何在 Internet 的命名空間中找到一席之地
* 架設名稱伺服器
* 使用 MX 紀錄為電子郵件設定投遞路徑
* DNS 用戶端的設定
* 子網域的劃分與管理
* DNS 伺服器的保全措施:限制誰可以查詢名稱伺服器、避免未授權的轄區傳送、防治偽裝的名稱伺服器,等等
* DNS Security Extension(DNSSEC)以及 Transaction Signature(TSIG)
* 負載均攤:同一個名稱對映至多部伺服器
* 動態更新、非同步轄區資料變更通知、遞增式轄區資料傳送
* 排除問題:使用 nslookup 與 dig、解讀除錯訊息、常見的問題徵兆
* DNS 程式設計:使用解析器程式庫以及 Perl 的 Net::DNS 模組
作者簡介:
Cricket Liu 是 hp.com(Internet 上最大的網域之一)的前任總監。目前是 Achitecture for Infoblox 的副總裁。
Paul Albitz 是惠普公司的軟體工程師,他曾經將 BIND 移植到 HP-UX。
目錄
序
第一章 背景介紹
1.1 Internet 簡史
1.2 Internet 與 internet 的差異
1.3 DNS 概述
1.4 BIND 的沿革
1.5 我一定要使用 DNS 嗎?
第二章 DNS 的運作細節
2.1 網域命名空間
2.2 Internet 的網域命名空間
2.3 委派
2.4 名稱伺服器與轄區
2.5 解析器
2.6 解析
2.7 快取
第三章 從何處著手?
3.1 取得 BIND
3.2 選用網域名稱
第四章 設置 BIND 名稱伺服器
4.1 我們的轄區
4.2 設置轄區資料
4.3 設定 BIND 的組態檔
4.4 簡寫
4.5 主機名稱檢查
4.6 工具程式
4.7 設置 primary 名稱伺服器
4.8 設置 slave 名稱伺服器
4.9 增加更多轄區
4.10 接下來呢?
第五章 DNS 與電子郵件
5.1 MX 紀錄
5.2 movie.edu 的郵件伺服器
5.3 郵件交換器又是什麼?
5.4 MX 演算法
5.5 DNS 與電子郵件驗證
第六章 設定主機
6.1 解析器
6.2 解析器的組態
6.3 解析器的設定範例
6.4 降低使用者的不便與衝擊
6.5 其他組態檔
6.6 Windows XP 的解析器
第七章 BIND 的維護與管理
7.1 控制名稱伺服器
7.2 更新轄區資料檔
7.3 整理你的檔案
7.4 變更系統檔案的位置
7.5 登錄機制
7.6 預防維護是順利運作的保證
第八章 當網域成長時
8.1 多少部名稱伺服器才夠?
8.2 加入更多的名稱伺服器
8.3 註冊名稱伺服器
8.4 改變 TTL
8.5 準備災難的到來
8.6 如何應付災難
第九章 子網域的分割與管理
9.1 何時應該成為父網域
9.2 需要幾個子網域?
9.3 如何為子網域命名
9.4 如何成為父網域:建立子網域
9.5 in-addr.arpa 網域的子網域
9.6 做好 parenting 的工作
9.7 管理子網域的遷移作業
9.8 父網域的生命週期
第十章 進階功能
10.1 位址比對清單以及 ACL
10.2 轄區資料動態更新(DNS Dynamic Update)
10.3 轄區資料變更通知(DNS NOTIFY)
10.4 遞增式轄區資料傳送(IXFR)
10.5 轉送機制(forwarding)
10.6 視界
10.7 以循環調度法來分散負載
10.8 名稱伺服器的位址排序功能
10.9 優先選擇位於特定網路的名稱伺服器
10.10 非遞迴名稱伺服器
10.11 迴避偽裝的名稱伺服器
10.12 系統調校
10.13 相容性
10.14 IPv6 定址入門
第十一章 安全防護
11.1 TSIG
11.2 保護名稱伺服器的安全
11.3 DNS 和 Internet 防火牆
11.4 DNS 安全防護功能的擴充
第十二章 nslookup 與 dig
12.1 nslookup 是個好的除錯工具嗎?
12.2 交談模式與非交談模式
12.3 選項設定
12.4 避免使用搜尋清單
12.5 日常的應用
12.6 特殊的應用
12.7 排除 nslookup 所遇到的問題
12.8 讓網路更容易使用
12.9 使用 dig
第十三章 解讀 BIND 的除錯輸出
13.1 除錯層級
13.2 開啟除錯功能
13.3 解讀除錯輸出
13.4 解析器的搜尋法則以及負面資料快取(BIND 8)
13.5 解析器的搜尋法則以及負面資料快取(BIND 9)
13.6 工具程式
第十四章 排除 DNS 與 BIND 的問題
14.1 問題的元兇是 NIS 嗎?
14.2 排除問題的工具和技巧
14.3 列出可能發生的問題
14.4 版本升級之後所造成的問題
14.5 互通性以及版本的問題
14.6 TSIG 錯誤
14.7 問題的徵候
第十五章 DNS 程式設計
15.1 以 nslookup 來撰寫 shell 命令稿
15.2 以解析器程式庫常式來撰寫 C 程式
15.3 以 Net::DNS 模組撰寫 Perl 程式
第十六章 架構
16.1 使用外部權威名稱伺服器的 DNS 基礎設施
16.2 轉送基礎設施
16.3 內部的 DNS 基礎設施
16.4 操作
16.5 跟上 DNS 和 BIND 的發展
第十七章 雜項
17.1 使用 CNAME 紀錄
17.2 通配符
17.3 MX 紀錄的限制
17.4 撥接式線路
17.5 網路名稱和編號
17.6 額外的資源紀錄
17.7 ENUM
17.8 國際化網域名稱
17.9 DNS 與 WINS
17.10 DNS、Windows 與 Active Directory
附錄 A DNS 訊息的格式與資源紀錄
附錄 B BIND 各版本相容性對照表
附錄 C 如何在 Linux 機器上編譯與安裝 BIND 軟體
附錄 D 頂層網域
附錄 E BIND 名稱伺服器及解析器的組態
索引
序
第一章 背景介紹
1.1 Internet 簡史
1.2 Internet 與 internet 的差異
1.3 DNS 概述
1.4 BIND 的沿革
1.5 我一定要使用 DNS 嗎?
第二章 DNS 的運作細節
2.1 網域命名空間
2.2 Internet 的網域命名空間
2.3 委派
2.4 名稱伺服器與轄區
2.5 解析器
2.6 解析
2.7 快取
第三章 從何處著手?
3.1 取得 BIND
3.2 選用網域名稱
第四章 設置 BIND 名稱伺服器
4.1 我們的轄區
4.2 設置轄區資料
4.3 設定 BIND 的組態檔
4.4 簡寫
4.5 主機名稱檢查
4....