2013-10-18 1071 views
2

我需要一些幫助!有點挑戰性的東西。iptables轉發策略不起作用

我不知道爲什麼包走線槽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過濾器 - 前進」的規則,但首先我必須看到它放棄了一切。

還有一個問題。

您認爲這樣做有效嗎?

#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

在破損中發生的事情發生得很早。對我來說,你得到-j TEE行爲是有道理的。 (順便說一句:你的TEE鏈是什麼樣的?請注意,這是不同於 - 對等路由選項。)

只要取出TEE規則,它應該放棄否則會得到FORWARD的所有東西。那麼你應該清楚添加你的過濾規則(確保密切關注規則的應用順序)

對於你的第二個問題:它取決於在TEE結束時是否有RETURN語句鏈。如果數據包將返回,那麼是的,你會得到這兩個規則的行爲。否則,它將首先跳到TEE,而不回到以下規則。