【VirtualBox】ゲストマシンのDNSサーバを使って名前解決できない

ネットワークの基本を勉強したくてDNSサーバを立ててみた。そして、見事にハマった。

背景

ネットワークについても知識を付けたいと思い、VirtualBoxでCentOS8マシンを作り、そこでDNSサーバを立てることにした。

参考書として、「28日で即戦力! サーバ技術者養成講座 [改訂3版]」を見ながらDNSサーバを立ててみた。

課題

ゲストマシンでは正常に構築できたっぽいのに、ホストマシンからゲストマシンのDNSを使って名前解決できない。

$ ping h2g.example.com
ping: cannot resolve h2g.example.com: Unknown host

原因

  • firewallでポート53が閉じていた

対策

  • ゲストOSのfirewallでDNSポート(53)を開放する。

# firewall-cmd --zone=public --add-service=dns --permanent
success
# firewall-cmd --reload
success
# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: enp0s3 enp0s8
  sources:
  services: cockpit dhcpv6-client dns ssh
  ports:
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

参考サイト