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

1949idc 1年前 (2025-04-17) 阅读数 339 #智能运维
在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. 完整的命令输出示例分析

相关阅读:

1、Win7 VPS设置全攻略,轻松掌握虚拟私人服务器配置技巧

2、VPS主机购买与使用教程,轻松上手指南

3、香港云VPS恒创,科技领先的云端服务体验之旅

4、VPS服务器类型详解,优势、应用与揭秘

5、ISP和VPS解析,揭秘网络服务的双重身份!

版权声明

本文内容由互联网用户自发贡献,该文观点仅代表作者本人
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

© 2010 首途云安 & 厦门硕顿信息技术有限公司 & 闽ICP备11016866号  增值电信业务经营许可证:B1-20203020 地址:福建厦门思明区嘉禾路297号1806
高新技术企业
软件产品证书
计算机软件著作权
ISO认证
国家3A企业