在Ubuntu/Debian上设置永久DNS域名服务器

原因

我们都知道,编辑/etc/resolv.conf文件可以更改系统的DNS,但是很多时候重启之后更改又还原了,本文介绍的是一种永久设定DNS的方式。

通过安装resolvconf实现永久设置DNS

在Ubuntu或Debian中安裝resolvconf

首先通过以下命令检查是否安装resolvconf

sudo systemctl status resolvconf.service

如果提示如下,则说明没有安装:

Unit: resolvconf.service could not be found

如果提示如下,则说明已安装:

Active: active (exited)

通过如下命令来安装:

sudo apt update
sudo apt install resolvconf

安装完成之后通过如下命令检测resolvconf是否启动及设置自启动:

sudo systemctl status resolvconf.service

若没有启动或自启动,请通过如下命令设置:

sudo systemctl start resolvconf.service
sudo systemctl enable resolvconf.service
sudo systemctl status resolvconf.service

接下来配置/etc/resolvconf/resolv.conf.d/head文件:

sudo vim /etc/resolvconf/resolv.conf.d/head

按 i 键进入编辑模式,添加下面两行,这里使用的是Google的DNS:

nameserver 8.8.8.8 
nameserver 8.8.4.4

按esc键退出编辑模式,并输入 :wq! 后回车保存文件。

输入下面的命令重启resolvconf服务:

sudo systemctl start resolvconf.service

我们需要更新resolv.conf以使用新的DNS。输入以下代码:

sudo resolvconf --enable-updates
sudo resolvconf -u

现在当我们查看/etc/resolv.conf文件时,新的DNS应该已经添加进去了,重启之后也不会改变。

nameserver 8.8.8.8 
nameserver 8.8.4.4
另附上常用的DNS服务商

Google DNS

  • 8.8.8.8
  • 8.8.4.4
  • 2001:4860:4860::8888
  • 2001:4860:4860::8844

阿里云公共DNS

  • 223.5.5.5
  • 223.6.6.6

腾讯公共DNS

  • 119.29.29.29

Cloudflare DNS

  • 1.1.1.1