如何通过GUI或命令行更改Ubuntu 20.04的DNS设置

之前有Hostease的客户反馈,虽然他的Ubuntu 20.04系统网络是通的,但服务器无法ping通域名。经过检查发现,问题出在DNS配置未正确设置。

在网络环境中,DNS(域名系统)的配置对服务器的网络性能、稳定性和安全性有着直接影响。作为一款广泛使用的Linux发行版,Ubuntu 20.04提供了多种修改DNS设置的方法,包括通过图形界面(GUI)和命令行(CLI)进行操作。

在本文中,我们将详细讲解这两种方法的具体步骤,并帮助您选择适合自己的方式高效完成DNS设置的调整。

一、什么是DNS?为什么要修改DNS设置?

DNS的作用是将人类可读的域名(如example.com)转换为计算机可读的IP地址(如192.168.1.1)。

默认DNS的局限性:许多设备使用的是ISP(网络服务提供商)提供的默认DNS服务器,可能存在速度慢、隐私性差或不稳定的问题。

更改DNS的优势:通过手动更改为更快、更安全的公共DNS(如Google 8.8.8.8或Cloudflare 1.1.1.1),您可以显著提升网络体验。

二、通过GUI更改DNS设置

适用场景:适合对命令行不熟悉的用户,操作直观、简便。

1. 打开网络设置

在桌面环境中,点击"设置"并搜索"网络",进入网络管理页面。

2. 选择网络连接

在网络设置中,您可以看到所有的网络连接(如有线、Wi-Fi)。选择需要更改DNS的网络连接,并点击其旁边的齿轮图标进入详细设置。

3. 修改DNS地址

在"IPv4"或"IPv6"选项卡中,关闭"自动DNS"选项,然后手动输入DNS服务器地址,例如:

Google DNS:8.8.8.8,8.8.4.4

Cloudflare DNS:1.1.1.1,1.0.0.1

4. 保存并应用更改

点击"应用"按钮保存设置,断开并重新连接网络,确保新配置生效。

三、通过命令行更改DNS设置

适用场景:适合服务器管理员和高级用户,灵活性更强。

1. 使用Netplan工具

Ubuntu 18.04及以上版本采用Netplan管理网络配置,配置文件为YAML格式。

(1)找到Netplan配置文件

Netplan配置文件通常存储在/etc/netplan/目录下。运行以下命令查看文件:

ls /etc/netplan/

(2)编辑配置文件

使用您喜欢的编辑器(如Nano或Vim)打开Netplan配置文件,例如:

sudo nano /etc/netplan/01-netcfg.yaml

在文件中找到nameservers字段并添加新的DNS地址:

nameservers:

addresses:

  • 8.8.8.8

  • 8.8.4.4

(3)保存并应用更改

保存文件后运行以下命令使配置生效:

sudo netplan apply

2. 验证DNS设置

执行以下命令检查当前DNS服务器是否更新:

resolvectl status | grep "DNS Server" -A2

四、验证DNS解析效果

无论使用GUI还是CLI方法更改DNS,都可以通过以下步骤验证是否正常工作:

ping命令:测试某个域名是否可以正确解析:

ping google.com

nslookup命令:检查域名解析到的IP地址:

nslookup example.com

总结

通过GUI和命令行两种方式,可以轻松地在Ubuntu 20.04上设置DNS服务器,优化网络性能。无论是简单快捷的图形界面操作,还是功能强大的命令行工具,都能满足不同用户的需求。

相关推荐
用户6135411460168 分钟前
xampplinux_v174beta11在 Linux 下的安装与配置步骤
linux
Byron Loong14 分钟前
【系统】Mac系统和Linux 指令对比
linux·macos·策略模式
markvivv39 分钟前
在 Kylin Linux Advanced Server for Kunpeng V10 上构建 VSCode 1.106
linux·vscode·kylin
看见繁华1 小时前
Linux 交叉编译实践笔记
linux·运维·笔记
tianyuanwo1 小时前
深入解析CentOS 8网络配置:NetworkManager DNS管理机制与网卡类型深度剖析
linux·网络·centos
tianyuanwo1 小时前
深入解析CentOS 8中NetworkManager重启后DNS配置被覆盖的机制与解决方案
linux·运维·centos·dns
Dragon~Snow1 小时前
Linux-centOS Stream 9 系统 mysql-8.4.7 RPM版本
linux·mysql·centos
秋风未动蝉已先觉1 小时前
CentOs服务器 systemctl执行权限授权给普通权限work用户
linux·服务器
程序员zgh1 小时前
Linux 系统调用
linux·运维·服务器·c语言·c++·系统安全
Stuomasi_xiaoxin1 小时前
ROS2介绍,及ubuntu22.04 安装ROS 2部署使用!
linux·人工智能·深度学习·ubuntu