Linux怎么查DNS地址?如何查看本机DNS服务器IP

在Linux系统中,查询DNS服务器地址最直接的方法是通过查看/etc/resolv.conf文件或使用systemd-resolve命令,前者适用于传统配置,后者适用于现代 systemd 系统。

很多刚接触 Linux 的朋友在排查网络故障时,往往卡在不知道当前系统到底在用什么 DNS 服务器,这就像去医院看病不知道挂哪个科室一样,方向错了,后面的努力都是白费,Linux 的 DNS 配置并没有 Windows 那么直观的图形界面,但它背后的逻辑非常清晰,只要掌握了几个关键命令和配置文件的位置,你就能像老网管一样,一眼看穿网络的“底细”。

Linux如何挑选最快的DNS//Linux查看修改DNS配置
加载中
Linux如何挑选最快的DNS//Linux查看修改DNS配置

传统方式:直接读取 resolv.conf 配置文件

这是最经典、也最通用的方法,在绝大多数 Linux 发行版中,/etc/resolv.conf 是系统的 DNS 解析核心配置文件,它记录了系统在进行域名解析时,应该优先联系哪台 DNS 服务器。

使用 cat 命令查看文件内容

你可以直接在终端中输入以下命令:

cat /etc/resolv.conf

输出结果通常长这样:

nameserver 8.8.8.8
nameserver 114.114.114.114
search localdomain

这里的 nameserver 后面跟随的 IP 地址,就是系统正在使用的 DNS 服务器地址,如果有多个 nameserver 行,系统会按照从上到下的顺序依次尝试,如果第一个 DNS 无响应,才会尝试第二个。

注意事项:文件可能被覆盖

需要注意的是,在某些使用 NetworkManager 或 systemd-networkd 的系统上,/etc/resolv.conf 可能只是一个符号链接(Symlink),指向 /run/systemd/resolve/stub-resolv.conf 或其他动态生成的文件,这意味着你直接修改这个文件,重启网络服务后可能会失效,理解它背后的管理机制比单纯修改文件更重要。

现代方式:使用 systemd-resolve 命令查询

随着 systemd 成为主流 Linux 发行版(如 Ubuntu 16.04+、CentOS 7+、Debian 8+)的初始化系统,传统的 resolv.conf 逐渐被更强大的 systemd-resolved 服务取代,这种方式不仅能看到 DNS,还能看到详细的解析状态。

Linux怎么查DNS地址?如何查看本机DNS服务器IP

查看全局 DNS 配置

运行以下命令可以获取当前系统的全局 DNS 信息:

systemd-resolve --status

或者在较新的系统中,使用更简洁的命令:

resolvectl status

输出信息非常丰富,你会看到类似这样的结构:

Global
       LLMNR setting: yes
       MulticastDNS setting: no
       DNSSEC setting: no
       DNSSEC supported: no
       Current DNS Server: 8.8.8.8
       DNS Servers: 8.8.8.8 114.114.114.114
       DNS Domain: ~.

这里清晰地列出了 Current DNS Server(当前正在使用的 DNS)和 DNS Servers(备用 DNS 列表),这种方法的优势在于,它能区分不同网络接口(如 eth0, wlan0)的 DNS 配置,让你知道哪个网卡在用哪个 DNS。

查询特定接口的 DNS

如果你的服务器有多个网卡,比如同时连接了内网和外网,你可能想知道某个特定接口(eth0)使用的是哪个 DNS,可以使用:

systemd-resolve --status eth0

或者

resolvectl status eth0

这样你就能精准定位问题,避免因为混淆不同网络的 DNS 设置而导致解析错误。

高级技巧:使用 dig 和 nslookup 验证 DNS

我们不仅想知道“系统配置了哪个 DNS”,更想知道“这个 DNS 是否真的能解析域名”以及“解析结果是什么”,这时候,dig 和 nslookup 就成了必不可少的工具。

dig 命令:精准查询

dig(Domain Information Groper)是网络管理员最常用的 DNS 查询工具,它不仅显示结果,还显示查询过程、耗时等详细信息。

查询百度百度的 DNS 服务器地址,可以使用:

dig @8.8.8.8 www.baidu.com

这里的 @8.8.8.8 指定了查询的 DNS 服务器,输出结果中,ANSWER SECTION 部分会显示解析出的 IP 地址,如果查询成功,你会看到

Linux怎么查DNS地址?如何查看本机DNS服务器IP

status: NOERROR,这表明 DNS 解析正常。

nslookup 命令:简单直观

nslookup 是一个更简单的交互式工具,适合快速测试。

nslookup www.baidu.com

输出示例:

Server:     8.8.8.8
Address:    8.8.8.8#53
Non-authoritative answer:
Name:   www.baidu.com
Address: 14.215.177.39

这里显示的 Server 就是实际处理你查询请求的 DNS 服务器地址,如果这个地址和你预期的不一致,说明你的系统可能受到了本地缓存或上游 DNS 的影响。

不同场景下的 DNS 查询对比

为了让你更直观地理解,我们将几种常用方法进行对比。

方法 适用场景 优点 缺点
cat /etc/resolv.conf 快速查看当前生效的 DNS 简单直接,几乎所有 Linux 都支持 无法区分不同接口,可能被动态覆盖
systemd-resolve --status 现代 systemd 系统,多网卡环境 信息详细,可区分接口,显示状态 仅适用于 systemd 系统,旧系统不支持
dig @IP domain 验证特定 DNS 的解析能力 精准测试,显示详细过程 需要知道目标域名,稍显复杂
nslookup domain 快速测试 DNS 连通性 简单易用,交互友好 信息较少,不如 dig 详细

业内专家指出,在排查网络问题时,建议先使用

Linux怎么查DNS地址?如何查看本机DNS服务器IP

cat /etc/resolv.conf 确认系统配置,再用 systemd-resolve --status 确认接口状态,最后用 dig 验证解析结果,这种层层递进的方法,能覆盖 90% 以上的 DNS 问题。

常见问题解答:Linux如何查询DNS服务器地址

如何永久修改 Linux 的 DNS 服务器地址?

修改 DNS 的方法取决于你的网络管理工具,如果使用 NetworkManager,可以使用 nmcli 命令:

nmcli con mod "连接名称" ipv4.dns "8.8.8.8 114.114.114.114"
nmcli con up "连接名称"

如果使用 systemd-networkd,则需要编辑 /etc/systemd/network/ 下的 .network 文件,添加 DNS= 行,直接修改 /etc/resolv.conf 通常不是推荐做法,因为它可能被覆盖。

为什么 dig 查询的结果和 resolv.conf 中的 DNS 不一致?

这通常是因为本地 DNS 缓存或递归解析器的存在。resolv.conf 中的 DNS 是系统配置的“第一跳”,但实际查询可能经过本地缓存(如 dnsmasq 或 systemd-resolved 的缓存)或上游递归服务器。dig @IP 直接查询特定服务器,绕过了本地缓存,因此结果可能更直接反映该服务器的状态。

如何测试 DNS 解析速度?

可以使用 dig 的 +time 和 +tries 参数来测试响应时间:

dig @8.8.8.8 www.baidu.com +time=2 +tries=1

输出中的 Query time 字段显示了查询耗时(毫秒),数值越小,表示该 DNS 服务器响应越快,对于企业用户来说,选择低延迟的 DNS 服务器能显著提升网页加载速度,据统计,优化 DNS 解析速度可使网页打开时间缩短 20%-30%。

查询 DNS 服务器地址并非难事,关键在于理解 Linux 的网络架构,从简单的文件读取到复杂的命令验证,每一步都揭示了系统背后的逻辑,掌握这些方法,不仅能解决眼前的网络问题,更能让你对 Linux 网络管理有更深的理解,配置只是第一步,验证才是关键。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/403939.html

赞 (0)
CDN加速怎么关闭?如何关闭CDN加速
上一篇 2026年6月20日 14:38
2026年最便宜的AI算力平台是哪个?国内AI算力平台排名
下一篇 2026年6月20日 14:41

相关推荐

  • 服务器如何做CDN加速,添加域名需要注意什么?

    配置CDN加速的核心在于将域名CNAME解析到CDN厂商提供的加速域名,并在源站服务器上做好白名单和回源配置,确保内容正确分发,CDN加速域名怎么添加?先弄清楚这3个要素添加CDN加速域名不是简单填个网址,它涉及域名解析、源站配置和CNAME生效三个环节,多数人卡在第二步,以为添加完就生效,结果访问时直接报错……

    2026年8月2日
    1000
  • Linux服务器挂载NFS失败怎么办?NFS挂载报错58解决方法

    Linux服务器挂载NFS失败通常源于网络连通性阻断、防火墙策略拦截或权限配置冲突,建议优先检查端口映射与客户端挂载参数,在云计算与分布式存储普及的今天,NFS(Network File System)依然是许多中小企业和开发团队的首选方案,它简单、高效,且无需复杂的客户端软件,当你在终端输入挂载命令后,系统却……

    2026年6月20日
    1800
  • TypeScript真的有必要学吗?TypeScript有什么用

    TypeScript绝对有必要学,它是现代前端开发的行业标准,能显著降低大型项目的维护成本并提升代码健壮性,如果你还在纠结是否要投入时间学习TypeScript,答案很明确:不仅有必要,而且几乎是必经之路,JavaScript虽然灵活,但在项目规模扩大后,其动态类型特性带来的隐患会指数级增加,TypeScrip……

    2026年6月21日
    1900
  • 宝塔面板云安全监控好用吗?宝塔面板云安全监控功能详解

    宝塔面板云安全监控整体表现稳定,适合中小型企业及开发者进行基础防护,但在面对高级持续性威胁(APT)时,其深度防御能力有限,建议配合专业WAF或硬件防火墙使用,对于许多站长和运维人员来说,服务器安全就像房子的防盗门,既要结实又要好用,宝塔面板作为国内市场占有率极高的服务器管理工具,其内置的云安全监控功能,本质上……

    2026年6月24日
    2000
  • HTML图片居中怎么设置?div+css图片水平垂直居中代码

    HTML图片居中的核心答案是使用CSS的margin: 0 auto;属性配合固定宽度,或者利用Flexbox布局的justify-content: center属性,这是目前最稳定且兼容性最好的两种方案,在网页设计和前端开发中,图片居中看似是一个基础操作,但在实际落地时,很多开发者尤其是初学者经常会遇到图片无……

    2026年6月10日
    3110
  • 深圳高防服务器选型,阈值与清洗能力怎么看,怎么选?

    选深圳高防服务器,阈值决定硬扛上限,清洗能力决定过滤效率,两者缺一不可,很多人在选型时只盯着防御峰值,忽略了清洗质量,结果攻击没挡住,反而正常业务被误杀,本文从实操角度拆解阈值和清洗能力怎么看,帮你选到真正适合的高防服务器,深圳高防服务器阈值到底怎么看阈值通俗讲就是服务器能承受的最大攻击流量,单位是Gbps或M……

    2026年8月10日
    400
  • Shopify替代平台有吗?哪些电商建站工具值得推荐

    Shopify并非唯一选择,Shopify替代平台有吗?答案是肯定的,WooCommerce、Shoplazza(店匠)及Shopline等工具在特定场景下能提供更优的性价比与灵活性,具体取决于你的业务阶段与技术能力,对于许多跨境卖家而言,Shopify曾是入门的首选,但随着运营深入,高昂的交易手续费、插件订阅……

    2026年6月26日
    1700
  • GeoTrust通配符SSL证书一年多少钱?通配符SSL证书多少钱一年

    GeoTrust通配符SSL证书一年的价格通常在2000元至8000元人民币之间,具体费用取决于购买渠道、服务商折扣以及是否包含DNS验证服务,直接通过DigiCert官方直营购买价格较高,而通过授权代理商购买则能获得更优惠的批量折扣,在网络安全日益重要的今天,选择一款合适的通配符SSL证书是企业保护多子域名安……

    2026年6月21日
    2110
  • 如何用命令导入Excel到Access?Access导入Excel数据的具体步骤

    使用Access导入Excel数据最稳妥的方式是通过“外部数据”选项卡下的“Excel”功能进行链接或导入,若需通过命令自动化处理,则应使用DoCmd.TransferSpreadsheet方法,该方法能精准控制导入模式并减少手动操作带来的错误,在2026年的办公场景中,数据孤岛依然是许多中小企业和个体户面临的……

    2026年7月1日
    2300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注