5154

Good Luck To You!

Red Hat系统如何添加DNS服务器配置?

在Red Hat Enterprise Linux(RHEL)系统中,DNS配置是网络连接的基础环节,无论是企业级服务器还是桌面环境,正确配置DNS解析能确保系统高效访问互联网资源或内部网络服务,本文将详细介绍在RHEL系统中增加DNS服务器地址的多种方法,涵盖临时修改与永久生效方案,帮助用户根据实际需求选择合适的操作方式。

Red Hat系统如何添加DNS服务器配置?

通过/etc/resolv.conf文件配置DNS

/etc/resolv.conf是Linux系统中控制DNS解析的核心配置文件,直接编辑该文件可快速添加或修改DNS服务器地址。

查看当前DNS配置

使用cat /etc/resolv.conf命令查看现有配置,输出示例如下:

# Generated by NetworkManager
nameserver 8.8.8.8
search localdomain
options rotate

nameserver字段指定了当前使用的DNS服务器IP地址,search定义了域名搜索顺序,options包含解析选项(如rotate表示轮询多个DNS)。

编辑resolv.conf文件

使用vinano等文本编辑器打开文件:

sudo vi /etc/resolv.conf

在文件中添加新的nameserver条目,

nameserver 114.114.114.114  # 中国公共DNS
nameserver 8.8.8.8          # Google DNS
nameserver 208.67.222.222  # OpenDNS

注意:若文件由NetworkManager管理(通常以注释# Generated by NetworkManager开头),直接修改可能被覆盖,需先禁用自动生成功能(见“二、通过NetworkManager图形界面配置”部分)。

验证配置有效性

修改后,使用nslookupdig命令测试DNS解析:

nslookup www.redhat.com

若返回正确的IP地址(如132.183.105),说明DNS配置成功。

通过NetworkManager图形界面配置DNS

对于习惯图形化操作的用户,NetworkManager提供了直观的DNS配置界面,适用于桌面环境(如GNOME)。

打开网络设置

点击屏幕右上角的网络图标,选择“设置”(Settings),进入“网络”(Network)选项卡。

选择网络连接

在左侧列表中选择当前活跃的网络连接(如“Wired Connected”或“Wi-Fi”),点击右侧的齿轮图标进入详细设置。

Red Hat系统如何添加DNS服务器配置?

配置IPv4 DNS

在“IPv4 Settings”标签页中,找到“DNS servers”字段,点击“+”按钮添加新的DNS服务器IP地址,可添加多个DNS,按优先级排列(越靠前优先级越高)。

保存设置

点击“应用”(Apply)按钮保存更改,NetworkManager会自动更新/etc/resolv.conf文件,无需手动干预。

通过nmcli命令行工具配置DNS

对于服务器环境或自动化脚本场景,nmcli(NetworkManager CLI)是高效的配置工具,支持批量操作和脚本集成。

查看现有连接

首先列出所有网络连接:

nmcli connection show

输出示例如下:

NAME                UUID                                  TYPE      DEVICE
Wired Connection 1  a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8  ethernet  enp0s3

修改DNS配置

使用以下命令为指定连接添加DNS服务器:

sudo nmcli connection modify "Wired Connection 1" ipv4.dns "114.114.114.114 8.8.8.8"

若需删除原有DNS并替换为新值,可添加--forget参数:

sudo nmcli connection modify "Wired Connection 1" ipv4.dns "114.114.114.114" --forget

重启网络服务

修改完成后,重启网络连接使配置生效:

sudo nmcli connection down "Wired Connection 1" && sudo nmcli connection up "Wired Connection 1"

验证配置

使用nmcli查看DNS设置是否正确:

nmcli connection show "Wired Connection 1" | grep dns

输出应包含新增的DNS IP地址。

通过ifcfg-*配置文件永久配置DNS

对于需要持久化配置的场景(如虚拟机或容器),可直接编辑网络接口的配置文件(位于/etc/sysconfig/network-scripts/目录下)。

Red Hat系统如何添加DNS服务器配置?

定位配置文件

查找对应网络接口的配置文件,例如ifcfg-enp0s3

ls /etc/sysconfig/network-scripts/ifcfg-*

编辑配置文件

使用文本编辑器打开文件,添加或修改DNS1DNS2字段:

sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

示例配置:

TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=no       # 禁用从DHCP获取DNS
DNS1=114.114.114.114
DNS2=8.8.8.8
DOMAIN=localdomain

关键说明

  • PEERDNS=no:防止NetworkManager覆盖自定义DNS配置;
  • DNS1/DNS2:指定主备DNS服务器。

重启网络服务

保存文件后,重启网络服务使配置生效:

sudo systemctl restart network

常见问题与解决方案

修改resolv.conf后立即被覆盖?

/etc/resolv.conf文件顶部有# Generated by NetworkManager注释,说明其由NetworkManager自动生成,解决方法有两种:

  • 临时方案:使用chattr +i /etc/resolv.conf锁定文件,阻止修改(需root权限);
  • 永久方案:通过NetworkManager或ifcfg-*文件配置DNS,避免直接编辑resolv.conf

配置DNS后无法解析域名?

可能原因包括:

  • 防火墙阻挡:检查iptables或firewalld是否允许DNS流量(UDP 53端口):
    sudo firewall-cmd --list-all

    若未开放,添加规则:

    sudo firewall-cmd --add-service=dns --permanent
    sudo firewall-cmd --reload
  • DNS服务器故障:尝试ping DNS服务器IP(如ping 8.8.8.8),确认网络连通性;
  • 路由问题:检查默认网关是否正确,确保数据包能到达外部网络。

在RHEL系统中增加DNS服务器地址的方法多样,可根据使用场景选择合适的方式:

  • 临时修改:直接编辑/etc/resolv.conf(适合快速测试);
  • 图形化配置:通过NetworkManager界面(适合桌面用户);
  • 命令行自动化:使用nmcli(适合服务器或脚本场景);
  • 持久化配置:编辑ifcfg-*文件(适合虚拟机或容器)。

无论采用哪种方法,建议始终验证DNS配置的有效性,确保系统能正常解析域名。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年11月    »
12
3456789
10111213141516
17181920212223
24252627282930
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.