FreeBSD NAT Step by Step安裝說明
Copyright 2001 by CLPeng
-----------------------------------------------------------------------------------------
前言:
這篇文章之前就Po過在其它論壇上了,
如果有什麼錯誤的地方請先進們不吝指教, 讓小弟能學習更多知識
由於我對FreeBSD也不是很熟,
修改核心的部份如果真要說明要講幾天幾夜,有興趣的朋友請自行去找
資料,小弟也不懂全部的核心內容, 這兒只挑出用得到的步驟罷了.
1. 重新修改核心檔案,應該是位於 /sys/i386/conf底下
有一個GENERIC檔案,通常我們都是拿這個檔當做範例做修改
,有空的話,建議您詳細奮櫧INT檔案,會有非常詳盡的說明.
讓我們先將GENERIC檔備份成另一個檔案,再拿另一個檔案來修改
(假設檔名為BSD),免得改錯了很麻煩
cp GENERIC BSD
2. 修改BSD檔案,可使用任何文字編輯器,在FreeBSD底下我習慣用ee
ee BSD
3. 找到一堆 options xxx xxx 的地方
在最下面加入
OPTIONS IPDIVERT
OPTIONS IPFIREWALL
4. 重新編譯安裝核心
(1) 確定BSD檔存在 /sys/i386/conf中
(2) config BSD
(3) 切換目錄至 /sys/compile/BSD
(4) make depend all install
(5) 去拿本小說順便泡杯茶來消磨時間吧!
5. 重新開機
Option 1 : shutdown -r now
Option 2 : reboot
Option 3 : halt
6. 要用來作NAT主機的機器一定要有兩片網路卡,這大伙兒應該了解吧!
網路卡在FreeBSD中代表的設備名為edx, 我們需要將其中一片網路卡
的IP位址設為實際IP,也就是可實際連外的合法IP,另一片則設定為當做
Local網路的閘道器, IP位址為虛擬IP , 舉例來說:
網卡1 : vr0 : 163.163.163.163
網卡2 : vr1 : 192.168.1.254 (虛擬IP怎麼去設定應該不必介紹了吧!)
6. 修改 /etc/rc.conf檔案,看看有沒有什麼不同的地方!
ifconfig_vr0="inet 163.163.163.163 netmask 255.255.255.0"
^^^
(這是網卡的名稱, 我是用DLink 530TX 驅動程式模組為ViaRhine)
ifconfig_vr1="inet 192.168.1.254 netmask 255.255.255.0"
hostname="nat.test.com.tw"
sendmail_enable="YES"
saver="logo"
defaultrouter="163.163.163.254"
sshd_enable="YES"
gateway_enable="YES"
firewall_enable="YES"
firewall_type="OPEN"
natd_enable="YES"
natd_interface="連外網卡的名稱 (如 vr0)"
7. 重新開機之後,看看dmesg有無任何錯誤,
要查看NAT弁酮O否被啟動最簡單的方法就是執行top指令
看看是否有個natd在程序中,如果答案為肯定,恭喜你,大尼i成!
答案為否定的話,請先檢查有無疏漏之處.
有任何問題的話,歡迎來信指教!
clpeng@taiwan.com
補充:
由小紅帽的hsiao兄指正, 其實利用一張網卡也能做到NAT
只要 ifconfig_vr0_alias0="inet 192.168.1.254 netmask 255.255.255.0" 即可!