查看linux系统dns命令
查看linux系统dns命令详细介绍
在 Linux 系统中,查看 DNS 配置的常用命令及方法如下:
1. 查看当前生效的 DNS 服务器(最直接)
方法一:查看
/etc/resolv.conf 文件
bash
/etc/resolv.conf
- 该文件包含当前系统使用的 DNS 服务器地址(如
nameserver 8.8.8.8)。 - 注意:部分系统(如使用
systemd-resolved或 NetworkManager)会自动生成此文件,直接修改可能被覆盖。
2. 使用 systemd-resolved(适用于 systemd 系统,如 Ubuntu 20.04+、CentOS 7+)
方法二:查看详细 DNS 状态
bash
systemd-resolve
或
bash
resolvectl status
- 显示当前 DNS 服务器、域名解析策略、缓存等信息。
方法三:仅查看 DNS 服务器列表
bash
resolvectl dns
3. 使用 NetworkManager(适用于图形化环境或 NM 管理的网络)
方法四:查看指定网络接口的 DNS 配置
bash
nmcli dev show 接口名
- 替换
<接口名>为实际网卡名称(如enp0s3、wlan0)。
方法五:查看所有连接的 DNS 设置
bash
nmcli con show
- 找到目标连接,查看
DNS字段。
4. 查看网络接口配置文件(适用于手动配置或静态 IP 环境)
方法六:Debian/Ubuntu(
netplan 或传统
ifupdown)
netplan配置(通常在/etc/netplan/*.yaml):bash/etc/netplan/*.yaml- 传统
ifupdown配置(/etc/network/interfaces):bash/etc/network/interfaces
方法七:Red Hat/CentOS(
ifcfg 文件)
bash
/etc/sysconfig/network-scripts/ifcfg-接口名
- 查看
DNS1、DNS2等字段。
5. 测试 DNS 解析(辅助验证)
方法八:使用
dig 或
nslookup 检查域名解析
bash
example.comexample.com
总结
- 快速查看当前 DNS 服务器:首选
cat /etc/resolv.conf或resolvectl dns。 - 动态环境(如 DHCP):DNS 可能由路由器分配,通过
systemd-resolved或 NetworkManager 管理。 - 静态配置:检查网络接口配置文件(如
netplan、ifcfg)。
根据 Linux 发行版和网络管理工具的不同,选择对应的方法即可。