Iptables
ip tables port fwd 重複數據包
我想將在埠 162 上接收到的 udp 數據包轉發到另一個 port.ex:8981
我已經執行了以下 cmd
iptables -A PREROUTING -t nat -p tcp --dport 162 -j REDIRECT --to-port 8981
我看到我現在在 8981 上收到重複的數據包..
有人可以指導我正確的做法嗎?
另外如何刪除上述規則?
TIA,/d
在有更多可用的診斷數據之前,我們將保留“重複數據包”問題,但規則刪除很容易。
要刪除 iptables 規則,只需將 替換
-A
為-D
:iptables -D PREROUTING -t nat -p tcp --dport 162 -j REDIRECT --to-port 8981
如果您要使用
-I N
,則可以使用iptables -D N
,但是如果隨後插入了任何規則,那將是有風險的。如果你真的搞砸了,甚至不知道
iptables
你執行了什麼命令(bash
有命令歷史記錄是有原因的……)那麼你可以像這樣列對外連結中的所有規則:iptables -t nat -L PREROUTING --line-numbers
這會讓你得到這樣的輸出:
Chain int2ext (1 references) num target prot opt source destination 1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED 2 ACCEPT all -- 192.0.2.0/24 0.0.0.0/0 3 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53 4 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
然後,找到與
num
要刪除的規則對應的列條目,然後執行iptables -t nat -D PREROUTING <num>