DNS

DNS出現原由

單一檔案處理上網的年代: /etc/host

主機名稱跟IP做一個對應

早期使用這個方法

主機名稱跟IP的對應無法自動在所有電腦上做更新

且IP數量過多,檔案會太大

因而出現了DNS server

分散式、階層式主機名稱管理架構: DNS 系統

  1. 新的一套主機名稱IP對應系統-BIND(Berkeley Internet Name Domain)
  2. 樹狀目錄架構

Hostname vs Domain name

Host Name + Domain Name = FQDN(Fully Qualified Domain Name)


正反解&Zone

正解:主機名稱查詢到IP的流程

  1. SOA:Start Of Authority的縮寫
  2. NS:Name Server的縮寫,後面紀錄DNS伺服器
  3. A:Adress的縮寫,後面紀錄IP的對應

反解:IP解析到主機名稱

  1. PTR:後面的資料是反解到主機名稱

ZONE:不管正解or反解每個領域的紀錄就是一個ZONE


Freebsd DNS設定

https://www.twbsd.org/cht/book/ch22.htm

  • 設定/etc/namedb/name.conf
正解
zone "c.edu.tw" {
    type master;
    file "/etc/namedb/m229a.fwd";
};
反解

zone "9.168.192.in-addr.arpa" {
    type master;
    file "/etc/namedb/m229a.rev";
};

重要
listen-on要設定
改為any才可聽取/etc/resolv.conf內各個nameserver
或是設定IP

正解檔

$TTL    3600 ;
$ORIGIN c.edu.tw. ; //網域名稱 要跟/etc/namedb/name.conf內的設定一樣
@       IN      SOA     dns.c.edu.tw. root.c.edu.tw. (
                        15072100
                        3600
                        900
                        3600000
                        3600    )
                        ; Serial, Refresh, Retry, Expire, Neg. cache TTL
        IN      NS      dns.c.edu.tw. ;
dns     IN      A       192.168.9.ABC
test    IN      A       192.168.9.DEF
小心)前面不要有";"

反解檔

$TTL    3600 ;
$ORIGIN 9.168.192.in-addr.arpa. ;
@       IN      SOA     dns.c.edu.tw. root.c.edu.tw. (
                        15072100
                        3600
                        900
                        3600000
                        3600    )
                        ; Serial, Refresh, Retry, Expire, Neg. cache TTL
        IN      NS      dns.c.edu.tw. ;
ABC     IN      PTR     dns.c.edu.tw. ;
DEF     IN      PTR     test.c.edu.tw. ;