1、前言
NAT 伺服器主要是用來簡化及保有 IP 位址,它可讓原本無法上網且使用內部IP位址的主機可以成功的連接 Internet。如此將大大減少 IP 位址的需求,因為基本上整個內部網路都可藉 NAT 上的一個外部 IP 來連至 Internet,FreeBSD 內建 IPFW,因此我們可以很輕鬆設定一個簡單的防火牆,但要了解防火牆只是限制要開放 (禁止) 哪些服務、或是IP,但若您的規則沒有設定好,當然如同虛設,本篇實作只是說明如何達成 NAT 功能,關於 NAT 可參考站內文章 NAT 伺服器的原理與運作流程。文章目錄
1、前言2、實作環境
3、安裝及設定
步驟1.編輯 kernel 檔案
步驟2.編輯 /etc/rc.conf
4、參考
2、實作環境
- FreeBSD 4.8-RELEASE
3、安裝及設定
步驟 1. 編輯 kernel 檔案
首先先在 kernel 檔中加入下列內容。 options IPFIREWALL //支援防火牆
options IPFIREWALL_DEFAULT_TO_ACCEPT //預設允許所有封包通過
options IPFIREWALL_VERBOSE //在 ipfw 中設定要記錄哪些封包
options IPDIVERT //支援 NAT
然後再去編譯 kernel 檔。
# config newkernel
# cd ../../compile/newkernel
# make depend all install
# make clean
步驟 2. 編輯 /etc/rc.conf
修改 /etc/rc.conf 以便系統重新開機時能自動啟動 IPFW 及相關服務。# vi /etc/rc.conf //修改 rc.conf 內容如下
gateway_enable="YES" //設定本主機可做為 Gateway
firewall_enable="YES" //這四行是防火牆的設定
firewall_type="OPEN" //打開 Firewall
natd_interface="fxp0" //定義 NAT 網路卡
natd_enable="YES" //開機啟動 NAT 服務
### WAN NIC
defaultrouter="61.60.59.254"
hostname="nat.weithenn.org"
ifconfig_fxp0="inet 61.60.59.58 netmask 255.255.255.0"
### LAN NIC
ifconfig_xl0="inet 192.168.1.254 netmask 255.255.255.0"
再看看 /etc/service 中是否有 natd 8668/divert 這一行,若沒有就加上去吧。 如此 NAT 應該就可成功了。