-j ACCEPT
iptables -P FORWARD DROP
5.3 三大“纪律”五项“注意”
三大“纪律”——专表专用
filter
nat
mangle
五项“注意”——注意数据包的走向
PREROUTING
INPUT
FORWARD
OUTPUT
POSTROUTING
5.4 其他注意事项
养成好的习惯
iptables -vnL
iptables -t nat -vnL
iptables-save
注意逻辑顺序
iptables -A INPUT -p tcp --dport xxx -j ACCEPT
iptables -I INPUT -p tcp --dport yyy -j ACCEPT
学会写简单的脚本
6. FAQ.1
Q:我设置了 iptables -A OUTPUT -d 202.xx.xx.xx -j DROP
为何内网用户还是可以访问那个地址?
A:filter 表的 OUTPUT 链是本机访问外面的必经之路,内网数据不经过该链
Q:我添加了 iptables -A FORWARD -d 202.xx.xx.xx -j DROP
为何内网用户还是可以访问那个地址?
A:检查整个规则是否存在逻辑错误,看是否在 DROP 前有 ACCEPT
Q:iptables -t nat -A POSTROUTING -i eth1 -o eth2 -j MASQUERADE
这条语句为何报错?
A:POSTROUTING 链不支持“流入接口” -i 参数
同理,PREROUTING 链不支持“流出接口” -o 参数
6. FAQ.2
Q:我应该怎么查看某个模块具体该如何使用?
A:ipitables -m 模块名 -h
Q:执行 iptables -A FORWARD -m xxx -j yyy
提示 iptables: No chain/target/match by that name
A:/lib/modules/`uname -r`/kernel/net/ipv4/netfilter 目录中,
缺少与 xxx 模块有关的文件,或缺少与 yyy 动作有关的文件
名字为 ipt_xxx.o(2.4内核) 或 ipt_yyy.ko(2.6内核)
Q:脚本写好了,内网上网没问题,FTP 访问不正常,无法列出目录,为什么?
A:缺少 ip_nat_ftp 这个模块,modprobe ip_nat_ftp
6. FAQ.3










