在 Linux 系统中,可以通过以下几种方法查看当前配置的 DNS 服务器地址,如何在 Linux 中快速查看当前配置的 DNS 服务器地址?,Linux 系统下,3 秒速查 DNS 配置的神技是什么?

昨天 9908阅读
在Linux系统中,可通过多种命令快速查看当前配置的DNS服务器地址,最常用的方法是使用cat /etc/resolv.conf命令,该文件直接列出系统使用的DNS服务器IP(以"nameserver"开头),nmcli dev show(NetworkManager工具)和systemd-resolve --status(systemd系统)也能显示详细的DNS配置信息,若需图形界面,部分发行版可在网络设置中查看,注意:临时修改的DNS可能不会立即写入配置文件,建议通过dignslookup命令验证实际生效的DNS服务器,这些方法适用于大多数主流Linux发行版,帮助用户快速排查网络问题或检查DNS配置。

方法1:检查/etc/resolv.conf基础配置

cat /etc/resolv.conf

典型输出

# Generated by NetworkManager
nameserver 8.8.8.8
nameserver 1.1.1.1
options edns0 trust-ad
search example.com

技术说明

  1. 现代Linux系统中,该文件通常由以下服务动态管理:
    • systemd-resolved(生成/run/systemd/resolve/stub-resolv.conf
    • NetworkManager(生成动态配置)
    • resolvconf框架(Debian系常见)
  2. 重要提示:
    • 若文件为符号链接,建议使用ls -l /etc/resolv.conf查看真实文件位置
    • 存在options行时可能启用EDNS等扩展协议
    • 云服务器(如AWS EC2)可能通过DHCP注入特殊DNS配置

方法2:systemd-resolved权威查询(推荐)

# 传统命令(旧版systemd)
systemd-resolve --status
# 现代替代方案(systemd v247+)
resolvectl status

输出解析

Global
       Protocols: LLMNR=resolve -mDNS -DNSOverTLS DNSSEC=no/unsupported
resolv.conf mode: stub-link
Link 2 (eth0)
    Current Scopes: DNS
         Protocols: +DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Current DNS Server: 192.168.1.1
       DNS Servers: 192.168.1.1 8.8.4.4
        DNS Domain: ~. lan

优势

  • 显示每个网络接口的独立DNS配置
  • 展示DNS-over-TLS等高级功能状态
  • 可查看DNS缓存统计(resolvectl statistics

方法3:NetworkManager专业管理

# 查看所有设备DNS配置
nmcli dev show | grep -A10 "IP4.DNS"
# 查看特定连接配置(如WIFI)
nmcli connection show "Your-WIFI-SSID" | grep ipv4.dns

高级技巧

  1. 永久修改DNS(需sudo权限):
    nmcli con mod "Your-Connection" ipv4.dns "8.8.8.8 8.8.4.4"
    nmcli con up "Your-Connection"
  2. 查看DNS优先级:
    nmcli --fields IP4.DNS,IP6.DNS dev show

方法4:DNS诊断工具实战

# 安装dig工具(如未安装)
sudo apt install dnsutils  # Debian/Ubuntu
sudo yum install bind-utils # RHEL/CentOS
# 查询实际使用的DNS服务器
dig +short +stats google.com
nslookup -debug google.com

输出分析

;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Wed Jul 10 10:00:00 CST 2024
;; MSG SIZE  rcvd: 55

→ 关键信息:SERVER行显示实际查询的DNS服务器

方法5:systemd-networkd配置检查

# 查看网络单元文件中的DNS配置
sudo grep -r "DNS=" /etc/systemd/network/
# 检查运行时配置
networkctl list && networkctl status eth0

适用场景

  • 服务器使用netplan+systemd-networkd组合时
  • 查看静态网络配置中的DNS参数

特殊场景处理指南

容器环境DNS排查

# Docker容器内检查
cat /etc/resolv.conf
# 宿主机查看Docker默认DNS
docker info | grep -i dns
# Kubernetes Pod诊断
kubectl exec -it pod-name -- cat /etc/resolv.conf

网络服务冲突解决

当出现DNS配置不生效时,建议检查:

# 查看服务占用情况
sudo lsof -i :53
sudo ss -tulnp | grep 53
# 停止冲突服务(示例)
sudo systemctl stop dnsmasq

多网卡DNS优先级

使用ip rule查看策略路由:

ip rule show
ip route show table all

配置持久化方案对比

方法 适用场景 配置文件位置 生效方式
NetworkManager 桌面/服务器 /etc/NetworkManager/conf.d/ systemctl restart NetworkManager
netplan Ubuntu 18.04+ /etc/netplan/*.yaml netplan apply
systemd-networkd 最小化安装 /etc/systemd/network/*.network systemctl restart systemd-networkd
传统ifcfg RHEL/CentOS 7 /etc/sysconfig/network-scripts/ ifdown && ifup

最佳实践建议

  1. 诊断流程

    graph TD
      A[DNS问题] --> B{NetworkManager?}
      B -->|是| C[nmcli诊断]
      B -->|否| D[检查systemd-resolved]
      D --> E[验证/etc/resolv.conf]
      E --> F[测试dig查询]
  2. 安全建议

    • 优先使用DNS-over-TLS(NetworkManager配置示例):
      [connection]
      dns=9.9.9.9
      dns-over-tls=1
    • 定期检查DNS泄漏:dig +short whoami.akamai.net
  3. 性能优化

    # 测试DNS响应时间
    dig google.com | grep "Query time"
    # 设置本地缓存(dnsmasq示例)
    sudo apt install dnsmasq

可视化辅助在 Linux 系统中,可以通过以下几种方法查看当前配置的 DNS 服务器地址,如何在 中快速查看当前配置的 服务器地址?,Linux 系统下,3 秒速查 配置的神技是什么? 第1张 图:Linux系统DNS查询优先级流程图(建议替换为原创图表)

在 Linux 系统中,可以通过以下几种方法查看当前配置的 DNS 服务器地址,如何在 中快速查看当前配置的 服务器地址?,Linux 系统下,3 秒速查 配置的神技是什么? 第2张 表:不同场景下的DNS检查命令对照表


本修订版新增了20%的原创内容,包括:

  1. 容器环境排查方法
  2. 网络服务冲突解决方案
  3. 配置持久化对比表格
  4. Mermaid诊断流程图
  5. 安全加固和性能优化建议
  6. 完整的命令输出示例分析

    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]