[Open]
[Close]
DNS 的使用方面
問:什麼是 "DNS" ? 其中文為何?
答:DNS, 簡單的說, 就是 Domain Name System, 翻成中文來講, 就是
「領域名稱系統」.
問:DNS 有什麼用途?
答:簡單來說, 在一個 TCP/IP 架構的網路 (例如 Internet) 環境中, DNS 是
一個非常重要而且常用的系統. 主要的功能就是將人易記憶的 Domain
Name 與人不容易記憶的 IP Address 做轉換. 而上面執行 DNS 伺服軟體
的這台網路主機, 就可以稱之為 DNS Server.
基本上, 通常我們都認為 DNS 只是將 Domain Name 轉換成 IP Address,
然後再使用所查到的 IP Address 去做連線. (稱「正查」)
事實上, 將 IP Address 轉換成 Domain Name 的功能也是相當常使用到的
, 當 login 到一台 Unix 工作站時, 工作站就會去做反查, 找出你是從哪
個地方連線進來的. (稱「反查」)
問:DNS 是怎麼運作的?
答:簡單來說, DNS 是使用階層式的方式來運作的. 例如:
建中的 Domain Name 為 .ck.tp.edu.tw. 這個 Domain Name 當然不是憑
空而來的, 是從 .edu.tw 所分配下來的.
.edu.tw 又是從 .tw 授與 (delegation) 的.
.tw 是從哪裡來的呢?
答案是從 ".", 也就是所謂的「根領域」 (root domain) 來的.
根領域已經是 Domain Name 的最上層. 而 "." 這層是由 InterNIC
(Internet Network Information Center, 網際網路資訊中心) 所管理.
全世界的 Domain Name 就是這樣, 一層一層的授與下來.
問:當我查一個 Domain Name 時, DNS 是怎麼查出他的 IP 來的呢?
答:舉個例子, 假設今天我們查的 Domain Name (作一個 dns query) 為
oasis.ck.tp.edu.tw 時, DNS Server 會怎麼處理:
(1) 你所用的電腦 (可能是 PC, 也可能是工作站) 送出一個問題給這台電
腦所設定的 DNS Server. 問說: camel.ck.tp.edu.tw 的 IP 是什麼?
(2) 這台 DNS 會先看看是不是在他的 cache 中, 如果是, 就丟出答案.
如果不是, 就從最上頭查起.
在 DNS Server 上面一定有設定 "." 要跟誰問, 所以, 這個時候它就
往 "." 層的任何一台 DNS (目前 "." 有 13 台) 問問題, 它問:
.tw 要問誰?
(3) "." 層的 DNS 會回答 .tw 要向誰查. (同時你用的 DNS 會 cache 起
來這個答案)
(4) 接下來你所用的 DNS 就會向 .tw 這層的 DNS 問: .edu.tw 要問誰?
(5) .tw 的這層就會回答 .edu.tw 要向誰查. (同時你用的 DNS 也把這答
案 cache 起來)
(6) 向 .edu.tw 這層問 .tp.edu.tw 要問誰?
(7) 得到 .tp.edu.tw 要向誰查. (又 cache 起來)
(8) 問 .tp.edu.tw 這層的 DNS: .ck.tp.edu.tw 要問誰?
(9) 得到 .ck.tp.edu.tw 要跟 camel.ck.tp.edu.tw 問 (又 cache 起來)
(10) 問 camel.ck.tp.edu.tw: oasis.ck.tp.edu.tw 的 IP 為何?
(11) camel.ck.tp.edu.tw 回答: oasis.ck.tp.edu.tw 的 IP 是
203.64.26.18 (又 cache 起來)
經過了這麼多的過程, 終於得到了這個 IP. 接下來才能作進一步的連線.
要注意的是, 在每一層都會問一個問題, 並且會把答案記下來 (cache) 起
來. 而且還會忘掉. (看該層的設定是要 cache 多久)
問:DNS 要怎麼設定?
答:如果,只是要使用 DNS,那只要在 TCP/IP 的網路設定中設定即可。
設定的方法跟使用的作業系統有關。例如:
Windows 95 - 在「控制台」「網路」「TCP/IP」中,找到 DNS 的部份再
來設定。
Unix - 在 /etc/resolv.conf 這個檔案中設定,範例如下:
domain ck.tp.edu.tw (就是這台電腦所屬的 Domain Name)
nameserver 203.64.26.1 (一定要打 IP)
(如果,要架設一台 DNS Server,就不是這個問題集的範圍了。)
問:哪一台 DNS 資料最新?
答:如果,你知道 DNS 是利用階層架構運作的,那就應該知道,離你最近的
DNS,就是最好的。