我正在用这样的 iptables 设置标记
iptables -t mangle -A POSTROUTING -d 192.168.1.143 -j MARK --set-mark 10
Run Code Online (Sandbox Code Playgroud)
如果我想清除我所做的就是删除所有
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
Run Code Online (Sandbox Code Playgroud)
而不是删除所有规则来清除这个,如何只删除一个标记?
您可以删除该规则。
iptables -L -t mangle --line-numbers
将为您的 mangle 表中的每个规则提供一个编号,然后使用
iptables -t mangle -D POSTROUTING x
Run Code Online (Sandbox Code Playgroud)
其中 x 是您定义标记的规则编号。
您还可以使用以下语法:
iptables -t mangle -D POSTROUTING -d 192.168.1.143 -j MARK --set-mark 10
Run Code Online (Sandbox Code Playgroud)
(注意 -A 改为 -D,其他都一样)
如果它在您最近的历史记录中,则此格式很有用,这样可以轻松向后滚动并将 A 更改为 D。(即,当您测试规则时)