Ubuntu配置DNS
一、前言
在Ubuntu系统中,域名系统(DNS)的配置对于网络连接和域名解析至关重要,正确配置DNS可以确保系统能够快速解析域名,提高网络访问速度和稳定性,本文将详细介绍如何在Ubuntu系统中配置DNS,包括临时修改和永久修改的方法,并提供相关示例和注意事项。
二、临时修改DNS
临时修改DNS的方法相对简单,但重启后会失效,适用于临时需要更改DNS服务器的情况。
1. 修改/etc/resolv.conf
文件
/etc/resolv.conf
文件是系统用来配置DNS的主要文件之一,可以通过直接编辑该文件来临时更改DNS服务器。
步骤如下:
打开终端:按下Ctrl + Alt + T
组合键。
编辑文件:使用文本编辑器(如nano或vi)打开/etc/resolv.conf
文件,使用nano编辑器:
sudo nano /etc/resolv.conf
添加或修改DNS服务器地址:在文件中添加或修改nameserver
字段,指定所需的DNS服务器地址,使用Google的公共DNS服务器:
nameserver 8.8.8.8 nameserver 8.8.4.4
保存并退出:按Ctrl + O
保存更改,然后按Ctrl + X
退出编辑器。
>这种方法的优点是操作简单,即时生效,但缺点是重启后会失效。
三、永久修改DNS
永久修改DNS的方法涉及多个配置文件,具体方法取决于使用的网络管理工具。
1. 修改/etc/netplan/
目录下的.yaml文件
如果使用Netplan进行网络配置,可以通过编辑相应的.yaml文件来永久更改DNS服务器。
步骤如下:
找到Netplan配置文件:通常位于/etc/netplan/
目录下,文件名可能为01networkmanagerall.yaml
或其他类似名称,使用ls
命令查看:
ls /etc/netplan/
编辑配置文件:使用文本编辑器(如nano或vi)打开该文件。
sudo nano /etc/netplan/01networkmanagerall.yaml
添加或修改nameservers字段:在文件中添加或修改nameservers
字段,指定所需的DNS服务器地址。
network: version: 2 renderer: networkd ethernets: enp0s3: dhcp4: no addresses: 192.168.3.50/24 routes: to: default via: 192.168.3.1 nameservers: addresses: [223.6.6.6, 8.8.8.8]
保存并退出:按Ctrl + O
保存更改,然后按Ctrl + X
退出编辑器。
应用新的网络配置:运行以下命令以应用新的配置:
sudo netplan apply
验证配置:使用以下命令检查IP地址和DNS服务器设置是否正确:
ip a systemdresolve status
2. 修改/etc/systemd/resolved.conf
文件
如果使用systemdresolved作为DNS解析器,可以通过编辑/etc/systemd/resolved.conf
文件来永久更改DNS服务器。
步骤如下:
备份原文件:建议先备份原文件,以防出现问题时可以恢复。
sudo cp /etc/systemd/resolved.conf /etc/systemd/resolved.conf.bak
编辑文件:使用文本编辑器(如nano或vi)打开该文件。
sudo nano /etc/systemd/resolved.conf
添加或修改DNS服务器地址:在[Resolve]
部分添加或修改DNS
和FallbackDNS
字段,指定所需的DNS服务器地址。
[Resolve] DNS=8.8.8.8 114.114.115.115 FallbackDNS=8.8.4.4
保存并退出:按Ctrl + O
保存更改,然后按Ctrl + X
退出编辑器。
重启systemdresolved服务:运行以下命令以重启service:
sudo systemctl restart systemdresolved
设置开机启动:确保systemdresolved服务在开机时自动启动。
sudo systemctl enable systemdresolved
备份托管文件:将/etc/resolv.conf
文件移动为备份,并创建符号链接到systemdresolved的resolv.conf文件。
mv /etc/resolv.conf /etc/resolv.conf.bak ln s /run/systemd/resolve/resolv.conf /etc/resolv.conf
3. 修改/etc/NetworkManager/NetworkManager.conf
文件
如果使用NetworkManager进行网络配置,可以通过编辑/etc/NetworkManager/NetworkManager.conf
文件来永久更改DNS服务器。
步骤如下:
编辑文件:使用文本编辑器(如nano或vi)打开该文件。
sudo nano /etc/NetworkManager/NetworkManager.conf
注释掉dns=dnsmasq行:找到[main]
部分,将dns=dnsmasq
行注释掉。
[main] plugins=ifupdown,keyfile, dnsmasq #dns=dnsmasq
保存并退出:按Ctrl + O
保存更改,然后按Ctrl + X
退出编辑器。
编辑或创建dns配置文件:在/etc/NetworkManager/conf.d/
目录下创建或编辑一个dns文件,如/etc/NetworkManager/conf.d/dns.conf
,添加以下内容:
[main] dns=none [globaldnsdomain] server=8.8.8.8,114.114.114.114
重启NetworkManager服务:运行以下命令以重启service:
sudo systemctl restart NetworkManager
四、常见问题与解答
1. 如何更改Ubuntu的DNS服务器?
更改Ubuntu的DNS服务器可以通过临时修改或永久修改来实现,临时修改可以直接编辑/etc/resolv.conf
文件,而永久修改则需要根据使用的网络管理工具(如Netplan、systemdresolved或NetworkManager)来编辑相应的配置文件,具体步骤如上所述。
2. 为什么我修改了/etc/resolv.conf
文件后重启计算机DNS设置又恢复了?
这是因为在Ubuntu中,/etc/resolv.conf
文件是由resolvconf程序动态生成的,手动修改该文件会在重启后被覆盖,要永久更改DNS设置,需要根据使用的网络管理工具来编辑相应的配置文件,如Netplan的.yaml文件、systemdresolved的resolved.conf文件或NetworkManager的NetworkManager.conf文件及dns配置文件,完成这些步骤后,即使重启计算机,DNS设置也会保持不变。
通过以上详细的步骤和说明,相信读者已经掌握了在Ubuntu系统中配置DNS的方法,无论是临时修改还是永久修改,都可以根据实际需求选择合适的方法进行操作,了解常见问题的解答也有助于在遇到问题时能够迅速解决。
来源互联网整合,作者:小编,如若转载,请注明出处:https://www.aiboce.com/ask/76958.html