如何查看CentOS/RHEL系列服务器的网络配置文件中的DNS信息?

在 CentOS/RHEL 系列服务器中,DNS 信息主要存储在两个关键位置:网卡配置文件(永久配置)和DNS 解析文件(实时生效)。以下是具体查看方法:

一、查看永久生效的 DNS 配置(网卡配置文件)

DNS 服务器地址通常在网卡的配置文件中定义,重启网络服务后会自动同步到系统,是最核心的配置位置。
  1. 找到对应的网卡配置文件网卡配置文件位于 /etc/sysconfig/network-scripts/ 目录,命名格式为 ifcfg-<网卡名>(如 ifcfg-eth0ifcfg-ens33)。先通过以下命令确认服务器的网卡名称:
    bash
    ip link show  # 列出所有网卡,如eth0、ens33等
    
  2. 查看网卡配置文件中的 DNS 信息假设网卡名为 eth0,执行以下命令:
    bash
    cat /etc/sysconfig/network-scripts/ifcfg-eth0
    
  3. 识别 DNS 配置项配置文件中以 DNS1DNS2 开头的行即为 DNS 服务器地址,示例:
    ini
    # 其他配置项...
    DNS1=8.8.8.8    # 首选DNS服务器
    DNS2=114.114.114.114  # 备用DNS服务器
    
    这些配置会在网络服务启动 / 重启时,自动写入 /etc/resolv.conf 文件(见下文)。

二、查看当前生效的 DNS 配置(resolv.conf 文件)

/etc/resolv.conf 是系统实时使用的 DNS 解析配置文件,无论 DNS 信息来自网卡配置还是 DHCP 自动获取,最终都会在这里体现。
  1. 直接查看文件内容执行以下命令:
    bash
    cat /etc/resolv.conf
    
  2. 解析输出结果示例内容:
    bash
    # Generated by NetworkManager  # 由网络管理器自动生成
    nameserver 8.8.8.8            # 对应网卡配置中的DNS1
    nameserver 114.114.114.114    # 对应网卡配置中的DNS2
    
    • nameserver 后面的 IP 地址即为当前生效的 DNS 服务器。
    • 注意:直接修改此文件可能会被网络服务(如 NetworkManager)覆盖,永久修改需通过网卡配置文件

三、总结:两种方式的区别

查看方式 文件路径 特点
永久 DNS 配置(推荐) /etc/sysconfig/network-scripts/ifcfg-<网卡名> 需重启网络服务生效,不会被自动覆盖
当前生效 DNS 配置 /etc/resolv.conf 实时生效,但可能被网络服务自动更新
通过以上方法,可快速确认服务器的 DNS 配置信息。如果需要修改 DNS,建议编辑网卡配置文件中的 DNS1 和 DNS2 项,然后执行 systemctl restart network 或 nmcli c reload 使配置生效。
阅读剩余
THE END