ubuntu的dns设置问题

背景说明

在Ubuntu中使用netplan配置dns的时候发现配置的dns总是不生效

内容介绍

1、配置文件说明

发现使用了systemd-resolved 的系统的dns配置和下面四个文件有关系。

bash 复制代码
/etc/resolv.conf
/etc/systemd/resolved.conf
/run/systemd/resolve/stub-resolv.conf
/run/systemd/resolve/resolv.conf

/etc/resolv.conf

  • 默认情况下,/etc/resolv.conf 应该是指向 /run/systemd/resolve/stub-resolv.conf 的符号链接。这意味着所有 DNS 查询会被转发到 systemd-resolved 的本地代理(127.0.0.53),然后 systemd-resolved 会根据 /run/systemd/resolve/resolv.conf 的配置进行实际的 DNS 解析。

/etc/systemd/resolved.conf

  • /etc/systemd/resolved.conf 是 systemd-resolved 的主要配置文件,用于定义 DNS 解析行为和选项。

/run/systemd/resolve/stub-resolv.conf

  • 用途:该文件用于本地 DNS 解析代理,指向 systemd-resolved 的本地 DNS 解析服务。
  • 内容:这个文件包含一个 127.0.0.53 的 DNS 服务器地址,指向 systemd-resolved 本地代理。
  • 符号链接:在典型的 systemd 配置中,/etc/resolv.conf 通常是一个符号链接,指向这个文件。这样,所有使用标准 /etc/resolv.conf 进行 DNS 解析的应用程序都会通过 systemd-resolved 进行解析.

/run/systemd/resolve/resolv.conf

  • 用途:该文件包含实际配置的 DNS 服务器地址列表,是 systemd-resolved 根据网络配置生成的。
  • 内容:这个文件包含了由 systemd-resolved 管理的 DNS 服务器的真实 IP 地址列表,以及搜索域。
  • 直接使用:你可以直接使用这个文件来查看 systemd-resolved 实际使用的 DNS 配置,但通常不会将 /etc/resolv.conf 直接链接到这个文件。
  • /run/systemd/resolve/resolv.conf 是 systemd-resolved 根据这些配置动态生成的运行时文件,反映了当前系统正在使用的 DNS 服务器和其他相关设置。

2、systemd-resolved介绍

systemd-resolved 是 systemd 套件的一部分,用于处理 DNS 解析和其他网络名称解析任务。它提供了一种统一的、现代化的方式来管理和处理 DNS 请求,并具有以下功能:

systemd-resolved 的功能

  • DNS 缓存:它可以缓存 DNS 查询结果,提高解析速度并减少重复查询。
  • 多重 DNS 解析:支持从多个 DNS 服务器进行解析,并能根据不同的域名使用不同的 DNS 服务器。
  • DNS-over-TLS (DoT):支持加密的 DNS 解析请求,提高隐私和安全性。
  • LLMNR 和 mDNS:支持本地链路多播名称解析(LLMNR)和多播 DNS(mDNS),使得局域网内的设备可以互相发现。
  • DNS 代理:提供本地 DNS 解析代理,通过 127.0.0.53 地址进行本地解析。
  • DNSSEC:支持 DNS 安全扩展(DNSSEC),确保 DNS 数据的完整性和来源验证。

使用 systemd-resolved 的操作系统

systemd-resolved 被许多基于 Linux 的操作系统所使用,特别是那些采用 systemd 作为初始化系统的发行版。以下是一些常见的操作系统:

  • 从 Ubuntu 16.10 开始,systemd-resolved 默认启用,
  • Debian 9 (Stretch) 及以后版本,
  • Fedora 32 及以后版本默认启用 systemd-resolved,
  • 提供 systemd-resolved,用户可以手动启用,
  • 在 RHEL 8 和 CentOS 8 以及衍生版本中可以手动启用 systemd-resolved
相关推荐
资深电气设计4 分钟前
TPO卷材研发常见问题:强度与柔韧性为何难兼顾?埃克森美孚威达美™6102的技术参考
运维·物联网·创业创新·业界资讯
优化Henry9 分钟前
光路异常告警排查实战:LTE室分与5G小区两个案例解析
运维·网络·学习·5g·tdd
Apipi*19 分钟前
30天速通Linux 第九章Linux网络编程
linux·运维·网络
报错小能手31 分钟前
Channel面试题。Sync面试题
linux·服务器·windows
天远数科32 分钟前
零信任架构实战:基于天远风控经营异常预警构建自动化电子签章前置合规网关
运维·人工智能·架构·自动化
xiaoqiMikko40 分钟前
Linux 实战(五):DNS、hosts、CLOSE-WAIT、SSH 权限与改端口 —— 三台真机实测
linux·centos
Linux-lucky44 分钟前
43-Linux学习之旅之Shell 脚本(二)
linux·运维·学习·ubuntu·dash
yv798an1 小时前
从 OpenSBI 引导到 C++17 异步运行时:自制 RISC-V 嵌入式专有 NAS 踩坑全记录
linux
不悔哥1 小时前
Linux系统编程多线程程序如何安全退出
linux
Fcy6482 小时前
Linux下 数据链路层详解(从以太网到ARP协议)
linux·mac·以太网·数据链路层·arp