Linux如何快速查询DNS地址?

查看当前配置的DNS服务器(/etc/resolv.conf文件)

这是最直接的方式,系统默认从此文件读取DNS配置:

cat /etc/resolv.conf

输出示例

nameserver 8.8.8.8       # 主DNS服务器
nameserver 192.168.1.1   # 备用DNS服务器

⚠️ 注意:

  • 若使用NetworkManager或systemd-resolved服务,此文件可能被自动管理,直接编辑可能无效。
  • 文件中的nameserver行即当前生效的DNS地址。

使用nslookup(基础查询工具)

通过域名反向查询DNS服务器地址:

nslookup example.com    # 查询域名的解析服务器
nslookup                # 进入交互模式
> server                # 显示当前使用的DNS服务器
> exit                  # 退出

输出关键项

Server:         8.8.8.8          # 当前使用的DNS服务器
Address:        8.8.8.8#53       # DNS地址及端口

使用dig(专业诊断工具)

获取详细的DNS解析路径和服务器信息:

dig example.com                   # 查询域名解析
dig +short example.com            # 仅显示IP结果
dig NS example.com                # 查询域名的DNS服务器名称
dig +trace example.com            # 跟踪完整解析过程

输出解析

  • ANSWER SECTION:域名对应的IP地址。
  • Query time:解析耗时,用于诊断延迟。

使用host(快速查询工具)

高效获取域名关联的IP或DNS记录:

host example.com          # 查询域名IP
host -t NS example.com    # 查询域名的DNS服务器

输出示例

example.com has address 93.184.216.34
example.com name server ns.icann.org.  # 域名注册的DNS服务器

通过systemd-resolve(systemd系统专用)

适用于Ubuntu 18.04+、CentOS 8+等使用systemd的系统:

systemd-resolve --status | grep "DNS Servers" -A 2

输出示例

DNS Servers: 8.8.8.8
             192.168.1.1

此命令同时显示分接口(如eth0、wlan0)的DNS配置。


使用NetworkManager(nmcli

适用于通过NetworkManager管理网络的环境:

nmcli dev show | grep DNS

输出示例

IP4.DNS[1]:                             8.8.8.8
IP4.DNS[2]:                             192.168.1.1

应用场景总结

场景 推荐命令 优势
查看本地DNS配置 cat /etc/resolv.conf 直接显示系统配置
快速解析域名 hostdig +short 结果简洁,适合脚本调用
诊断DNS解析问题 dig +trace 完整跟踪解析链路
查询域名注册的DNS服务器 dig NShost -t NS 获取权威DNS信息
图形界面环境(如Ubuntu) nmcli 兼容NetworkManager配置

常见问题排查

  1. DNS未生效
    • 检查/etc/resolv.conf是否被覆盖(如DHCP服务重置)。
    • 使用dig @8.8.8.8 example.com指定DNS服务器测试连通性。
  2. 解析延迟高
    • dig +trace检查解析路径,替换为更快的公共DNS(如8.8.8114.114.114)。
  3. 配置持久化
    • 通过NetworkManager修改(nm-connection-editor)或编辑/etc/netplan/*.yaml(Ubuntu)确保重启后配置保留。

引用说明基于Linux标准文档(man pages)、IBM Knowledge Center及Ubuntu官方维护指南,命令兼容主流发行版(Ubuntu, CentOS, Fedora等),测试环境为Linux kernel 5.4+。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/5450.html

(0)
酷番叔酷番叔
上一篇 2025年6月23日 21:52
下一篇 2025年6月23日 22:14

相关推荐

  • Linux如何创建数据库文件夹的链接?

    在Linux系统中,链接数据库文件夹是一项常见操作,主要用于数据迁移、存储空间优化、多环境配置统一等场景,通过符号链接(软链接)或硬链接,可以将数据库的数据目录、配置文件或日志目录指向其他路径,既保留原文件的可访问性,又能灵活管理存储资源,本文将详细说明链接数据库文件夹的操作方法、注意事项及不同数据库的实践差异……

    2025年9月21日
    17200
  • Linux下如何查看新邮件?

    在Linux系统中查看新邮件有多种方式,涵盖命令行工具、图形界面客户端以及通过网络协议直接访问邮件服务器,用户可根据自身需求和使用习惯选择合适的方法,本文将详细介绍这些方法,包括工具安装、配置及操作步骤,帮助用户高效管理邮件,本地邮件查看:命令行工具Linux系统默认会将用户邮件存储在本地,通常位于/var/m……

    2025年10月4日
    15800
  • 如何在Linux下卸载JDK?具体操作步骤是怎样的?

    在Linux系统中卸载JDK(Java Development Kit)通常需要根据安装方式选择不同的方法,常见的安装方式包括通过系统包管理器(如apt、yum/dnf)安装或手动解压压缩包安装,卸载前需确认当前JDK的安装路径和版本,避免误删其他版本或系统依赖的Java组件,以下是详细的卸载步骤和注意事项,卸……

    2025年9月17日
    15800
  • 如何在linux安装操作系统

    制作可启动的U盘或光盘,设置BIOS从其启动,按

    2025年8月15日
    13800
  • Linux系统下安装PHP扩展模块的具体步骤是什么?

    在Linux系统中安装PHP扩展模块是增强PHP功能的关键操作,无论是添加数据库支持、缓存功能还是加密服务,都需要通过安装对应扩展实现,本文将详细介绍三种主流安装方法:使用包管理器、PECL工具和源码编译,涵盖不同Linux发行版的操作步骤及注意事项,使用包管理器安装(适合新手快速部署)包管理器是Linux系统……

    2025年9月22日
    12400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信