NAT表
1、指定表
iptables -t nat
2、指定操作命令
-A
-D
-R
-I
-L
3、规则匹配器
匹配源地址和目的地址 : -s -d
匹配网络接口 : PREROUTING链 -i 匹配进来的网络接口
POSTROUTING链 -o 匹配出去的网络接口
匹配协议及端口 : -p 匹配协议,udp和 tcp协议,还可以用--sport 和 --dport 来匹配源端口和目的端口。
4、目标动作
POSTROUTING链可使用的目标动作
1)-j SNAT --to-source/--to IP1[-IP2]:[port1[-port2]]
eg. iptables -t nat -A POSTROUTING -p tcp -o eth0 -j SNAT \
--to 192.236.50.155-194.236.50.160:1024-32000
2) -j MASQUERADE (即IP伪装),MASQUERADE目标只能用于动态分配IP地址的情况,如拨号服务队,静态IP地址需用SNAT。且无需为IP伪装明确指定源地址,它会使用包送出的那个接口地址作为源地址。
eg. iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
PREROUTING链可使用的目标动作
1)-j DNAT --to-destinatio/--to IP1[-IP2]:[port1[-port2]]
eg. iptables -t nat -A PREROUTING -p tcp -d 15.45.23.67 --dport 80
-j DNAT --to-destination 192.168.1.1-192.168.1.10
作用:可以使外部网络用户能够访问隐藏在内部网中的服务器。
2)-j REDIRECT --to-port port-number
REDIRECT目标将数据包重定到IP地址为进入系统时的网络接口的IP地址,目标端口改写为指定目的端口(port-number)。进行完此目标动作后,将不再比对其它规则,直接跳往POSTROUTING链。
eg. iptables -t NAT -A PREROUTING -i eth1 -p tcp -s 192.168.1.0/24 --dport 80 -j REDIRECT --to-port 3128
作用:将发送到进入80端口的WEB传输重定向到Squid(透明)代理。