在 CentOS/RHEL 系列服务器中,DNS 信息主要存储在两个关键位置:网卡配置文件(永久配置)和DNS 解析文件(实时生效)。以下是具体查看方法:
一、查看永久生效的 DNS 配置(网卡配置文件)
DNS 服务器地址通常在网卡的配置文件中定义,重启网络服务后会自动同步到系统,是最核心的配置位置。
-
找到对应的网卡配置文件网卡配置文件位于
/etc/sysconfig/network-scripts/目录,命名格式为ifcfg-<网卡名>(如ifcfg-eth0、ifcfg-ens33)。先通过以下命令确认服务器的网卡名称:baship link show # 列出所有网卡,如eth0、ens33等 -
查看网卡配置文件中的 DNS 信息假设网卡名为
eth0,执行以下命令:bashcat /etc/sysconfig/network-scripts/ifcfg-eth0 -
识别 DNS 配置项配置文件中以
DNS1、DNS2开头的行即为 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 自动获取,最终都会在这里体现。-
直接查看文件内容执行以下命令:bash
cat /etc/resolv.conf -
解析输出结果示例内容:bash
# Generated by NetworkManager # 由网络管理器自动生成 nameserver 8.8.8.8 # 对应网卡配置中的DNS1 nameserver 114.114.114.114 # 对应网卡配置中的DNS2nameserver后面的 IP 地址即为当前生效的 DNS 服务器。- 注意:直接修改此文件可能会被网络服务(如 NetworkManager)覆盖,永久修改需通过网卡配置文件。
三、总结:两种方式的区别
| 查看方式 | 文件路径 | 特点 |
|---|---|---|
| 永久 DNS 配置(推荐) | /etc/sysconfig/network-scripts/ifcfg-<网卡名> |
需重启网络服务生效,不会被自动覆盖 |
| 当前生效 DNS 配置 | /etc/resolv.conf |
实时生效,但可能被网络服务自动更新 |
通过以上方法,可快速确认服务器的 DNS 配置信息。如果需要修改 DNS,建议编辑网卡配置文件中的
DNS1 和 DNS2 项,然后执行 systemctl restart network 或 nmcli c reload 使配置生效。