5154

Good Luck To You!

ubuntu修改dns 不重启系统

修改 /etc/resolv.conf 文件,更新 DNS

Ubuntu系统修改DNS不重启的详细指南

在Ubuntu系统中修改DNS配置时,通常可以通过多种方式实现无需重启系统即可生效,本文将详细介绍不同场景下的DNS修改方法,包括命令行操作、图形界面配置以及配置文件修改技巧,并提供常见问题的解决方案。


基础概念与原理

方法类型 作用范围 是否需要重启 配置持久化
直接修改resolv.conf 当前会话 否(可能被覆盖)
NetworkManager配置 所有NM管理的连接
Netplan配置 系统级网络配置
systemdresolved服务 全局解析服务 需重载服务

注意:不同Ubuntu版本可能使用不同的网络管理工具:

  • 桌面版:通常使用NetworkManager
  • 服务器版:通常使用Netplan
  • 容器环境:可能使用systemdresolved

快速修改DNS的四种方法

直接修改/etc/resolv.conf文件

sudo nano /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4

特点

  • 立即生效(无需重启)
  • 仅影响当前会话
  • 可能被其他进程覆盖(如NetworkManager)

适用场景:临时测试或快速验证DNS配置

ubuntu修改dns 不重启系统


通过NetworkManager修改(适用于桌面版)

命令行方式
# 查看当前连接
nmcli connection show
# 修改指定连接的DNS(例如ID为"Wired connection 1")
nmcli connection modify "Wired connection 1" ipv4.dns "8.8.8.8 8.8.4.4"
# 应用到当前激活的连接
nmcli connection up "Wired connection 1"
图形界面方式
  1. 打开设置 > 网络
  2. 选择对应网络连接 > 点击齿轮图标进入配置
  3. IPv4设置中调整DNS服务器
  4. 应用更改(无需重启)

特点

  • 自动持久化配置
  • 支持多个DNS服务器
  • 需要网络连接处于激活状态

通过Netplan修改(适用于服务器版)

修改配置文件
sudo nano /etc/netplan/01netcfg.yaml

添加或修改DNS配置:

network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: no
      addresses: [192.168.1.100/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]
应用配置
sudo netplan apply

特点

  • 立即生效且持久化
  • 支持YAML格式配置
  • 需要正确语法(可通过netplan try测试)

使用systemdresolved服务

修改配置文件
sudo nano /etc/systemd/resolved.conf
[Resolve]
DNS=8.8.8.8 8.8.4.4
重载服务
sudo systemctl restart systemdresolved

特点

ubuntu修改dns 不重启系统

  • 影响全局DNS解析
  • 支持加密DNS协议(如DNSoverTLS)
  • 需要重启服务而非整个系统

验证DNS配置是否生效

查看当前DNS解析配置

# 查看systemdresolved状态
systemdresolve status
# 查看NetworkManager配置
nmcli connection show "YourConnectionName"
# 直接查看resolv.conf内容
cat /etc/resolv.conf

测试DNS解析

# 测试Google公共DNS
nslookup www.google.com 8.8.8.8
# 测试本机DNS配置
dig www.baidu.com

特殊场景解决方案

WSL/LXD/容器环境

在Windows Subsystem for Linux或容器中,需要修改:

sudo nano /etc/resolv.conf

注意:某些容器环境会自动重置此文件,建议通过宿主机配置全局DNS。

WiFi网络环境

对于无线网络,需特别注意:

  1. 修改/etc/NetworkManager/systemconnections/YourWiFi.nmconnection文件
  2. [ipv4]部分添加dns=8.8.8.8,8.8.4.4
  3. 断开/重连WiFi或执行nmcli connection up "YourWiFi"

常见问题与故障排除

问题现象 可能原因 解决方案
修改后DNS未生效 缓存未刷新/服务未重载 sudo systemdresolve flushcaches
resolv.conf被自动覆盖 NetworkManager/systemdresolved冲突 禁用其中一个服务(不推荐)
仅部分应用受影响 应用使用独立DNS解析库 检查应用配置或使用全局DNS设置
无法保存配置文件 权限不足或语法错误 使用sudo编辑,验证YAML/INI语法

相关问题与解答

Q1:如何设置永久性DNS配置?

A:根据系统网络管理工具选择:

ubuntu修改dns 不重启系统

  • 桌面版:通过nmcli或图形界面修改NetworkManager配置
  • 服务器版:使用netplan apply应用YAML配置
  • 所有系统:编辑/etc/systemd/resolved.conf并重启systemdresolved服务

Q2:修改DNS后出现网络中断怎么办?

A:执行以下排查步骤:

  1. 恢复原始DNS配置:nmcli connection edit "YourConnection" set ipv4.dns "原DNS"
  2. 检查配置文件语法:netplan try测试Netplan配置
  3. 清除DNS缓存:sudo systemdresolve flushcaches
  4. 重启网络服务:sudo systemctl restart NetworkManager

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年8月    »
123
45678910
11121314151617
18192021222324
25262728293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.