尝试让 wifidog 安装正常运行。我们成功了,但在将 bash 历史记录重写到安装脚本时,我们不断遇到 iptables 问题。
[root@wifidogdevel ~]# iptables -t mangle -D WiFiDog_eth1_Outgoing -s 192.168.1.254 -m mac --mac-source 00:24:E8:B6:18:A2 -j MARK --set-mark 2
iptables: No chain/target/match by that name
但:
iptables -L -t mangle
[...]
Chain WiFiDog_eth1_Outgoing (1 references)
target prot opt source destination
iptables -L -t nat
[...]
Chain WiFiDog_eth1_Outgoing (1 references)
target prot opt source destination
WiFiDog_eth1_WIFI2Router all -- anywhere 192.168.1.1
WiFiDog_eth1_WIFI2Internet all -- anywhere anywhere
对我来说,这说明确实存在一个同名的链和目标。那么,我错过了什么匹配项?
答案1
您说有同名的链和目标,但上面的输出中却没有。您的命令是一条指令,用于从WiFiDog_eth1_Outgoing
mangle 表的链中删除规则
-s 192.168.1.254 -m mac --mac-source 00:24:E8:B6:18:A2 -j MARK --set-mark 2
但是根据您的 iptables -L 输出,在 mangle 表中的链中没有规则WiFiDog_eth1_Outgoing
。因此,iptables 非常正确地抱怨它无法从该链和表中删除规则,因为它不存在。
您可能需要考虑不是在多个表中重复链名 - 这似乎很容易引起混淆!