淺談 iptables - 3個應用

来源:百度文库 编辑:神马文学网 时间:2024/04/29 18:33:09
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
# 如果只有一張網卡則需要加入以下這一行
ifconfig eth0:0 192.168.1.1 netmask 255.255.255.0
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
應用3:讓外界的電腦可以存取區域網路內的某部server(實作轉址,轉port)
此種做法有保護內部 server 的效果
架構圖:

所需設備: 一台 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
iptables -t nat -A PREROUTING -i eth0 -p tcp -d 真實IP --dport 80 -j DNAT --to-destination 192.168.1.13:80
from: http://poterp.iem.mit.edu.tw/linux/iptables.htm