Ubuntu怎么配置DNS?Ubuntu配置DNS永久生效方法

在Ubuntu系统中配置DNS,最推荐且持久的方法是通过修改Netplan配置文件或使用systemd-resolved服务,而非直接编辑旧的resolv.conf文件,以确保配置在重启后依然生效。

很多用户在初次接触Linux服务器或桌面版时,都会遇到网络解析慢、域名无法访问的问题,这通常是因为DNS配置不当,过去,大家习惯直接修改/etc/resolv.conf,但在现代Ubuntu版本中,这种做法往往会被系统服务覆盖,导致配置失效,我们需要一种更稳定、更符合现代Linux架构的管理方式,本文将结合不同场景,详细拆解如何在Ubuntu 22.04及更高版本中正确配置DNS,涵盖从临时测试到永久生效的多种方案。

「Ubuntu」Ubuntu 22.04 拨号上网以及修改DNS
加载中
「Ubuntu」Ubuntu 22.04 拨号上网以及修改DNS

Ubuntu配置DNS的三种主流方案对比

在深入具体操作之前,我们需要明确不同场景下的最佳实践,业内专家指出,选择配置方式应取决于你的网络环境是动态获取还是静态固定,以及你使用的是Server版还是Desktop版。

使用Netplan配置静态DNS(推荐Server版)

对于大多数Ubuntu Server用户,Netplan是默认的网络配置工具,它使用YAML格式的配置文件,结构清晰,易于版本控制。

确定网络接口名称

你需要知道当前使用的网卡名称,在终端输入`ip link`或`ip addr`,找到状态为UP的接口,通常是`ens33`、`eth0`或`enp0s3`等。

编辑Netplan配置文件

配置文件通常位于`/etc/netplan/`目录下,文件名可能类似`00-installer-config.yaml`或`50-cloud-init.yaml`,使用文本编辑器打开它:

sudo nano /etc/netplan/00-installer-config.yaml

network:层级下,找到对应的网卡接口,你需要添加或修改nameservers字段,注意YAML的缩进必须严格对齐,通常使用2个空格缩进。

Ubuntu怎么配置DNS?Ubuntu配置DNS永久生效方法

network: ethernets: ens33: dhcp4: no addresses: - 192.168.1.100/24 routes: - to: default via: 192.168.1.1 nameservers: addresses: - 223.5.5.5 - 119.29.29.29 version: 2

在上述示例中,5.5.5是阿里云DNS,29.29.29是腾讯云DNS,你可以根据所在地域选择延迟更低的公共DNS,配置完成后,应用更改:

sudo netplan apply

通过systemd-resolved管理DNS(Desktop及新版Server通用)

Ubuntu Desktop和较新的Server版本默认使用systemd-resolved服务来管理DNS解析,这种方式更加动态,能够自动处理多网卡环境下的DNS优先级。

查看当前DNS状态

你可以使用以下命令查看当前生效的DNS服务器:

resolvectl status

配置特定接口的DNS

假设你的网卡名为`eth0`,你可以使用命令行直接配置:

sudo resolvectl dns eth0 8.8.8.8 1.1.1.1

这条命令会立即生效,但重启网络服务或系统后可能会失效,因为它没有写入持久化配置,为了实现永久生效,需要修改/etc/systemd/resolved.conf文件:

sudo nano /etc/systemd/resolved.conf

找到#DNS=行,取消注释并填入你的DNS服务器IP:

[Resolve]
DNS=8.8.8.8 1.1.1.1
FallbackDNS=223.5.5.5

保存后,重启服务使配置生效:

sudo systemctl restart systemd-resolved

临时修改resolv.conf(仅用于调试)

虽然不推荐作为长期方案,但在排查网络问题时,临时修改/etc/resolv.conf是最快的方法。

Ubuntu怎么配置DNS?Ubuntu配置DNS永久生效方法

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf

如果系统开启了NetworkManager或systemd-resolved,这个文件可能是符号链接,直接修改会被覆盖,此方法仅适用于确认当前网络故障是否由DNS引起,而非解决根本问题。

Ubuntu配置DNS时的常见陷阱与优化

在实际操作中,许多用户会遇到配置了DNS却无法解析的情况,这通常源于以下几个细节疏忽。

YAML缩进错误

Netplan对缩进极其敏感,一个Tab键或错误的空格数都会导致配置应用失败,报错信息通常会提示”mapping values are not allowed here”,务必使用空格而非Tab,并确保addressesnameservers下的IP列表缩进一致。

DNS缓存问题

即使配置正确,浏览器或系统缓存可能导致你仍然看到旧的解析结果,在Linux中,清除DNS缓存的方法取决于你使用的解析器,如果是systemd-resolved,可以执行:

sudo resolvectl flush-caches

选择适合地域的DNS服务器

不同地区的公共DNS性能差异显著,在国内使用Cloudflare的1.1.1可能会遇到连接不稳定,而使用阿里云或腾讯云的DNS则能获得更低的延迟和更好的国内域名解析速度,据统计,多数情况下,选择就近的运营商DNS或大型云厂商的公共DNS能显著提升网页加载速度。

如何验证DNS配置是否生效

配置完成后,必须验证配置是否真正生效,不要仅依赖ping命令,因为ping可能使用缓存或默认网关的DNS。

使用dig命令

dig是更专业的DNS查询工具,你可以指定使用特定的DNS服务器进行查询:

dig @223.5.5.5 example.com

如果返回结果中的

Ubuntu怎么配置DNS?Ubuntu配置DNS永久生效方法

SERVER字段显示为你配置的IP,且ANSWER SECTION中有正确的IP地址,说明配置成功。

使用nslookup命令

nslookup同样有效:

nslookup example.com 223.5.5.5

检查resolv.conf链接

在systemd-resolved环境下,/etc/resolv.conf通常是一个指向/run/systemd/resolve/stub-resolv.conf的符号链接,你可以检查这个链接是否存在,以确认系统正在使用新的解析器:

ls -l /etc/resolv.conf

Ubuntu配置DNS相关Q&A

Ubuntu配置DNS后重启失效怎么办?

如果重启后DNS配置丢失,通常是因为你修改了错误的文件,在Netplan环境中,确保修改的是/etc/netplan/下的YAML文件,并执行了netplan apply,在systemd-resolved环境中,确保修改了/etc/systemd/resolved.conf并重启了服务,直接修改/etc/resolv.conf在大多数现代Ubuntu版本中是无效的,因为它会被网络管理服务自动重写。

如何为Ubuntu配置多个DNS服务器?

配置多个DNS服务器可以提高容错率,在Netplan中,在addresses列表中添加多个IP即可,系统会按顺序尝试,在/etc/systemd/resolved.conf中,用空格分隔多个IP,并可以将备用DNS填入FallbackDNS字段。DNS=8.8.8.8 1.1.1.1

Ubuntu配置DNS影响其他服务吗?

DNS配置主要影响基于域名解析的服务,如Web浏览、软件包更新(apt)、SSH连接等,本地局域网内的IP直连访问不受影响,某些应用程序可能拥有自己的DNS设置,不受系统全局DNS影响,但在绝大多数情况下,修改系统级DNS会全局生效,确保所有依赖域名解析的应用都能受益。

首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/421138.html

(0)
买GPU服务器哪家好?选购GPU服务器注意事项
上一篇 2026年6月25日 03:07
PacificRack洛杉矶VPS除夕特惠真的划算吗?洛杉矶VPS哪家性价比高
下一篇 2026年6月25日 03:10

相关推荐

  • HTML中如何编写动态JS?前端JS动态交互实现方法

    在HTML中通过JavaScript实现动态效果,核心在于利用DOM操作实时修改页面结构与样式,或结合Canvas/WebGL进行高性能渲染,这是构建现代交互式网页的基石,很多初学者常问,为什么我的JS代码写在HTML里没反应?或者为什么动态效果卡顿?这通常不是语法错误,而是对执行时机和渲染机制的理解偏差,理解……

    2026年6月5日
    2800
  • 广州云主机SSH登录不了怎么办?广州云主机SSH登录失败解决方法

    广州云主机SSH登录是企业及开发者进行服务器远程管理的核心操作,其稳定性与安全性直接关系到业务系统的运行效率,高效、安全的SSH登录不仅依赖于正确的配置参数,更取决于云服务商提供的底层网络质量与安全防护体系, 在实际运维场景中,通过优化SSH协议配置、采用密钥认证机制以及部署多层防御策略,能够显著降低暴力破解风……

    2026年3月28日
    10500
  • 服务器带宽配置选错了?服务器带宽多少合适才不卡

    服务器卡顿、加载缓慢,核心症结往往不在于服务器本身的硬件配置高低,而在于带宽配置是否合理,许多企业盲目追求CPU核心数与内存容量,却忽视了数据传输的“管道”大小,导致高配服务器依然出现网络拥堵,带宽配置错误是导致业务卡顿的隐形杀手,精准的带宽选型与架构优化才是解决网络延迟、保障用户体验的根本途径, 带宽不足引发……

    2026年3月6日
    11700
  • 9929线路回国实测数据如何?9929线路回国稳定吗

    9929线路回国实测显示,其核心优势在于低延迟与高稳定性,适合对网络质量有硬性要求的用户,但需配合特定节点选择以规避高峰拥堵,9929线路回国实测数据深度解析在跨境网络环境中,回国线路的选择直接决定了用户体验的上限,过去,用户往往只能在“速度快但不稳定”和“稳定但延迟高”之间做妥协,近期的实地测试表明,9929……

    2026年6月16日
    1900
  • 带宽升级扩容流程是怎样的?企业宽带扩容详细步骤

    带宽升级扩容的核心在于精准的需求评估与无缝的业务割接,整个过程必须确保业务连续性不受影响,同时实现网络性能的质的飞跃,成功的扩容不仅仅是硬件设备的简单堆砌,更是一项涉及链路资源协调、设备配置调试及流量切换策略的系统工程,对于企业而言,最关键的原则是“平滑过渡”,即在用户无感知的前提下完成带宽的倍增,确保数据传输……

    2026年3月4日
    11100
  • html网站建站公司哪家好?html网站建站费用及流程详解

    选择专业的HTML网站建站公司,核心在于确保代码纯净度、加载速度以及移动端适配能力,这直接决定了网站在2026年搜索引擎中的排名权重与用户留存率,在数字化竞争日益激烈的今天,拥有一个高性能的网站不再是可选项,而是企业生存的必需品,许多企业主在寻找服务商时,往往陷入“低价模板”与“高端定制”的误区,却忽略了HTM……

    服务器宽带 2026年6月12日
    3100
  • 互联网区块链数据如何连接身份秘钥?区块链身份认证流程是什么

    互联网区块链数据连接身份秘钥是构建去中心化数字身份的核心基础设施,它通过非对称加密技术实现用户对自己数据的绝对掌控,彻底解决了传统平台数据孤岛与隐私泄露的痛点,什么是互联网区块链数据连接身份秘钥在传统的互联网架构中,你的账号、行为数据和社交关系都存储在中心化服务器上,一旦平台宕机或数据泄露,你将失去所有数字资产……

    2026年6月1日
    3700
  • html网站项目案例实战源码怎么用?html网站开发入门教程

    构建一个符合2026年SEO标准的HTML网站,核心在于语义化标签的精准使用、移动端优先的响应式布局以及极致的加载速度优化,而非单纯依赖复杂的后端逻辑,在2026年的数字营销环境中,搜索引擎算法已经高度智能化,它不再仅仅抓取关键词,而是深入理解页面的结构逻辑与用户体验,对于开发者而言,HTML不再是简单的标记语……

    服务器宽带 2026年6月6日
    3100
  • hp服务器f10内存怎么查?hp服务器f10内存插槽数量

    HP服务器F10内存配置的核心在于通过iLO管理接口进行硬件监控与故障排查,确保系统在高负载下的稳定性,而非单纯追求容量堆砌,在数据中心和企业的IT运维场景中,服务器内存不仅是数据的临时仓库,更是决定业务连续性的关键组件,当你面对一台报错的HP ProLiant服务器时,F10这个按键往往被视为进入BIOS设置……

    2026年6月10日
    2100
  • Elementor Cloud Website好用吗?Elementor云建站教程

    Elementor Cloud Website 对于追求高效建站、希望摆脱服务器维护烦恼且具备一定设计审美需求的中小企业及个人创作者而言,是一套非常成熟且好用的全托管建站解决方案,它通过“可视化编辑+云端托管”的一体化模式,显著降低了技术门槛并提升了网站稳定性,在2026年的数字营销环境中,网站不仅是展示窗口……

    2026年6月22日
    700

发表回复

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