iptables转发政策不起作用

时间:2013-10-18 07:41:42

标签: iptables netfilter tee

我需要一些帮助!有点挑战性的东西。

如果我有这样的配置,我不知道为什么数据包通过FORWARD链:

#set policy
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

#forward with TEE
iptables -t mangle -A PREROUTING -d $HOST1 -p udp --dport 162 -j TEE --gateway $HOST2

策略应该删除所有内容,因为FORWARD链上有一个过滤表丢弃策略,但它没有,所有内容都转到$ HOST2。

在刷新所有表后,我使用了上面的配置。我用“iptables -L”检查了它,但是没有用。

将来我想制作一些“-t过滤器-A FORWARD”规则,但首先我必须看到它会丢弃所有内容。

还有一个问题。

你觉得这会起作用吗?

#forward with TEE
iptables -t mangle -A PREROUTING -d $HOST1 -p udp --dport 162 -j TEE --gateway $HOST2
iptables -t mangle -A PREROUTING -d $HOST1 -p udp --dport 162 -j TEE --gateway $HOST3

将数据包转发到HOST3 ??

感谢您阅读本文! 亲切的问候!

1 个答案:

答案 0 :(得分:1)

在早期发生的事情很早就发生了。对我来说,你得到-j TEE行为是有道理的。 (顺便说一下:你的TEE链是什么样的?请注意,这与--tee路由选项不同。)

只要取出那个TEE规则,它就应该放弃原本会被转发的东西。那么您应该清楚添加过滤规则(确保密切关注规则的应用顺序)

对于你的第二个问题:它取决于TEE链末尾是否有RETURN语句。如果数据包将返回RETURN,那么是的,您将获得两个规则的行为。否则,它将首先跳转到TEE,而不是回到以下规则。