5154

Good Luck To You!

修改ubuntu18.04的dns

Ubuntu 18.04中修改DNS,可编辑/etc/resolv.conf添加nameserver或用图形界面调整网络设置

Ubuntu 18.04 DNS配置详解

在Ubuntu系统中,DNS(域名系统)的配置至关重要,它决定了如何将域名转换为IP地址,正确设置DNS不仅能提升网络访问速度,还能解决某些网站无法打开的问题,本文将详细介绍如何在Ubuntu 18.04上修改DNS设置,涵盖图形界面和命令行两种方式,并提供相关注意事项及常见问题解答。

通过图形界面配置DNS

对于桌面版的Ubuntu 18.04用户来说,使用NetworkManager图形配置工具是最便捷的方式之一,以下是具体步骤:

  1. 打开网络连接设置:点击屏幕右上角的网络图标,选择“有线”或“无线”对应的接口,然后点击齿轮形状的设置按钮。
  2. 进入IPv4标签页:切换到“IPv4”选项卡,方法选择为“手动”,此时会显示DNS服务器输入框。
  3. 添加新的DNS服务器地址:在提供的字段中输入希望使用的公共DNS或其他自定义的DNS服务器地址,如Google的8.8.8.8和8.8.4.4,或者Cloudflare的1.1.1.1等,多个DNS之间用逗号隔开。
  4. 保存更改并应用:点击右下角的“应用”按钮使更改生效。

这种方法简单直观,适合大多数普通用户的需求,如果是服务器环境或者是追求更精细控制的场景下,可能需要采用命令行的方式进行配置。

通过命令行修改DNS配置

✅ 方法一:编辑/etc/resolv.conf文件

这是传统的修改DNS的方法,直接编辑系统的解析配置文件:

sudo nano /etc/resolv.conf

在该文件中添加如下内容(替换成你想要的DNS服务器):

nameserver 8.8.8.8      # Google Public DNS
nameserver 8.8.4.4      # Another Google Public DNS

保存后退出编辑器即可,但需要注意的是,这种方式可能会被systemdresolved服务覆盖,导致重启后失效。

🔧 方法二:调整systemdresolved服务配置

从Ubuntu 16.04开始引入了systemdresolved作为默认的DNS解析器,推荐使用此方式进行持久化的DNS设置:

  1. 备份原始配置文件(可选但建议操作):
    sudo cp /etc/systemd/resolved.conf /etc/systemd/resolved.conf.bak
  2. 编辑主配置文件
    sudo nano /etc/systemd/resolved.conf

    找到类似以下的段落并进行修改:

    [Resolve]
    DNS=8.8.8.8 8.8.4.4       # 设置首选和备选DNS服务器
    Domains=~. local          # 本地域搜索列表
    LLMNR=no                  # 是否启用链路本地多播名称解析
    MulticastDNS=no           # 是否启用组播DNS支持
    Cache=yes                 # 开启缓存以提高性能
  3. 重启systemdresolved服务以加载新配置
    sudo systemctl restart systemdresolved
  4. 验证当前使用的DNS服务器:可以通过查看解析状态确认变化是否成功:
    systemdresolve status | grep "DNS Servers"
参数名 作用描述 示例值
DNS 指定要使用的DNS服务器列表,多个之间用空格分隔 8.8.8 8.8.4.4
Domains 定义默认的搜索域,当查询不完整时会自动附加这些后缀 ~. local
LLMNR 控制是否允许链路层多点传送名称解析协议 no
MulticastDNS 是否启用多播DNS的支持 no
Cache 是否启用内部缓存来加速重复请求的结果返回 yes

针对特定网卡接口的配置(适用于服务器版)

如果是服务器版本的Ubuntu 18.04,则需要针对具体的网络接口卡进行配置,假设你的网卡名为ens33,可以这样做:

  1. 创建或修改对应网卡的配置文件
    sudo nano /etc/netplan/01netcfg.yaml
    network:
      version: 2
      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]
  2. 应用新的网络计划
    sudo netplan apply

    这样就能确保指定网卡使用了新的DNS设置。

相关问题与解答

Q1: 修改后的DNS没有立即生效怎么办? A1: 确保已经正确地重启了相关的服务(如systemdresolved),并且检查/etc/resolv.conf是否被正确更新,有时候还需要清除旧有的缓存数据才能看到效果,可以尝试运行sudo systemdresolve flushcaches命令来刷新缓存。

Q2: 为什么推荐使用systemdresolved而不是直接编辑/etc/resolv.conf? A2: 因为systemdresolved提供了更多的功能特性,比如支持动态更新、更好的安全性和稳定性管理,以及与其他系统组件更好的集成,直接编辑/etc/resolv.conf虽然简单,但在现代Linux发行版中逐渐被淘汰,因为它不具备这些高级特性。

通过以上步骤,您可以根据实际需求灵活地在Ubuntu 18.04系统中配置和管理DNS设置,无论是为了提高浏览体验还是解决

发表评论:

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

«    2025年9月    »
1234567
891011121314
15161718192021
22232425262728
2930
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.