尽管防火墙D正在运行,所有 DNS 查询均失败并被防火墙阻止。在容器中运行tcpdump -i docker0
时运行会显示ping google.com
21:27:02.683342 IP 172.17.0.2.35118 > google-public-dns-a.google.com.domain: 54430+ AAAA? google.com. (28)
21:27:02.683399 IP 172.17.0.1 > 172.17.0.2: ICMP host google-public-dns-a.google.com unreachable - admin prohibited filter, length 64
8.8.8.8
例如,Ping或任何其他绝对 IP 都可以正常工作。
如果我明确将docker0
或添加172.17.0.0/16
到trusted
区域,请求就会通过。但是,同一发行版 (openSUSE Tumbleweed) 上的另一台机器运行正常。
我仔细检查了我的 FirewallD 配置,没有提到该子网或docker0
接口。我真的不知道发生了什么,也不知道该去哪里查看。您可以在下面找到我活动的 FirewallD 规则。
sudo firewall-cmd --get-active-zones
public
sudo firewall-cmd --zone=public --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: wlp4s0
sources:
services: dhcpv6-client
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules: