我需要一些帮助!有点挑战性的东西。
如果我有这样的配置,我不知道为什么数据包通过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 ??
感谢您阅读本文! 亲切的问候!
答案 0 :(得分:1)
在早期发生的事情很早就发生了。对我来说,你得到-j TEE行为是有道理的。 (顺便说一下:你的TEE链是什么样的?请注意,这与--tee路由选项不同。)
只要取出那个TEE规则,它就应该放弃原本会被转发的东西。那么您应该清楚添加过滤规则(确保密切关注规则的应用顺序)
对于你的第二个问题:它取决于TEE链末尾是否有RETURN语句。如果数据包将返回RETURN,那么是的,您将获得两个规则的行为。否则,它将首先跳转到TEE,而不是回到以下规则。