RHEL如何永久添加DNS服务器地址?

在 Red Hat Enterprise Linux (RHEL) 系统中,正确配置域名系统(DNS)是确保网络连通性、软件更新、服务访问等基础功能正常运行的关键步骤,DNS负责将人类易于记忆的域名(如 www.redhat.com)解析为机器能够识别的IP地址,本文将详细介绍在RHEL系统中添加和配置DNS服务器的几种主流方法,涵盖从临时测试到永久生效的各种场景,并重点推荐适用于现代RHEL版本的最佳实践。

RHEL如何永久添加DNS服务器地址?


临时修改 /etc/resolv.conf(适用于快速测试)

/etc/resolv.conf 是Linux系统中用于配置DNS解析的核心文件,系统上的所有解析请求(除非被特殊配置覆盖)都会首先查询此文件中定义的DNS服务器,直接编辑此文件是更改DNS最快的方法,但通常具有临时性。

操作步骤:

  1. 使用文本编辑器(如 vinano)打开 /etc/resolv.conf 文件:

    sudo vi /etc/resolv.conf
  2. 在文件中添加或修改 nameserver 行,每一行代表一个DNS服务器的IP地址,系统会按照从上到下的顺序进行查询。

    # 示例配置
    nameserver 8.8.8.8      # Google Public DNS
    nameserver 114.114.114.114 # 114 DNS
    nameserver 192.168.1.1    # 局域网网关(如果其提供DNS服务)
  3. 保存并退出文件,更改将立即生效。

重要提示:
在现代RHEL版本(如RHEL 7, 8, 9)中,/etc/resolv.conf 文件通常由 NetworkManager 服务动态管理,这意味着当您重启网络服务或重启系统后,NetworkManager 可能会根据其自身的网络连接配置覆盖您手动在此文件中的修改,此方法仅推荐用于临时的故障排除或快速测试,不作为永久配置方案。


使用 NetworkManager 永久配置(推荐方法)

NetworkManager 是RHEL及其衍生系统中用于管理网络连接的默认工具,通过其命令行界面 nmcli 进行配置,可以确保DNS设置在网络重启或系统重启后依然保持不变,是当前最推荐的永久性配置方法。

操作步骤:

  1. 查看当前网络连接名称:
    需要知道要修改的网络连接的名称,使用以下命令列出所有活动和非活动的连接:

    nmcli connection show

    输出可能类似于:

    NAME    UUID                                  TYPE      DEVICE
    ens160  5a062d2a-4c3b-4f4a-8c4d-8c4d8c4d8c4d  ethernet  ens160

    在此示例中,连接名称为 ens160

    RHEL如何永久添加DNS服务器地址?

  2. 修改DNS服务器设置:
    使用 nmcli connection modify 命令来为指定的连接添加DNS服务器,可以同时设置多个DNS地址,用空格隔开。

    # 使用 nmcli 为 ens160 连接设置两个DNS服务器
    sudo nmcli connection modify ens160 ipv4.dns "8.8.8.8 114.114.114.114"
    • ipv4.dns 参数用于设置IPv4的DNS服务器。
    • 如果需要设置IPv6的DNS服务器,应使用 ipv6.dns 参数。
  3. (可选)自动更新 /etc/resolv.conf:
    为了确保 NetworkManager 自动管理 resolv.conf,可以设置 ipv4.ignore-auto-dnsno(这通常是默认值)。

    sudo nmcli connection modify ens160 ipv4.ignore-auto-dns no
  4. 应用配置:
    修改完成后,需要重新激活网络连接以使更改生效。

    sudo nmcli connection up ens160

    或者,也可以重启整个 NetworkManager 服务:

    sudo systemctl restart NetworkManager
  5. 验证配置:

    • 检查连接的DNS设置是否已更新:
      nmcli connection show ens160 | grep ipv4.dns

      输出应显示您刚刚设置的DNS地址。

    • 查看 /etc/resolv.conf 文件,确认其内容已自动更新:
      cat /etc/resolv.conf

      应包含由 NetworkManager 生成的 nameserver 条目,并附带注释表明其由 NetworkManager 管理。


通过图形用户界面(GUI)配置

对于安装了桌面环境的RHEL系统,也可以通过图形界面轻松配置DNS。

  1. 打开“设置”应用程序。
  2. 导航至“网络”或“Wired”选项。
  3. 点击您正在使用的有线连接旁边的齿轮图标。
  4. 在弹出的窗口中,选择“IPv4”或“IPv6”标签页。
  5. 将DNS方法设置为“自动(仅DHCP地址)”以外的选项,如“手动”。
  6. 在“DNS”服务器字段中,输入您希望使用的DNS服务器IP地址,多个地址用逗号或空格分隔。
  7. 点击“应用”按钮保存更改。

编辑网络脚本文件(适用于旧版或特定场景)

在RHEL 6及更早版本中,网络配置主要通过 /etc/sysconfig/network-scripts/ 目录下的脚本文件(如 ifcfg-eth0)进行,虽然在新版RHEL中不推荐,但在某些禁用了NetworkManager的特殊环境中可能仍会用到。

操作步骤:

  1. 找到对应的网络接口配置文件,ifcfg-ens160

    RHEL如何永久添加DNS服务器地址?

    sudo vi /etc/sysconfig/network-scripts/ifcfg-ens160
  2. 在文件中添加或修改以下行:

    DNS1=8.8.8.8
    DNS2=114.114.114.114
  3. 保存文件后,重启网络服务以应用更改:

    sudo systemctl restart network

配置方法对比

方法 配置文件/命令 持久性 推荐场景
临时修改 /etc/resolv.conf 临时,易被覆盖 快速测试、临时故障排查
NetworkManager nmcli 永久 RHEL 7/8/9 推荐,服务器和桌面环境通用
图形界面 GNOME/KDE 设置 永久 安装了桌面环境的用户
网络脚本 /etc/sysconfig/network-scripts/ifcfg-* 永久 RHEL 6及更早版本,或禁用NetworkManager的环境

验证与故障排除

完成DNS配置后,务必进行验证以确保其正常工作。

  • 使用 nslookupdig 命令:

    nslookup www.redhat.com
    dig www.redhat.com

    如果命令能够成功返回域名对应的IP地址,则说明DNS配置正确。

  • 检查服务状态:
    确保 NetworkManager 服务正在运行:

    systemctl status NetworkManager

相关问答FAQs

为什么我直接修改了 /etc/resolv.conf,重启后配置就丢失了?
解答: 这是因为在现代RHEL系统中,/etc/resolv.conf 文件默认由 NetworkManager 服务动态生成和管理,当系统启动或网络状态发生变化时,NetworkManager 会根据其内部存储的网络连接配置(通过 nmcli 或GUI设置)来重写此文件,任何直接对 /etc/resolv.conf 的手动修改都会被覆盖,要实现永久配置,必须使用 nmcli 等工具修改 NetworkManager 的连接配置,而不是直接编辑 resolv.conf

我可以同时配置 IPv4 和 IPv6 的 DNS 服务器吗?
解答: 当然可以,IPv4和IPv6的DNS服务器是分开配置的,使用 nmcli 时,您可以通过不同的参数分别设置它们,为名为 ens160 的连接同时设置IPv4和IPv6 DNS,可以执行以下两条命令:

# 设置 IPv4 DNS
sudo nmcli connection modify ens160 ipv4.dns "8.8.8.8 8.8.4.4"
# 设置 IPv6 DNS
sudo nmcli connection modify ens160 ipv6.dns "2001:4860:4860::8888 2001:4860:4860::8844"

配置完成后,重新激活连接,/etc/resolv.conf 文件中就会同时包含 nameserver(IPv4)和 nameserver(IPv6地址)条目,系统将能够解析两种类型的地址记录。

来源互联网整合,作者:小编,如若转载,请注明出处:https://www.aiboce.com/ask/261739.html

Like (0)
小编小编
Previous 2025年10月24日 18:34
Next 2025年10月24日 18:37

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注