iptables 這個指令, 如同以下用 man 查詢所見, 它用來過濾封包和做NAT Network Address Translation(網路位址轉譯), 這個指令的應用很多, 可以做到很多網路上的應用.
iptables - administration tool for IPv4 packet filtering and NAT
應用1:讓地區網路內的電腦以一個真實IP來共用頻寬(實作NAT)
架構圖:
所需裝置: 一台 Linux server , 2張網路卡
網卡1 : eth0 , 使用真實IP , 網卡2 : eth1 , 使用 192.168.1.254
設定: 在 /etc/rc.d/rc.local 寫入以下幾行
echo "1" > /proc/sys/net/ipv4/ip_forward
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE
應用2:讓地區網路內的電腦以一個ADSL來共用頻寬(實作NAT)
這個例子和上個例子很像, 只是某一個設定要做修改
架構圖:
所需裝置: 一台 Linux server , 2張網路卡
網卡1 : eth0 , 使用真實IP , 網卡2 : eth1 , 使用 192.168.1.254
設定: 在 /etc/rc.d/rc.local 寫入以下幾行
echo "1" > /proc/sys/net/ipv4/ip_forward
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.1.0/24 -j MASQUERADE