iptables 愚蠢的错误(iptables -A INPUT -j ACCEPT)

iptables 愚蠢的错误(iptables -A INPUT -j ACCEPT)
[root@router ~]# iptables -A INPUT -j ACCEPT
iptables: No chain/target/match by that name.

这怎么可能?我重新编译了内核(3.11.8)并将 iptables 更新到 1.4.16。奇怪的是,如果我手动输入上述规则/etc/sysconfig/iptables并发出命令/etc/init.d/iptables restart(我在 CentOS 6.4 上),它就会起作用!它会插入规则。

我的lsmod | grep ipt

iptable_mangle         12695  1 
ipt_MASQUERADE         12759  3 
iptable_nat            12810  1 
nf_nat_ipv4            13263  1 iptable_nat
nf_nat                 25997  3 ipt_MASQUERADE,iptable_nat,nf_nat_ipv4
nf_conntrack           95633  7 xt_state,ipt_MASQUERADE,iptable_nat,nf_nat_ipv4,nf_nat,nf_conntrack_ipv4,xt_conntrack
iptable_filter         12810  1 
ip_tables              27213  3 iptable_mangle,iptable_nat,iptable_filter

iptables -L输出:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  

答案1

找到问题了。基本上,我做了一个make uninstalliptables 1.4.16 版本,并从源代码编译了 1.4.20 版本(目前可用的最新版本)。现在它运行正常。

相关内容