无法访问 iptables 后面的 BIND DNS 服务器

无法访问 iptables 后面的 BIND DNS 服务器

此行在 iptables 中

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT

我是否需要端口 53 以外的其他东西?它使用 telnet 回复,但 nslookup 给出超时。

答案1

如上所述,请参阅https://www.rfc-editor.org/rfc/rfc5966。要正确支持 DNS,您需要允许 TCP 和 UDP 使用端口 53。如果不这样做,将导致更高的数据包碎片,特别是在引入 IPv6 和 DNSSEC 后(请注意,自 9.2 以来的所有版本的 BIND 都会表明它支持 DNSSEC,即使您没有配置 DNSSEC(除非您将其编译出来))。当人们过滤掉碎片时,这尤其糟糕。

答案2

DNS 运行于UDP53 不是 tcp 53 将您的 iptables 规则更改为:

-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT

相关内容