我尝试按照以下规则打开我的dns端口:
iptables -A INPUT -p udp -m state --state NEW --dport 53 -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW --dport 53 -j ACCEPT service iptables save service iptables restart
但它不起作用,然后我尝试从以下打开DNS:
system-config-firewall-tui
它工作。
iptables和防火墙有什么关系?
system-config-firewall只是iptables的一个前台,它是netfilter的前端,也就是linux内核中的防火墙。 无论如何,你打开DNS的规则是错误的,它应该是:
iptables -I INPUT -p udp -m state --state NEW --dport 53 -j ACCEPT iptables -I INPUT -p tcp -m state --state NEW --dport 53 -j ACCEPT
你必须使用-I选项,这意味着在链的开头插入。 如果在append之前的最后一条规则是放弃所有stream量,那么您的新规则将永远不会被调用。
您可以通过运行下面的查询来检查您执行的命令是否有效。
iptables -L