如果你已經連接在某個區域網路上但是仍然想要使用在你個人的 Linux 機器上的 pppd 的話,你得要應付某些遞送封包的問題,從你的機器到你的區域網路(經過你的乙太網路界面)以及到遠端的 PPP 伺服器和更外面的世界.
這一節並不嘗試教你有關封包遞送的機制 - 它只處理一個簡單的,特定的遞送情況(靜態的)!
如果你不熟悉遞送機制的話,那麼我強烈地鼓勵你閱讀 Linux Network Administrator Guide (NAG). 同時 O'Reilly 的書 "TCP/IP Network Administration" 也以非常容易了解的方式涵蓋了這個主題.
靜態遞送路徑的基本規則是預設遞送路徑應該是指向網路位址號碼最多的那一個. 對於其它的網路則在遞送表格中輸入指定遞送路徑.
我唯一打算在這裡介紹的情況是你的 Linux 機器在一個沒有連上網際網路的區域網路上 - 而你想要在仍然連接著區域網路的情況下撥接到網際網路上供自己使用.
首先,確定你的乙太網路遞送路徑是設往能夠通過你的區域網路的指定網路位址 - 不是設往預設遞送路徑!
藉由發出 route 指令檢查之,你應該會看見如下的訊息:
[root@hwin /root]# route -n
Kernel routing table
Destination Gateway Genmask Flags MSS Window Use Iface
loopback * 255.255.255.0 U 1936 0 50 lo
10.0.0.0 * 255.255.255.0 U 1436 0 565 eth0
如果你的乙太網路界面 (eth0) 指向預設遞送路徑,(在 eth0 該行的第一列上會顯示 "default" 字樣)那麼你得要變更你的乙太網路起始指令稿使它指向特定的網路號碼而非預設遞送路徑(參照 Net2 HOWTO 以及 NAG).
這將允許 pppd 設立你的預設遞送路徑,如下所示:
[root@hwin /root]# route -n
Kernel routing table
Destination Gateway Genmask Flags MSS Window Use Iface
10.144.153.51 * 255.255.255.255 UH 488 0 0 ppp0
127.0.0.0 * 255.255.255.0 U 1936 0 50 lo
10.1.0.0 * 255.255.255.0 U 1436 0 569 eth0
default 10.144.153.51 * UG 488 0 3 ppp0
如同你所見到的,我們擁有經由 ppp0 到 PPP 伺服器(10.144.153.51)的主機遞送設定而且也擁有使用 PPP 伺服器作為閘道的預設網路遞送設定.
如果你的設定得要比此更複雜 - 閱讀已經提過有關遞送的文件並請教在你身旁的專家!
如果你的區域網路上已經有路由器,那麼在你那裡已經建立了通往寬廣網路世界的閘道. 你仍應把你的預設遞送路徑指往 PPP 界面 - 並且使其它的遞送路徑指定到由路由器服務的網路.
當你在現有的區域網路上設定一台 Linux 機器連結到網際網路上,你在不知不覺中已經對網際網路 - 以及在那裡的駭客們 - 開放了你的整個區域網路. 在你這樣做之前,我強烈地鼓勵你請教你的網路管理者並參考該處的安全策略. 如果你的 PPP 連線被成功地用來攻擊你的站台的話,那麼你最少也會招致同夥的使用者,網路及系統的管理者強烈的憤怒. 你也可能會發現你自己置身於非常嚴重的麻煩!
在你連接區域網路到網際網路上去之前,甚至是動態的連線你都應該要考慮安全的隱憂 - 因此早點參考 O'Reilly 的 "Building Internet Firewalls"!