## 10.1 為何需要主機名
如果你已經將[第二章的網絡基礎](http://linux.vbird.org/linux_server/0110network_basic.php)看完的話,應該會知道其實我們的 TCP/IP 環境只要有 IP 與正確的路由即可聯機了。那么你申請主機名要干嘛?因為『沒辦法啊!人腦太不中用了!』舉例來說,你可以背出來我們常上去查數據的 www.google.com 的 IP 嗎?報告!鳥哥沒辦法背出來~
因為 IP 是那么難背的東西,而且,如果你的 IP 又是類似撥接的不固定的 IP 時,那還更傷腦筋呢! 因此我們才會習慣以熟悉的英文字符串來做為主機名,然后讓『這個主機名與 IP 達成對應』,那直接記憶主機名就行了,反正 IP 的查詢就交給計算機主機來做即可!在這樣的想法下,我們當然就需要有主機名啦!
**Tips:** 在這個章節當中,我們將會介紹如何申請一個合法的主機名。目前 Internet 上面使用的主機名都是透過所謂的 DNS 系統,而你想要取得一個 DNS 的主機名,就必須要『注冊』,所謂的『注冊』就是要錢去申請啦! 當然也有免費提供主機名的服務啦!在這個章節當中鳥哥不會介紹如何架設一部 DNS 服務器, 而是介紹如何利用注冊或免費申請的方式來達成主機名的取得。

* * *
### 10.1.1 主機名的由來
因為 IP 是這么難記憶的東西,因此人們就使用『名字』來對應到主機的 IP,這就是主機名的由來。 好在早期連上網絡的計算機數量不多,所以在網絡上的人們就想出一個簡單的辦法來進行主機名與 IP 的對應,那就是『在每部計算機的 /etc/hosts 里面設定好主機名與 IP 的對應表』。那么人們就可以直接藉由主機名來連接上某些網絡上的主機啰!
然而因為科技的發達,連上 Internet 的人們越來越多,使用 /etc/hosts 的方法已經搞不定了 (只要一部新計算機上線,全部 Internet 上面的所有計算機都要重新改寫 /etc/hosts 才行!) ,這個時候領域名系統 ( Domain Name System, DNS ) 就適時的出現了!
DNS 利用類似樹狀目錄的型態,將主機名的管理分配在不同層級的 DNS 服務器當中,經由分層管理,所以每一部服務器記憶的信息就不會很多,而且異動上面也相當的容易修改! 這個 DNS 的功能你知道了嗎?對啦!就是『將計算機主機的名稱轉譯成 IP 』就是了!當然啰,他的額外功能還很多,關于 DNS 的詳細的解析部分我們將在后續的 [第十九章 DNS 服務器架設](http://linux.vbird.org/linux_server/0350dns.php)當中再持續的加強內容,總之, 它的最大功能就是『讓有意義的,人類較容易記憶的主機名(英文字母) ,轉譯成為計算機所熟悉的 IP 地址!』
透過上面的簡單說明,你得要知道,如果你想要一個主機名,那你就得要透過 DNS 系統,而不是單純的修改你的 /etc/hosts 而已。 那你如何加入一個主機名到 DNS 系統當中呢?『授權』是重點!那什么是授權呢?
* * *
### 10.1.2 重點在合法授權
很多朋友都認為:『因為我想要架站,所以主機需要有個主機名,因此我就得要架設 DNS 服務器?』是這樣嗎?當然不是啰!DNS 是個很龐大的架構,而且是串連在全球的網絡當中,除非你經由『注冊』的手續來讓 DNS 系統承認你主機名存在的合法性,否則你架設的 DNS 只能說是一個『地下練習的測試站』而已啦!并沒有用途的。
那我要如何加入 DNS 系統呢?很簡單啦!首先你必須要選擇一個注冊單位, 并且檢查出你想要注冊的主機名是否存在?主機名是有意義的,并不是你可以隨便注冊的喔! 舉例來說,在臺灣常見的個人網站注冊主機名為: *.idv.tw ,而公司行號則可能注冊為 *.com.tw 了!這個得要特別留意。至于臺灣地區的注冊單位很多,你可以選擇例如 Hinet 或 Seednet 之類的 ISP 來注冊。當然,你也可以選擇免費的 no-ip.org 來注冊的。
如果想要了解啥是『合法授權』的話,得要從 DNS 主機名的查詢方式來談起,由于 DNS 查詢的方式都是由上層的 ISP 提供解析授權給下游的注冊者,因此,下游的注冊者只要設定妥當后, 全世界的主機就會知道你設定的數據了。詳細的查詢流程我們留到[DNS 服務器](http://linux.vbird.org/linux_server/0350dns.php)章節再來談, 底下僅是介紹一個簡單的查詢示意圖。

圖 10.1-1、 DNS 查詢示意圖
舉昆山信息傳播系的 WWW 服務器的主機名注冊方式來說好了,我們系上得要先跟昆山計中 (相當于我們的 ISP) 注冊取得 [www.dic.ksu.edu.tw](http://www.dic.ksu.edu.tw/) 這個主機名與 IP 的對應, 這個對應信息是寫在昆山計中的 DNS 服務器上,與資傳系的 WWW 服務器無關喔!那你怎么知道那部 www.dic.ksu.edu.tw 在哪里?你會先向你的 DNS 要求查詢,該 DNS 會去向全世界的 DNS 系統查詢,該系統會主動的查詢到 KSU dns 服務器, 然后你的 PC 就會知道 www.dic.ksu.edu.tw 的 IP 在哪,最后你就開始聯機啰。
從這個流程當中,你可以發現我們的 www 服務器與 KUS dns 服務器沒有絕對關系,兩者是獨立的,我們只要作好 DNS 的『注冊』工作 (向計中申請注冊) 即可,并不需要去維護 DNS 的信息。所以啰, 這里你只要知道:(1)主機名的設計是有意義的,不可以隨便設定、 (2)主機名要生效,得要透過注冊來取得合法授權。這樣就好了,如果想要架設 DNS 與更了解 DNS 系統的話, 等到后續的 DNS 服務器章節再來談。
**Tips:** 在這個章節當中,理論方面的講解比較少,因為很多數據都與 [DNS 服務器篇](http://linux.vbird.org/linux_server/0350dns.php) 有重復,在這個章節當中鳥哥主要在介紹動態 IP 架站的一個簡單主機名申請方式啦! ^_^

* * *
### 10.1.3 申請靜態還是動態 DNS 主機名
由上面的說明當中,我們可以很清楚的知道 DNS 系統最大的功能就是在主機名對應 IP 的轉譯上面。當然啦,預設的 DNS 轉譯是用在『固定 IP 對應主機名』的方法上面的!就像上面的[圖 10.1-1](#fig10.1-1) 所示一般。在這個情況底下,你在 DNS 架構下申請完主機名后, 如果你的 IP 不會更動,那就永遠不用去煩惱主機名的相關問題啰,這也是所謂的靜態 DNS 主機名功能。
但是...夭壽喔!我們的很多小網站都是以非固定 IP 來上網的,更有甚者,某些 ADSL 撥接模式甚至會定時強制斷線,也就是說, 在一段時間后,我們都得需要重新撥接上網,而每次撥接成功后取得的 IP 可不見得相同啊,如此一來 IP 不是一直在變嗎? 那么我不就需要一直跟我上層 DNS 主機的管理員申請『變更 IP 』嗎?會不會太麻煩了點?
是很麻煩啊!所以現在為了解決這個問題,很多 ISP 提供了所謂的動態 DNS 服務的功能,他是這樣做的:
1. Client 端(就是你啦)每次開機或者是重新撥接,并取得一個新的 IP 之后,會主動向 DNS Server 端提出要求,希望 Server 端變更主機名與 IP 的對應 (這個步驟在每個主要的 ISP 都有提供適當的程序來提供給 client 使用);
2. Server 端接受 Client 端的要求之后,會先去查詢 Client 提供的賬號密碼是否正確, 若正確就會立即修改 Server 本身對于你的主機名的設定值。
所以啰,每次我們取得了新的 IP 之后,我們的主機名對應的 IP 也會跟著在 DNS 系統上面更新, 如此一來,只要別人知道你的主機名,不論你的 IP 為何,他一定可以連上你的主機 (因為 IP 跟著你的主機而變!) 這對于我們這種使用動態 IP 的人是很有幫助的! (阿!真是造福我們這些窮苦人家的孩子呀!) 整個程序就有點像底下的圖示,WWW 服務器與 DNS 服務器之間就有關連性啦。

圖 10.1-2、動態 DNS 服務--客戶端向服務器端發送更新要求
不過,還是需要注意的是,目前的主機名申請很多是『需要錢的』!如果你需要比較穩定的主機名對應 IP 的服務,那么花點錢來注冊還是必須的。不過,如果是實驗性質的網站,那么也是可以申請免費的動態 DNS 服務喔!
* * *
- 鳥哥的Linux私房菜:服務器架設篇 第三版
- 第一部份:架站前的進修專區
- 作者序
- 第一章、架設服務器前的準備工作
- 1.1 前言: Linux 有啥功能
- 1.2 基本架設服務器流程
- 1.3 自我評估是否已經具有架站的能力
- 1.4 本章習題
- 第二章、基礎網絡概念
- 2.1 網絡是個什么玩意兒
- 2.2 TCP/IP 的鏈結層相關協議
- 2.3 TCP/IP 的網絡層相關封包與數據
- 2.4 TCP/IP 的傳輸層相關封包與數據
- 2.5 連上 Internet 前的準備事項
- 2.6 重點回顧:
- 2.7 本章習題
- 2.8 參考數據與延伸閱讀
- 第三章、局域網絡架構簡介
- 3.1 局域網絡的聯機
- 3.2 本書使用的內部聯機網絡參數與通訊協議
- 第四章、連上 Internet
- 4.1 Linux 連上 Internet 前的注意事項
- 4.2 連上 Internet 的設定方法
- 4.3 無線網絡--以筆記本電腦為例
- 4.4 常見問題說明
- 4.5 重點回顧
- 4.6 本章習題
- 4.7 參考數據與延伸閱讀
- 第五章、 Linux 常用網絡指令
- 5.1 網絡參數設定使用的指令
- 5.2 網絡偵錯與觀察指令
- 5.3 遠程聯機指令與實時通訊軟件
- 5.4 文字接口網頁瀏覽
- 5.5 封包擷取功能
- 5.6 重點回顧
- 5.7 本章習題
- 5.8 參考數據與延伸閱讀
- 第六章、 Linux 網絡偵錯
- 6.1 無法聯機原因分析
- 6.2 處理流程
- 6.3 本章習題
- 6.4 參考數據與延伸閱讀
- 第二部分:主機的簡易資安防護措施
- 第七章、網絡安全與主機基本防護:限制端口, 網絡升級與 SELinux
- 7.1 網絡封包聯機進入主機的流程
- 7.2 網絡自動升級軟件
- 7.3 限制聯機埠口 (port)
- 7.4 SELinux 管理原則
- 7.5 被攻擊后的主機修復工作
- 7.6 重點回顧
- 7.7 課后練習
- 7.8 參考數據與延伸閱讀
- 第八章、路由觀念與路由器設定
- 8.1 路由
- 8.2 路由器架設
- 8.3 動態路由器架設:quagga (zebra + ripd)
- 8.4 特殊狀況:路由器兩邊界面是同一個 IP 網段: ARP Proxy
- 8.5 重點回顧
- 8.6 本章習題
- 8.7 參考數據與延伸閱讀
- 第九章、防火墻與 NAT 服務器
- 9.1 認識防火墻
- 9.2 TCP Wrappers
- 9.3 Linux 的封包過濾軟件:iptables
- 9.4 單機防火墻的一個實例
- 9.5 NAT 服務器的設定
- 9.6 重點回顧
- 9.7 本章習題
- 9.8 參考數據與延伸閱讀
- 第十章、申請合法的主機名
- 10.1 為何需要主機名
- 10.2 注冊一個合法的主機名
- 10.3 重點回顧
- 10.4 本章習題
- 10.5 參考數據與延伸閱讀
- 第三部分:局域網絡內常見的服務器架設
- 第十一章、遠程聯機服務器SSH / XDMCP / VNC / RDP
- 11.1 遠程聯機服務器
- 11.2 文字接口聯機服務器: SSH 服務器
- 11.3 最原始圖形接口: Xdmcp 服務的啟用
- 11.4 華麗的圖形接口: VNC 服務器
- 11.5 仿真的遠程桌面系統: XRDP 服務器
- 11.6 SSH 服務器的進階應用
- 11.7 重點回顧
- 11.8 本章習題
- 11.9 參考數據與延伸閱讀
- 第十二章、網絡參數控管者: DHCP 服務器
- 12.1 DHCP 運作的原理
- 12.2 DHCP 服務器端的設定
- 12.3 DHCP 客戶端的設定
- 12.4 DHCP 服務器端進階觀察與使用
- 12.5 重點回顧
- 12.6 本章習題
- 12.7 參考數據與延伸閱讀
- 第十三章、文件服務器之一:NFS 服務器
- 13.1 NFS 的由來與其功能
- 13.2 NFS Server 端的設定
- 13.3 NFS 客戶端的設定
- 13.4 案例演練
- 13.5 重點回顧
- 13.6 本章習題
- 13.7 參考數據與延伸閱讀
- 第十四章、賬號控管: NIS 服務器
- 14.1 NIS 的由來與功能
- 14.2 NIS Server 端的設定
- 14.3 NIS Client 端的設定
- 14.4 NIS 搭配 NFS 的設定在叢集計算機上的應用
- 14.5 重點回顧
- 14.6 本章習題
- 14.7 參考數據與延伸閱讀
- 第十五章、時間服務器: NTP 服務器
- 15.1 關于時區與網絡校時的通訊協議
- 15.2 NTP 服務器的安裝與設定
- 15.3 客戶端的時間更新方式
- 15.4 重點回顧
- 15.5 本章習題
- 15.6 參考數據與延伸閱讀
- 第十六章、文件服務器之二: SAMBA 服務器
- 16.1 什么是 SAMBA
- 16.2 SAMBA 服務器的基礎設定
- 16.3 Samba 客戶端軟件功能
- 16.4 以 PDC 服務器提供賬號管理
- 16.5 服務器簡單維護與管理
- 16.6 重點回顧
- 16.7 本章習題
- 16.8 參考數據與延伸閱讀
- 第十七章、區網控制者: Proxy 服務器
- 17.1 什么是代理服務器 (Proxy)
- 17.2 Proxy 服務器的基礎設定
- 17.3 客戶端的使用與測試
- 17.4 服務器的其他應用設定
- 17.5 重點回顧
- 17.6 本章習題
- 17.7 參考數據與延伸閱讀
- 第十八章、網絡驅動器裝置: iSCSI 服務器
- 18.1 網絡文件系統還是網絡驅動器
- 18.2 iSCSI target 的設定
- 18.3 iSCSI initiator 的設定
- 18.4 重點回顧
- 18.5 本章習題
- 18.6 參考數據與延伸閱讀
- 第四部分:常見因特網服務器架設
- 第十九章、主機名控制者: DNS 服務器
- 19.1 什么是 DNS
- 19.2 Client 端的設定
- 19.3 DNS 服務器的軟件、種類與 cache only DNS 服務器設定
- 19.4 DNS 服務器的詳細設定
- 19.5 協同工作的 DNS: Slave DNS 及子域授權設定
- 19.6 DNS 服務器的進階設定
- 19.7 重點回顧
- 19.8 本章習題
- 19.9 參考數據與延伸閱讀
- 第二十章、WWW 伺服器
- 20.1 WWW 的簡史、資源以及伺服器軟體
- 20.2 WWW (LAMP) 伺服器基本設定
- 20.3 Apache 伺服器的進階設定
- 20.4 登錄檔分析以及 PHP 強化模組
- 20.5 建立連線加密網站 (https) 及防砍站腳本
- 20.6 重點回顧
- 20.7 本章習題
- 20.8 參考資料與延伸閱讀
- 第二十一章、文件服務器之三: FTP 服務器
- 21.1 FTP 的數據鏈路原理
- 21.2 vsftpd 服務器基礎設定
- 21.3 客戶端的圖形接口 FTP 聯機軟件
- 21.4 讓 vsftpd 增加 SSL 的加密功能
- 21.5 重點回顧
- 21.6 本章習題
- 21.7 參考數據與延伸閱讀
- 第二十二章、郵件服務器: Postfix
- 22.1 郵件服務器的功能與運作原理
- 22.2 MTA 服務器: Postfix 基礎設定
- 22.3 MRA 服務器: dovecot 設定
- 22.4 MUA 軟件:客戶端的收發信軟件
- 22.5 郵件服務器的進階設定
- 22.6 重點回顧
- 22.7 本章習題
- 22.8 參考數據與延伸閱讀