## 8.2 路由器架設
我們知道在局域網絡里面的主機可以透過廣播的方式來進行網絡封包的傳送,但在不同網段內的主機想要互相聯機時,就得要透過路由器了。 那么什么是路由器?他的主要功能是什么?底下我們就來聊一聊!
* * *
### 8.2.1 什么是路由器與 IP 分享器
既然主機想要將數據傳送到不同的網域時得透過路由器的幫忙,所以啦,路由器的主要功能就是:『轉遞網絡封包』啰!也就是說,路由器會分析來源端封包的 IP 表頭,在表頭內找出要送達的目標 IP 后,透過路由器本身的路由表 (routing table) 來將這個封包向下一個目標 (next hop) 傳送。這就是路由器的功能。 那么路由器的功能可以如何達成呢?目前有兩種方法可以達成:
* 硬件功能:例如 Cisco, TP-Link, D-Link ([注2](#ps2)) 等公司都有生產硬件路由器, 這些路由器內有嵌入式的操作系統,可以負責不同網域間的封包轉譯與轉遞等功能;
* 軟件功能:例如 Linux 這個操作系統的核心就有提供封包轉遞的能力。
高階的路由器可以連結不同的硬設備,并且可以轉譯很多不同的封包格式,通常...價格也不便宜啊! 在這個章節里面,我們并沒有要探討這么高階的咚咚,僅討論在以太網絡里頭最簡單的路由器功能: 連接兩個不同的網域。嘿嘿!這個功能 Linux 個人計算機就可以達成了!那怎么達成呢?
* 打開核心的封包轉遞 (IP forward) 功能
就如同路由表是由 Linux 的核心功能所提供的,這個轉遞封包的能力也是 Linux 核心所提供, 那如何觀察核心是否已經有啟動封包轉遞呢?很簡單啊,觀察核心功能的顯示檔案即可,如下所示:
```
[root@www ~]# cat /proc/sys/net/ipv4/ip_forward
0 <== 0 代表沒有啟動, 1 代表啟動了
```
要讓該檔案的內容變成啟動值 1 最簡單的方是就是使用:『echo 1 > /proc/sys/net/ipv4/ip_forward』即可。 不過,這個設定結果在下次重新啟動后就會失效。因此,鳥哥建議您直接修改系統配置文件的內容,那就是 /etc/sysctl.conf 來達成開機啟動封包轉遞的功能喔。
```
[root@www ~]# vim /etc/sysctl.conf
# 將底下這個設定值修改正確即可! (本來值為 0 ,將它改為 1 即可)
net.ipv4.ip_forward = 1
[root@www ~]# sysctl -p <==立刻讓該設定生效
```
sysctl 這個指令是在核心工作時用來直接修改核心參數的一個指令,更多的功能可以參考 man sysctl 查詢。 不要懷疑!只要這個動作,你的 Linux 就具有最簡單的路由器功能了。而由于 Linux 路由器的路由表設定方法的不同,通常路由器規劃其路由的方式就有兩種:
* 靜態路由:直接以類似 route 這個指令來直接設定路由表到核心功能當中,設定值只要與網域環境相符即可。 不過,當你的網域有變化時,路由器就得要重新設定;
* 動態路由:透過類似 Quagga 或 zebra 軟件的功能,這些軟件可以安裝在 Linux 路由器上, 而這些軟件可以動態的偵測網域的變化,并直接修改 Linux 核心的路由表信息, 你無須手動以 route 來修改你的路由表信息喔!
了解了路由器之后,接下來你可能需要了解到什么是 NAT (Network Address Translation, 網絡地址轉換) 服務器, NAT 是啥?其實 IP 分享器就是最簡單的 NAT 服務器啦!嘿嘿,了解了嗎?沒錯, NAT 可以達成 IP 分享的功能, 而 NAT 本身就是一個路由器,只是 NAT 比路由器多了一個『 IP 轉換』的功能。怎么說呢?
* 一般來說,路由器會有兩個網絡接口,透過路由器本身的 IP 轉遞功能讓兩個網域可以互相溝通網絡封包。 那如果兩個接口一邊是公共 IP (public IP) 但一邊是私有 IP (private IP) 呢? 由于私有 IP 不能直接與公共 IP 溝通其路由信息,此時就得要額外的『 IP 轉譯』功能了;
* Linux 的 NAT 服務器可以透過修改封包的 IP 表頭數據之來源或目標 IP ,讓來自私有 IP 的封包可以轉成 NAT 服務器的公共 IP ,就可以連上 Internet !
所以說,當路由器兩端的網域分別是 Public 與 Private IP 時,才需要 NAT 的功能! NAT 功能我們會在下一章[防火墻](http://linux.vbird.org/linux_server/0250simple_firewall.php)時談及, 這個章節僅談論一下路由器而已啊! ^_^
* * *
### 8.2.2 何時需要路由器
一般來說,計算機數量小于數十部的小型企業是無須路由器的,只需要利用 hub/switch 串接各部計算機, 然后透過單一線路連接到 Internet 上即可。不過,如果是超過數百部計算機的大型企業環境, 由于他們的環境通常需要考慮如下的狀況,因此才需要路由器的架設:
* 實體線路之布線及效能的考慮:
在一棟大樓的不同樓層要串接所有的計算機可能有點難度,那可以透過每個樓層架設一部路由器, 并將每個樓層路由器相連接,就能夠簡單的管理各樓層的網絡; 此外,如果各樓層不想架設路由器,而是直接以網絡線串接各樓層的 hub/switch 時, 那由于同一網域的數據是透過廣播來傳遞的,那當整個大樓的某一部計算機在廣播時, 所有的計算機將會予以回應,哇!會造成大樓內網絡效能的問題;所以架設路由器將實體線路分隔, 就有助于這方面的網絡效能;
* 部門獨立與保護數據的考慮:
在閱讀過[第二章網絡基礎](http://linux.vbird.org/linux_server/0110network_basic.php)后,你就會曉得, 只要實體線路是連接在一起的,那么當數據透過廣播時,你就可以透過類似 [tcpdump](http://linux.vbird.org/linux_server/0140networkcommand.php#tcpdump) 的指令來監聽封包數據, 并且予以竊取~所以,如果你的部門之間的數據可能需要獨立, 或者是某些重要的資料必須要在公司內部也予以保護時,可以將那些重要的計算機放到一個獨立的實體網域, 并額外加設防火墻、路由器等連接上公司內部的網域。
路由器就只是一個設備,要如何使用端看你的網絡環境的規劃!上面僅是舉出一些應用案例。 底下我們先就架設一個靜態路由的路由器來玩一玩吧!
* * *
### 8.2.3 靜態路由之路由器
假設在貴公司的網絡環境當中,除了一般職員的工作用計算機是直接連接到對外的路由器來連結因特網, 在內部其實還有一個部門需要較安全的獨立環境,因此這部份的網絡規劃可能是這樣的情況 (參考[圖 3.2-1](http://linux.vbird.org/linux_server/0120intranet.php#fig3.2-1) 內容延伸而來):

圖 8.2-1、靜態路由之路由器架構示意圖
以上圖的架構來說,這家公司主要有兩個 class C 的網段,分別是:
* 一般區網(192.168.1.0/24) :包括 Router A, workstation 以及 Linux Router 三部主機所構成;
* 保護內網(192.168.100.0/24):包括 Linux Router, clientlinux, winxp, win7 等主機所構成。
其中 192.168.1.0/24 是用來做為一般員工連接因特網用的,至于 192.168.100.0/24 則是給特殊的部門用的。workstation 代表的是一般員工的計算機,clientlinux 及 winxp, win7 則是特殊部門的工作用計算機, Linux Router 則是這個特殊部門用來連接到公司內部網域的路由器。在這樣的架構下, 該特殊部門的封包就能夠與公司其他部門作實體的分隔了。
由上圖你也不難發現,只要是具有路由器功能的設備 (Router A, Linux Router) 都會具有兩個以上的接口, 分別用來溝通不同的網域,同時該路由器也都會具有一個預設路由啊! ^_^! 另外,你還可以加上一些防火墻的軟件在 Linux Router 上,以保護 clientlinux, winxp, win7 呢!
那我們先來探討一下聯機的機制好了,先從 clientlinux 這部計算機談起。如果 clientlinux 想要連上 Internet,那么他的聯機情況會是如何?
* 發起聯機需求:clientlinux --> Linux Router --> Router A --> Internet
* 響應聯機需求:Internet --> Router A --> Linux Router --> clientlinux
觀察一下兩部 Router 的設定,要達到上述功能,則 Router A 必須要有兩個接口,一個是對外的 Public IP 一個則是對內的 Private IP ,因為 IP 的類別不同,因此 Router A 還需要額外增加 NAT 這個機制才行,這個機制我們在后續章節會繼續談到。 除此之外,Router A 并不需要什么額外的設定。至于 Linux Router 就更簡單了!什么事都不用作,將兩個網絡適配器設定兩個 IP , 并且啟動核心的封包轉遞功能,立刻就架設完畢了!非常簡單!我們就來談一談這幾個機器的設定吧!
* * *
* Linux Router
在這部主機內需要有兩張網卡,鳥哥在這里將他定義為 (假設你已經將剛剛實作的 eth0:0 取消掉了):
* eth0: 192.168.1.100/24
* eth1: 192.168.100.254/24
```
# 1\. 再看看 eth0 的設定吧!雖然我們已經在第四章就搞定了:
[root@www ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
HWADDR="08:00:27:71:85:BD"
NM_CONTROLLED="no"
ONBOOT="yes"
BOOTPROTO=none
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.254 <==最重要的設定啊!透過這部主機連出去的!
# 2\. 再處理 eth1 這張之前一直都沒有驅動的網絡卡吧!
[root@www ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE="eth1"
HWADDR="08:00:27:2A:30:14"
NM_CONTROLLED="no"
ONBOOT="yes"
BOOTPROTO="none"
IPADDR=192.168.100.254
NETMASK=255.255.255.0
# 3\. 啟動 IP 轉遞,真的來實作成功才行!
[root@www ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
# 找到上述的設定值,將默認值 0 改為上述的 1 即可!儲存后離開去!
[root@www ~]# sysctl -p
[root@www ~]# cat /proc/sys/net/ipv4/ip_forward
1 <==這就是重點!要是 1 才可以呦!
# 4\. 重新啟動網絡,并且觀察路由與 ping Router A
[root@www ~]# /etc/init.d/network restart
[root@www ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.100.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0
# 上面的重點在于最后面那個路由器的設定是否正確呦!
[root@www ~]# ping -c 2 192.168.1.254
PING 192.168.1.254 (192.168.1.254) 56(84) bytes of data.
64 bytes from 192.168.1.254: icmp_seq=1 ttl=64 time=0.294 ms
64 bytes from 192.168.1.254: icmp_seq=2 ttl=64 time=0.119 ms <==有回應即可
# 5\. 暫時關閉防火墻!這一步也很重要喔!
[root@www ~]# /etc/init.d/iptables stop
```
有夠簡單吧!而且透過最后的 ping 我們也知道 Linux Router 可以連上 Router A 啰!這樣你的 Linux Router 就 OK 了吶!此外,CentOS 6.x 默認的防火墻規則會將來自不同網卡的溝通封包剔除,所以還得要暫時關閉防火墻才行。 接下來則是要設定 clientlinux 這個被保護的內部主機網絡啰。
* * *
* 受保護的網域,以 clientlinux 為例
不論你的 clientlinux 是哪一種操作系統,你的環境都應該是這樣的 ([圖 8.2-1](#fig8.2-1)):
* IP: 192.168.100.10
* netmask: 255.255.255.0
* gateway: 192.168.100.254
* hostname: clientlinux.centos.vbird
* DNS: 168.95.1.1
以 Linux 操作系統為例,并且 clientlinux 僅有 eth0 一張網卡時,他的設定是這樣的:
```
[root@clientlinux ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
NM_CONTROLLED="no"
ONBOOT="yes"
BOOTPROTO=none
IPADDR=192.168.100.10
NETMASK=255.255.255.0
GATEWAY=192.168.100.254 <==這個設定最重要啦!
DNS1=168.95.1.1 <==有這個就不用自己改 /etc/resolv.conf
[root@clientlinux ~]# /etc/init.d/network restart
[root@clientlinux ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.100.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
0.0.0.0 192.168.100.254 0.0.0.0 UG 0 0 0 eth0
[root@clientlinux ~]# ping -c 2 192.168.100.254 <==ping自己的gateway(會成功)
[root@clientlinux ~]# ping -c 2 192.168.1.254 <==ping外部的gateway(會失敗)
```
最后一個動作有問題呦!怎么會連 ping 都沒有辦法 ping 到 Router A 的 IP 呢?如果連 ping 都沒有辦法給予回應的話, 那么表示我們的聯機是有問題的!再從剛剛的響應聯機需求流程來看一下吧!
* 發起聯機:clientlinux --> Linux Router (OK) --> Router A (OK)
* 回應聯機:Router A (此時 router A 要響應的目標是 192.168.100.10),Router A 僅有 public 與 192.168.1.0/24 的路由,所以該封包會由 public 界面再傳出去,因此封包就回不來了...
發現了嗎?網絡是雙向的,此時封包出的去,但是非常可憐的,封包回不來~那怎辦呢?只好告知 Router A 當路由規則碰到 192.168.100.0/24 時,要將該封包傳 192.168.1.100 就是了!所以你要這樣進行。
* * *
* 特別的路由規則: Router A 所需路由
假設我的 Router A 對外的網卡為 eth1 ,而內部的 192.168.1.254 則是設定在 eth0 上頭。 那怎么在 Router A 增加一條路由規則呢?很簡單啊!直接使用 route add 去增加即可!如下所示的情況:
```
[root@routera ~]# route add -net 192.168.100.0 netmask 255.255.255.0 \
> gw 192.168.1.100
```
不過這個規則并不會寫入到配置文件,因此下次重新啟動這個規則就不見了!所以,你應該要建立一個路由配置文件。 由于這個路由是依附在 eth0 網卡上的,所以配置文件的檔名應該要是 route-eth0 喔!這個配置文件的內容當中,我們要設定 192.168.100.0/24 這個網域的 gateway 是 192.168.1.100,且是透過 eth0 ,那么寫法就會變成:
```
[root@routera ~]# vim /etc/sysconfig/network-scripts/route-eth0
192.168.100.0/24 via 192.168.1.100 dev eth0
目標網域 透過的gateway 裝置
[root@routera ~]# route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
120.114.142.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.100.0 192.168.1.100 255.255.255.0 UG 0 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1
0.0.0.0 120.114.142.254 0.0.0.0 UG 0 0 0 eth1
```
上述觀察的重點在于有沒有出現 192.168.100.0 那行路由!如果有的話,請 ping 192.168.100.10 看看能不能有回應? 然后再到 clientlinux 上面去 ping 192.168.1.254 看看有沒有響應,你就知道設定成功啰!好了,既然內部保護網絡已經可以連上 Internet 了,那么是否代表 clientlinux 可以直接與一般員工的網域,例如 workstation 進行聯機呢?我們依舊透過路由規則來探討一下,當 clientlinux 要直接聯機到 workstation 時,他的聯機方向是這樣的 (參考[圖 8.2-1](#fig8.2-1)):
* 聯機發起: clientlinux --> Linux Router (OK) --> workstation (OK)
* 回應聯機: workstation (聯機目標為 192.168.100.10,因為并沒有該路由規則,因此聯機丟給 default gateway,亦即是 Router A) --> Router A (OK) --> Linux Router (OK) --> clientlinux
有沒有發現一個很可愛的傳輸流程?聯機發起是沒有問題啦,不過呢,響應聯機竟然會偷偷透過 Router A 來幫忙呦! 這是因為 workstation 與當初的 Router A 一樣,并不知道 192.168.100.0/24 在 192.168.1.100 里面啦!不過,反正 Router A 已經知道了該網域在 Linux Router 內,所以,該封包還是可以順利的回到 clientlinux 就是了。
* * *
* 讓 workstation 與 clientlinux 不透過 Router A 的溝通方式
如果你不想要讓 workstation 得要透過 Router A 才能夠聯機到 clientlinux 的話,那么就得要與 Router A 相同,增加那一條路由規則啰!如果是 Linux 的系統,那么如同 Router A 一樣的設定如下:
```
[root@workstation ~]# vim /etc/sysconfig/network-scripts/route-eth0
192.168.100.0/24 via 192.168.1.100 dev eth0
[root@workstation ~]# /etc/init.d/network restart
[root@www ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.100.0 192.168.1.100 255.255.255.0 UG 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0
```
最后只要 clientlinux 使用 ping 可以連到 workstation,同樣的,workstation 也可以 ping 到 clientlinux 的話,就表示你的設定是 OK 的啦!搞定!而透過這樣的設定方式,你也可以發現到一件事,那就是:『路由是雙向的,你必須要了解出去的路由與回來時的規則』。 舉例來說,在預設的情況下 (Router A 與 workstation 都沒有額外的路由設定時),其實封包是可以由 clientlinux 聯機到 workstation 的,但是 workstation 卻沒有相關的路由可以響應到 clientlinux ~所以上頭才會要你在 Router A 或者是 workstation 上面設定額外的路由規則啊!這樣說,瞭了吧? ^_^
用 Linux 作一個靜態路由的 Router 很簡單吧!以上面的案例來說,你在 Linux Router 上面幾乎沒有作什么額外的工作,只要將網絡 IP 與網絡接口對應好啟動,然后加上 IP Forward 的功能, 讓你的 Linux 核心支持封包轉遞,然后其他的工作咱們的 Linux kernel 就主動幫你搞定了!真是好簡單!
不過這里必須要提醒的是,如果你的 Linux Router 有設定防火墻的話, 而且還有設定類似 NAT 主機的 IP 偽裝技術,那可得特別留意,因為還可能會造成路由誤判的問題~ 上述的 Linux Router 當中『并沒有使用到任何 NAT 的功能』喔!特別給他留意到!
* * *
- 鳥哥的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 參考數據與延伸閱讀