DNS 伺服器是什麼?如何運用?
收藏文章
很開心您喜歡 知識力 的文章, 追蹤此作者獲得第一手的好文吧!
知識力
字體放大


分享至 Line

分享至 Facebook

分享至 Twitter


DNS 伺服器是什麼?如何運用?

2019 年 3 月 8 日


完整網域名稱(FQDN:Fully Qualified Domain Name)

大家一定都使用過「網址」來連接網際網路,例如:www.google.com、www.hightech.tw、www.ntu.edu.tw 等,這些網址我們稱為「完整網域名稱(FQDN)」,完整網域名稱的總長度不得超過 255 個字母,單項(兩個點號之間)不得超過 63 個字母。

使用網址來連接網路主要是為了方便人類記憶,因為 www 代表「WWW 伺服器」、ntu 代表「National Taiwan University」、edu 代表「Education」、tw 代表「Taiwan」,當大家看到網址 www.ntu.edu.tw 就知道這是位於台灣的一個教育單位——台灣大學的 WWW 伺服器內的網頁內容。

完整網域名稱(FQDN)雖然可以方便人類記憶,但是路由器只認得 IP 位址,卻不認得網址,所以當我們在網頁瀏覽器(例如:Google Chrome、Internet Explorer)的網址列輸入 www.ntu.edu.tw 時,用戶端電腦必須先向 DNS 伺服器查詢這個網址所對應的 IP 位址,查詢結果是 140.112.8.116,再使用這個 IP 位址來連接這個網址的 WWW 伺服器。

換句話說,在手動進行網路設定的時候,就必須將 DNS 伺服器的 IP 位址告訴電腦,這樣電腦才知道要向誰查詢我們輸入的網址對應的 IP 位址。

網域名稱系統(DNS:Domain Name System)

先思考一個有趣的問題,全世界的網址那麼多,一台 DNS 伺服器怎麼可能知道這麼多網址對應的 IP 位址是什麼呢?為了要解決這個問題,我們把全世界所有的網址區分為許多不同的「網域(Domain)」,並且定義了不同的層級,如<圖一>所示:

➤根網域(Root domain):根網域是 DNS 架構最上層的伺服器,全球共約 16 台,當下層的任何一台 DNS 伺服器無法查出某個網址對應的 IP 位址時,則會向最上層負責根網域的 DNS 伺服器查詢。

➤頂層網域(Top level domain):使用國際標準組織(ISO)所制定的國碼(Country code)來區分頂層網域。
例如:美國使用「us」、台灣使用「tw」、中國大陸使用「cn」、日本使用「jp」,由於美國是網際網路的創始國,所以通常可以不使用 us,全球的網域名稱是由「網際網路名稱與號碼分配組織(ICANN:Internet Corporation For Assigned Names and Numbers)」來管理(http://www.icann.org)。

➤第二層網域(Second level domain):由使用單位向各國的網址註冊中心申請,台灣的網域名稱是由「台灣網路資訊中心(TWNIC:Taiwan Network Information Center)」來管理(http://www.twnic.net),使用單位繳交年費即可取得第二層網域的使用權。
例如:教育單位台大使用 ntu.edu.、政大使用 nccu.edu.;政府單位台北市政府使用 taipei.gov、國科會使用 nsc.gov;營利單位 Google 使用 google.com、台積電(2330-TW)使用 tsmc.com、聯發科(2454-TW)使用 mediatek.com 等。

➤主機網域(Host domain):由各使用單位之網管人員,依照實際需要自行細分成許多主機使用,每一台主機可以設定一個網域名稱,例如:台大的網頁使用 www、台大的選課系統使用 info、台大的郵件伺服器使用 mail 等。

圖一、全球 DNS 伺服器架構

動動手

讓我們先來查查 www.ntu.edu.tw 對應的 IP 位址是多少吧!先到 DOS 模式下,在 C:\> 後面輸入指令「ping www.ntu.edu.tw」(中間要空一格),再按下「Enter」,電腦就會列出 www.ntu.edu.tw 對應的 IP 位址是 140.112.8.116。

➤網頁瀏覽器的網址列:可以輸入網址 http://www.ntu.edu.tw,如果你(妳)記憶力很好,知道這個網址的 IP 位址是 140.112.8.116,那麼當然也可以在網址列直接輸入 IP 位址 http://140.112.8.116,這樣子電腦就不用再向 DNS 伺服器查詢囉!

➤打開網頁瀏覽器:在網址列輸入 http://www.ntu.edu.tw 並且按下「Enter」,就會發現這是台灣大學的網站;現在我們在網址列輸入 http://info.ntu.edu.tw 並且按下「Enter」,就會發現這是台灣大學的選課系統。

DNS 的查詢流程

用戶端電腦向 DNS 伺服器查詢 www.ntu.edu.tw 的 IP 位址流程如<圖二>所示:

➤用戶端電腦:向 DNS 伺服器查詢 www.ntu.edu.tw 的 IP 位址,如<圖二(a)>所示。

➤DNS 伺服器:查詢自己的記憶體,如果曾經被詢問過就會有記錄,如果第一次被詢問則沒有記錄,於是轉向根網域 DNS 伺服器查詢,如<圖二(b)>所示。

➤根網域 DNS 伺服器:回答「我不知道 www.ntu.edu.tw 的 IP 位址」,但是我知道「管理 tw 的 DNS 伺服器」的 IP 位址,如<圖二(c)>所示。

➤DNS 伺服器:再轉向「管理 tw 的 DNS 伺服器」查詢,如<圖二(d)>所示。

➤管理 tw 的 DNS 伺服器:回答「我不知道 www.ntu.edu.tw 的 IP 位址」,但是我知道「管理 edu.tw 的 DNS 伺服器」的 IP 位址,如<圖二(e)>所示。

➤DNS 伺服器:再轉向「管理 edu.tw 的 DNS 伺服器」查詢,如<圖二(f)>所示。

➤管理 edu.tw 的 DNS 伺服器:回答「我不知道 www.ntu.edu.tw. 的 IP 位址」,但是我知道「管理 ntu.edu.tw 的 DNS 伺服器」的 IP 位址,如<圖二(g)>所示。

➤DNS 伺服器:再轉向管理 ntu.edu.tw 的 DNS 伺服器查詢,如<圖二(h)>所示。

➤管理 ntu.edu.tw 的 DNS 伺服器:回答「www.ntu.edu.tw. 的 IP 位址是 140.112.8.116」,如<圖二(i)>所示,呵~看來要查詢一個網址的 IP 位址還真辛苦!

➤DNS 伺服器:先將 www.ntu.edu.tw 對應的 IP 位址 140.112.8.116 儲存在自己的記憶體,以方便下一次用戶端電腦再查詢時使用,下一次就不用這麼辛苦地到處去問啦!並且將結果傳回用戶端電腦,如<圖二(j)>所示,用戶端電腦才能使用這個 IP 位址來連接網路上的一個網站。

圖二、DNS 查詢流程

由於目前電腦的記憶體都很大,而且我們又常常連結同一個網站,因此只要我們連結過某一個網站,我們的電腦就會把這個網址對應到的 IP 位址記錄下來,不必這麼辛苦的去向 DNS 伺服器查詢,因此我們的經驗都是輸入網址之後立刻出現網頁,如果使用者輸入了一個從來沒連結過的網址,則會等待比較久的時間,其實就是電腦在向 DNS 伺服器查詢 IP 位址。

知識力》授權轉載

【延伸閱讀】

 
週餘
 
 
分享文章
分享至 Line
分享至 Facebook
分享至 Twitter
相關個股
收藏 已收藏
很開心您喜歡 知識力 的文章, 追蹤此作者獲得第一手的好文吧!
知識力
分享至 Line
分享至 Facebook
分享至 Twitter
相關個股
地圖推薦
 
推薦您和本文相關的多維知識內容
什麼是地圖推薦?
推薦您和本文相關的多維知識內容