2.2. 在断开连接的环境中的 DNS 连接问题故障排除


如果您在断开连接的环境中配置 nmstate 时遇到 DNS 连接问题,您可以配置 DNS 服务器来解析域 root-servers.net 的名称服务器列表。

重要

确保 DNS 服务器包含 root-servers.net 区域的名称服务器(NS)条目。DNS 服务器不需要将查询转发到上游解析器,但服务器必须为 NS 查询返回正确的回答。

2.2.1. 配置名为 server 的 bind9 DNS

对于配置为查询 bind9 DNS 服务器的集群,您可以将 root-servers.net 区域添加到至少一个 NS 记录的配置文件。例如,您可以使用 /var/named/named.localhost 作为已匹配此条件的区域文件。

流程

  1. 运行以下命令,在 /etc/named.conf 配置文件末尾添加 root-servers.net 区域:

    $ cat >> /etc/named.conf <<EOF
    zone "root-servers.net" IN {
        	type master;
        	file "named.localhost";
    };
    EOF
    Copy to Clipboard Toggle word wrap
  2. 运行以下命令重启 named 服务:

    $ systemctl restart named
    Copy to Clipboard Toggle word wrap
  3. 运行以下命令确认 root-servers.net 区已存在:

    $ journalctl -u named|grep root-servers.net
    Copy to Clipboard Toggle word wrap

    输出示例

    Jul 03 15:16:26 rhel-8-10 bash[xxxx]: zone root-servers.net/IN: loaded serial 0
    Jul 03 15:16:26 rhel-8-10 named[xxxx]: zone root-servers.net/IN: loaded serial 0
    Copy to Clipboard Toggle word wrap

  4. 运行以下命令,验证 DNS 服务器是否可以解析 root-servers.net 域的 NS 记录:

    $ host -t NS root-servers.net. 127.0.0.1
    Copy to Clipboard Toggle word wrap

    输出示例

    Using domain server:
    Name: 127.0.0.1
    Address: 127.0.0.53
    Aliases:
    root-servers.net name server root-servers.net.
    Copy to Clipboard Toggle word wrap

2.2.2. 配置 dnsmasq DNS 服务器

如果您使用 dnsmasq 作为 DNS 服务器,您可以将 root-servers.net 域的解析委派给另一个 DNS 服务器,例如,使用您指定的 DNS 服务器创建新配置文件来解析 root-servers.net

  1. 运行以下命令,创建一个将域 root-servers.net 委派给另一个 DNS 服务器的配置文件:

    $ echo 'server=/root-servers.net/<DNS_server_IP>'> /etc/dnsmasq.d/delegate-root-servers.net.conf
    Copy to Clipboard Toggle word wrap
  2. 运行以下命令重启 dnsmasq 服务:

    $ systemctl restart dnsmasq
    Copy to Clipboard Toggle word wrap
  3. 运行以下命令确认 root-servers.net 域已被委派给另一个 DNS 服务器:

    $ journalctl -u dnsmasq|grep root-servers.net
    Copy to Clipboard Toggle word wrap

    输出示例

    Jul 03 15:31:25 rhel-8-10 dnsmasq[1342]: using nameserver 192.168.1.1#53 for domain root-servers.net
    Copy to Clipboard Toggle word wrap

  4. 运行以下命令,验证 DNS 服务器是否可以解析 root-servers.net 域的 NS 记录:

    $ host -t NS root-servers.net. 127.0.0.1
    Copy to Clipboard Toggle word wrap

    输出示例

    Using domain server:
    Name: 127.0.0.1
    Address: 127.0.0.1#53
    Aliases:
    root-servers.net name server root-servers.net.
    Copy to Clipboard Toggle word wrap

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat