上一篇
如何在Linux系统中快速查看DNS服务器地址?
- 行业动态
- 2025-04-22
- 4465
在Linux系统中,可通过终端命令查看DNS服务器地址,常用方法包括:使用
cat /etc/resolv.conf
查看配置文件,或运行nmcli dev show | grep DNS
获取NetworkManager配置,也可通过systemd-resolve --status
或resolvectl status
查看systemd-resolved服务管理的DNS信息。 通过/etc/resolv.conf
文件查看
这是最传统且直接的方式,该文件记录了系统当前使用的DNS服务器地址。
- 打开终端,输入命令:
cat /etc/resolv.conf
- 查找以
nameserver
开头的行,nameserver 8.8.8.8 nameserver 8.8.4.4
注意:某些系统(如使用NetworkManager或systemd-resolved的发行版)可能自动生成此文件,需结合其他方法验证。
使用nmcli
工具(适用于NetworkManager用户)
NetworkManager是多数现代Linux发行版的默认网络管理工具。
- 输入命令:
nmcli dev show | grep DNS
- 输出结果会显示当前连接的DNS配置,
IP4.DNS[1]: 192.168.1.1 IP4.DNS[2]: 1.1.1.1
通过systemd-resolve
查询
使用systemd-resolved
服务的系统(如Ubuntu)可通过以下命令查看:
- 输入命令:
systemd-resolve --status
- 在输出中找到当前网络接口(如eth0、wlan0)对应的DNS服务器地址。
使用dig
命令测试
dig
是DNS诊断工具,可用于查看实际使用的DNS服务器:
- 输入命令:
dig +short NS example.com
或查看本地DNS缓存服务器:
dig +short chaos txt DNS.resolver
检查网络管理器GUI
对于桌面用户:
- 打开网络设置(如GNOME的“Settings > Network”)。
- 选择当前连接,点击“齿轮”图标,在“IPv4/IPv6”选项卡中查看手动或自动分配的DNS地址。
注意事项
- 权限问题:部分命令需
sudo
权限才能执行。 - 动态配置:如果使用DHCP,DNS服务器可能由路由器自动分配。
- 多工具并存:某些系统可能同时运行
systemd-resolved
和NetworkManager
,建议以实际生效的配置为准。
常见问题
Q:为什么/etc/resolv.conf
中的DNS地址与实际使用的不一致?
A:可能由于网络管理工具(如NetworkManager)覆盖了该文件,或启用了DNS转发功能。
Q:如何验证DNS是否生效?
A. 使用nslookup
或dig
查询域名,观察返回的解析结果和服务器信息。
参考资料
- Linux手册页:
man resolv.conf
,man nmcli
- systemd-resolved官方文档
- NetworkManager配置指南
通过以上方法,您可以准确获取Linux系统的DNS服务器配置,并根据需要进一步优化网络设置。