BIND(Berkeley Internet Name Domain 伯克利網際網路域名) 是全世界最廣泛用來提供DNS服務的軟體,能夠將 網域名稱 <-對應-> IP 。提供兩種工具:1.named 2.rndc (遠端管理named 工具)
1.安裝BIND
sudo apt install bind9
2.檢測是否安裝成功
sudo ss -tulnp | grep named
各個指令的意義: ss 顯示 Socket 相關的資訊
-t 顯示 TCP連線
-u 顯示 UDP連線
-l 顯示 監聽中的連線
-n 顯示 連接埠數字
-p 顯示 占用連線的行程(process)
(1).當 TCP 與 UDP 監聽 連接埠 53 表示 BIND 安裝成功
(2).當TCP 監聽 連接埠 953 表示 rndc 會用到的連接埠
named.conf 內容: (1) named.conf.options 用來存放 options (選項),內容: 其中 directory "/var/cache/bind"; 一、named:BIND 提供的守護程式(daemon)
1.主要設定檔- named.conf:預設位置 /etc/bind/ directory 指定一個目錄,作為DNS資料庫,預設目錄為 /var/cache/bind
forwarders {
0.0.0.0;
};
forwarders 指定多個IP,以分號 ; 區隔。當我們DNS 無法回應使用者的查詢請求時,
轉移(forward) 指定的IP (就目前的IP為 0.0.0.0)
172.16.0.0~172.16.255.255 zone的反解寫法: dnssec-validation auto;
讓我們DNS 支援 DNSSEC (Domain Name System Security Extension)
Listen-on-v6 設定監聽 IPv6範圍
(2) named.conf.local 用來存放本地和使用者自定的 Zone 區塊。設定A.正解 B.反解
A.正解(用網域名稱 查 IP)
B.反解(用IP 查 網域名稱)
(3) zones.rfc1918 用來定義私有網域為 10.0.0.0 ~10.255.255.255、172.16.0.0~172.31.255.255、192.168.0.0 ~ 192.168.255.255,內容為 zone "16.172.in-addr.arpa" { ... };
那 zone "16.172.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
file 指定一個檔案給 zone 區塊對應的網域或IP,
而該檔案內有DNS資源紀錄(Resource Record RR)。
/etc/bind/db.empty 是 BIND 內建的設定檔,內容如下:
資料來源:
A.master 表示 zone 是主從架構的DNS中的 主要主機
B.slave 表示 zone 是主從架構的DNS中的 從屬主機
C.hint 用於對應 . 的時候。 . 表示 [根域名](root name)
(4) db.empty 內容:
$TTL 86400 意思是使用者的查詢請求只要問過DNS一次,就可以持續一整天(86400秒)
@ IN SOA localhost. root.localhost. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
86400 ) ; Negative Cache TTL
@ 代表 zone name :目前網域(Zone Root )
IN 代表 Class :InterNet 類別
SOA(Start Of Authority 授權開始) 代表 這筆DNS紀錄值的格式
localhost. 代表 主要(master)主機的網域名稱
root.localhost. 代表 管理者的電子信箱
Serial 代表 版本序號
Refresh 代表 從屬(slave)主機的更新時間
Retry 代表 重試的時間間隔
Expire 代表 逾時時間
Negative Cache TTL 代表 最小的TTL值
@ IN NS localhost.
NS(Name Server) 代表 指定此網域的權威 DNS 伺服器
其他常用的DNS 資源記錄類型,如下:
A :指定網域名稱所對應的IPv4。正解用。
AAAA :指定網域名稱所對應的IPv6。正解用。
PTR :指定IP所對應的網域名稱。反解用。
CNAME:指定別名。正解用。
MX :用於指定電子郵件交換器的主機名稱。
TXT :指定網域名稱對應某筆字串資料,通常用於驗證網域所有權。








