ubuntu网卡dns如何设置方法

编辑/etc/netplan/*.yaml文件,添加dns4/dns3字段,保存后

Ubuntu网卡DNS设置方法详解

Ubuntu系统中,正确配置网络接口的DNS服务器是确保网络连通性和域名解析正常的关键,本文将详细介绍四种主流的DNS配置方法,涵盖图形界面、命令行工具及配置文件修改方式,并附常见问题的解决方案。


通过Netplan配置(Ubuntu 17.10+)

查看网络接口状态

networkctl status

输出示例:

● Device: eth0 Realtek Ethernet
   ...
   LinkState: routable
   ...
   DHCP: yes
   ...

编辑Netplan配置文件

配置文件路径:/etc/netplan/*.yaml

示例配置文件(50cloudinit.yaml):
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: no
      addresses: [192.168.1.100/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [114.114.114.114,8.8.8.8]
参数项 说明
dhcp4 禁用DHCP(静态IP时必填)
addresses 静态IP地址+子网掩码
gateway4 默认网关
nameservers DNS服务器列表

应用配置并验证

sudo netplan apply
systemdresolve flushcaches

通过nmcli命令行配置

查看当前连接状态

nmcli connection show

输出示例:

ubuntu网卡dns如何设置方法

NAME    UUID                                  TYPE      DEVICE  STATE
eth0    f8c9e3f5a7b44c8b9d3e123456789abc  ethernet  eth0    connected

修改指定连接的DNS服务器

nmcli connection modify "eth0" ipv4.dns "8.8.4.4 114.114.114.114"
nmcli connection modify "eth0" ipv4.ignoreautodns yes

重启网络服务

sudo systemctl restart NetworkManager

图形化界面配置(Network Manager)

操作路径:

菜单 > 设置 > 网络 > 选择连接 > 编辑

配置界面说明:
区域 设置项 说明
IPv4设置 方法选择 选择”自动(DHCP)”或”手动”
DNS服务器 填写自定义DNS地址
忽略系统DNS 勾选后优先使用自定义DNS

直接修改/etc/resolv.conf(临时方案)

注意:

此方法在systemdresolved服务启用时会被覆盖,需配合服务配置使用。

修改步骤:
sudo nano /etc/resolv.conf
# 添加以下内容:
nameserver 1.1.1.1
nameserver 223.5.5.5
永久生效配置:

编辑/etc/systemd/resolved.conf

[Resolve]
DNS=114.114.114.114
FallbackDNS=8.8.8.8

重启服务:

ubuntu网卡dns如何设置方法

sudo systemctl restart systemdresolved

验证DNS配置有效性

测试域名解析

ping c 3 www.baidu.com
nslookup www.google.com
dig +short github.com

查看当前DNS配置

systemdresolve status

输出示例:

Global
       DNS Servers: 114.114.114.114
                    8.8.8.8
        DNSSEC NTA: Ignore

常见问题与解决方案

问题1:修改DNS后无法上网

原因:配置错误导致DNS服务器不可达
解决

  1. 恢复备份配置文件
  2. 使用nmcli connection edit "eth0" set ipv4.dns ""清除错误配置
  3. 临时使用Google公共DNS:sudo echo "nameserver 8.8.8.8" >> /etc/resolv.conf

问题2:DNS配置频繁失效

原因:NetworkManager或systemdresolved覆盖配置
解决

  1. 检查/etc/NetworkManager/NetworkManager.conf中的[main]段是否包含dns=default
  2. 禁用systemdresolved服务:sudo systemctl disable systemdresolved

相关问题与解答

Q1:如何测试当前DNS配置是否生效?

A
可通过以下命令验证:

ubuntu网卡dns如何设置方法

  1. ping c 3 www.baidu.com测试基础连通性
  2. nslookup example.com检查域名解析结果
  3. systemdresolve status查看系统实际使用的DNS服务器
    若出现temporary failure in name resolution错误,说明DNS配置未生效。

Q2:如何恢复默认的DNS设置?

A
根据配置方式选择对应操作:

  1. Netplan:删除nameservers字段后执行sudo netplan apply
  2. nmcli:运行nmcli connection modify "连接名" ipv4.dns ""清除DNS设置
  3. 图形界面:在网络设置中选择”自动获取DNS地址”
  4. resolv.conf:恢复系统默认文件(通常由systemdresolved

来源互联网整合,作者:小编,如若转载,请注明出处:https://www.aiboce.com/ask/202328.html

Like (0)
小编小编
Previous 2025年5月11日 16:58
Next 2025年5月11日 17:41

相关推荐

发表回复

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