ubuntu 修改DNS
- 千里不留行
- 帖子: 605
- 注册时间: 2009-08-30 14:04
- 来自: 上海
ubuntu 修改DNS
ubuntu 修改DNS,禁用NetworkManager 后,避免127.0.0.53回环DNS
详见15楼
详见15楼
上次由 千里不留行 在 2020-06-10 11:56,总共编辑 19 次。
- zzugyl
- 帖子: 356
- 注册时间: 2011-03-07 17:26
- 系统: Ubuntu 20.04.3 LTS
- astolia
- 论坛版主
- 帖子: 6570
- 注册时间: 2008-09-18 13:11
Re: ubuntu 修改DNS的步骤、 杀死127.0.0.53
你自己也没有真正搞清楚DNS服务器配置的机制嘛,整篇文章错误很多。
先说改/etc/resolv.conf的事
另外,设置/etc/resolv.conf后不需要重启网络服务。随着ifupdown退出历史舞台,重启网络服务也不是用/etc/init.d/networking了
后面在你的方法三中,终于找到负责127.0.0.53的正主systemd-resolved了,但可惜由于很多概念上的错误,导致提出的“解决方案”也有问题
除非是在NetworkManager里面设置不要自动设置DNS,才会去用Global里设置的地址。
在默认的自动设置DNS的情况下,进行实际查询的时候,是根据/etc/resolv.conf里的内容,向127.0.0.53发送请求,而127.0.0.53后面的systemd-resolved,会向自动设置的DNS服务器转发(上面例子里是10.0.2.3)转发请求。这个自动设置的DNS服务器,正是通过DHCP自动获取IP地址时,一起发回来的DNS服务器地址。这个在windows上也是一样的。
虽然多了一个127.0.0.53去转手,但由于127.0.0.53是个本地回环地址,速度非常快,单次查询增加的耗时微乎其微。而且systemd-resolved默认开启了缓存功能,减少了真正向外查询的次数
所以你说ubuntu没有自动设置DNS完全是错误的,后面的比方就更是可笑了。
先说改/etc/resolv.conf的事
/etc/resolv.conf里面第一行就写得明明白白,叫你不要去改动
/etc/resolv.conf 是个指向/run下面文件的软链接,而/run是tmpfs,自然不可能在重启后保留内容# This file is managed by man:systemd-resolved(8). Do not edit.
代码: 全选
$ ls -l /etc/resolv.conf
lrwxrwxrwx 1 root root 39 Aug 22 2019 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf
$ mount | grep /run
tmpfs on /run type tmpfs (rw,nosuid,nodev,noexec,relatime,size=3290720k,mode=755)
后面在你的方法三中,终于找到负责127.0.0.53的正主systemd-resolved了,但可惜由于很多概念上的错误,导致提出的“解决方案”也有问题
这个结果并不能说明当前使用的DNS服务器就是114.114.114.114和8.8.8.8。因为你修改/etc/systemd/resolved.conf下面的DNS=只影响Global,对于具体的网络接口所用的dns服务器,要翻页到下面的Link N(网络接口名)部分才有,比如我虚拟机上的例子
代码: 全选
Global
Current DNS Server: 8.8.8.8
DNS Servers: 114.114.114.114
DNSSEC NTA: 10.in-addr.arpa
16.172.in-addr.arpa
168.192.in-addr.arpa
17.172.in-addr.arpa
18.172.in-addr.arpa
19.172.in-addr.arpa
20.172.in-addr.arpa
21.172.in-addr.arpa
22.172.in-addr.arpa
23.172.in-addr.arpa
24.172.in-addr.arpa
25.172.in-addr.arpa
26.172.in-addr.arpa
27.172.in-addr.arpa
28.172.in-addr.arpa
29.172.in-addr.arpa
30.172.in-addr.arpa
31.172.in-addr.arpa
corp
d.f.ip6.arpa
home
internal
intranet
lan
local
private
test
Link 2 (enp0s3)
Current Scopes: DNS
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
DNS Servers: 10.0.2.3
DNS Domain: ~.
在默认的自动设置DNS的情况下,进行实际查询的时候,是根据/etc/resolv.conf里的内容,向127.0.0.53发送请求,而127.0.0.53后面的systemd-resolved,会向自动设置的DNS服务器转发(上面例子里是10.0.2.3)转发请求。这个自动设置的DNS服务器,正是通过DHCP自动获取IP地址时,一起发回来的DNS服务器地址。这个在windows上也是一样的。
虽然多了一个127.0.0.53去转手,但由于127.0.0.53是个本地回环地址,速度非常快,单次查询增加的耗时微乎其微。而且systemd-resolved默认开启了缓存功能,减少了真正向外查询的次数
所以你说ubuntu没有自动设置DNS完全是错误的,后面的比方就更是可笑了。
- 千里不留行
- 帖子: 605
- 注册时间: 2009-08-30 14:04
- 来自: 上海
- 千里不留行
- 帖子: 605
- 注册时间: 2009-08-30 14:04
- 来自: 上海
-
- 论坛版主
- 帖子: 5261
- 注册时间: 2007-01-14 16:23
Re: ubuntu 修改DNS的步骤、 杀死127.0.0.53
那你为什么不彻底点,直接干掉systemd,用非systemd的发行版
- 千里不留行
- 帖子: 605
- 注册时间: 2009-08-30 14:04
- 来自: 上海
- astolia
- 论坛版主
- 帖子: 6570
- 注册时间: 2008-09-18 13:11
Re: ubuntu 修改DNS的步骤、 杀死127.0.0.53
别TM自作聪明了。
我知道那是你列出的网上的错误方法,我针对的是后面你对它的说明。也就是这段
这里面前面扯了一大堆DNS的事,后面解释方法为什么无效的原因却草草带过,而且对最根本的问题(Do not edit)完全不谈。
讨厌127.0.0.53不等于127.0.0.53影响网速,更不代表127.0.0.53是无效的。
你再去搜一下“127.0.0.53影响网速”看还能搜到几个?
对新事物不了解而产生害怕,这很正常。古有照相摄人魂魄,今有拆基站防辐射。你自己不了解,在自己的电脑上折腾我不管你。但在这里散播FUD误导别人,我就要把你批判一番了。
- 百草谷居士
- 帖子: 3939
- 注册时间: 2006-02-10 16:36
- 系统: debian12/xubuntu2404
Re: ubuntu 修改DNS的步骤、 杀死127.0.0.53
不明白几位大神在讨论什么?DNS不是可以通过图形化的网络管理器界面来修改吗?
有这么麻烦,神神道道的吗?
有这么麻烦,神神道道的吗?
debian 12.5 / xubuntu 24.04
为何热衷于搞发行版的多,搞应用程序开发的少?Linux最多余的就是各种发行版,最缺的就是应用程序,特别是行业应用程序。
为何热衷于搞发行版的多,搞应用程序开发的少?Linux最多余的就是各种发行版,最缺的就是应用程序,特别是行业应用程序。
- 千里不留行
- 帖子: 605
- 注册时间: 2009-08-30 14:04
- 来自: 上海
-
- 论坛版主
- 帖子: 5261
- 注册时间: 2007-01-14 16:23
Re: ubuntu 修改DNS的步骤、 杀死127.0.0.53
如果你只是要解决DNS的问题,可以 ls -l /etc/resolv.conf看下输出,
ubuntu的话,一般是修改/etc/systemd/resoved.conf ,里面有你要改的dns设置
至于127.0.0.53,那个就是个本地回环地址,和127.0.0.1一样的,发往那个地址的包不会出现在本地系统以外的地方,除非配置错误,不然应该没什么理由影响网速
https://blog.csdn.net/weixin_43640082/a ... s/83859885
https://www.jianshu.com/p/b7e176ebd2d9
https://www.jianshu.com/p/ad7cd1d5be45
讲道理,你也算是个老用户了,这几年ubuntu各方面都很多改变,以前的老方法不一定继续有用,及时了解新系统的设置方式比较好一点(开发喜欢,用户只能被带着跑)
还是那句话,如果你真的对它恨的牙痒痒,直接换一个不用systemd的发行版
ubuntu的话,一般是修改/etc/systemd/resoved.conf ,里面有你要改的dns设置
至于127.0.0.53,那个就是个本地回环地址,和127.0.0.1一样的,发往那个地址的包不会出现在本地系统以外的地方,除非配置错误,不然应该没什么理由影响网速
https://blog.csdn.net/weixin_43640082/a ... s/83859885
https://www.jianshu.com/p/b7e176ebd2d9
https://www.jianshu.com/p/ad7cd1d5be45
讲道理,你也算是个老用户了,这几年ubuntu各方面都很多改变,以前的老方法不一定继续有用,及时了解新系统的设置方式比较好一点(开发喜欢,用户只能被带着跑)
还是那句话,如果你真的对它恨的牙痒痒,直接换一个不用systemd的发行版
- 千里不留行
- 帖子: 605
- 注册时间: 2009-08-30 14:04
- 来自: 上海
-
- 论坛版主
- 帖子: 5261
- 注册时间: 2007-01-14 16:23
Re: ubuntu 修改DNS的步骤、 杀死127.0.0.53
犹豫了下该怎么回帖
因为发现自己好像没仔细验证就回帖了……
ubuntu18.04用了netplan设置网卡,很多之前的方式已经不起作用
刚试了下
编辑/etc/systemd/resolvd.conf里面的dns只会影响systemd-resolved --status里面的global dns,对应的网卡的dns是没改动的也就是还是自动获得的
如果你想要手动设置某个网卡的DNS,你需要修改/etc/netplan/下面的配置文件,我新装的虚拟机里是 01-network-manager-all.yaml 然后运行
或者在图形界面修改
下面这篇文章里面有比较详细的描述,图也是从它那拿来的
https://www.configserverfirewall.com/ub ... ns-server/
至于astolia斑竹,我还是很尊重他的,他在技术方面比我强太多,不管是系统设置问题,还是编程方面,不是甩我几条街的问题
很多问题他都能指出问题的原因,并且给出正确的方法
也许你觉得他说话语气不好,但是他只是在指出你走的弯路,毕竟很多人会发一些没经过自己验证的帖子,或者错误的理解的文章,会误导其他搜索到文章的网友
然后话题说回来,其实你发这个帖子,本意只是想解决ubuntu网速慢的问题,影响网速的原因还是挺多的,比方系统默认MTU的大小什么的
我倒是觉得如果真是DNS的问题,不妨手动设置下DNS试试,没必要大费周章去折腾systemd里面的各种包
我之前网上见过一个华硕路由经常掉线的问题,是因为华硕路由会主动发一个echo请求给isp,然后isp不管是因为设置还是其他原因,忽略了,没回,超时,路由就会认为网络断了
有些问题有争议,被批评了,即便是对方语气不好,回头仔细验证下也是好的,没必要坚持自己一定是对的和对方吵,虽然说我被批评有时候也会火大就是了
因为发现自己好像没仔细验证就回帖了……
ubuntu18.04用了netplan设置网卡,很多之前的方式已经不起作用
刚试了下
编辑/etc/systemd/resolvd.conf里面的dns只会影响systemd-resolved --status里面的global dns,对应的网卡的dns是没改动的也就是还是自动获得的
如果你想要手动设置某个网卡的DNS,你需要修改/etc/netplan/下面的配置文件,我新装的虚拟机里是 01-network-manager-all.yaml 然后运行
代码: 全选
sudo netplan apply
https://www.configserverfirewall.com/ub ... ns-server/
至于astolia斑竹,我还是很尊重他的,他在技术方面比我强太多,不管是系统设置问题,还是编程方面,不是甩我几条街的问题
很多问题他都能指出问题的原因,并且给出正确的方法
也许你觉得他说话语气不好,但是他只是在指出你走的弯路,毕竟很多人会发一些没经过自己验证的帖子,或者错误的理解的文章,会误导其他搜索到文章的网友
然后话题说回来,其实你发这个帖子,本意只是想解决ubuntu网速慢的问题,影响网速的原因还是挺多的,比方系统默认MTU的大小什么的
我倒是觉得如果真是DNS的问题,不妨手动设置下DNS试试,没必要大费周章去折腾systemd里面的各种包
我之前网上见过一个华硕路由经常掉线的问题,是因为华硕路由会主动发一个echo请求给isp,然后isp不管是因为设置还是其他原因,忽略了,没回,超时,路由就会认为网络断了
有些问题有争议,被批评了,即便是对方语气不好,回头仔细验证下也是好的,没必要坚持自己一定是对的和对方吵,虽然说我被批评有时候也会火大就是了
- 千里不留行
- 帖子: 605
- 注册时间: 2009-08-30 14:04
- 来自: 上海
- 千里不留行
- 帖子: 605
- 注册时间: 2009-08-30 14:04
- 来自: 上海
怎样在Ubuntu 18.04 中设置DNS地址?
本楼主要内容:
├── 怎样在Ubuntu 18.04 中设置DNS地址?
├── A)在Ubuntu18.04 Server(服务器版)上设置DNS的方法:
│ ├── 查看当前的DNS地址
├── B)在Ubuntu18.04 Desktop(桌面版)上设置DNS的方法:
└── C)让Unbound来自动帮助您配置最佳DNS地址的方法:
---------------------------------------------------
怎样在Ubuntu 18.04 中设置DNS地址?
=========================
这里的主要内容,来自onlylove版主推荐的一篇帖子。................想要查看一下英文原帖(请点击这里). 这是原文的图片。原帖介绍了如何在服务器版Ubuntu 18.04或桌面版buntu 18.04上面设置DNS的方法。
这里稍作改动,内容如下:
如果,您是一名Ubuntu系统的用户,了解一下,在Ubuntu中,如何设置DNS地址,是一件很重要的情,因为它切实地关系着我们的网速。
想要在Ubuntu18.04上面设置DNS地址,具体也要看您是使用哪种版本Ubuntu。不同版本的系统,设置的方法也不相同。
如果您在使用是服务器版的Ubuntu18.04,就需要将DNS地址添加到对应网卡DNS的配的文件里面;桌面版的Ubuntu18.04用户,只需要使用NetworkManager图形配置工具,就可以直接进行DNS地址的设置了。
A)在Ubuntu18.04 Server(服务器版)上设置DNS的方法:
=========================
步骤一,找到您主机的网卡DNS的配置文件
我们需要将DNS地址添加到对应某个网卡的DNS的配置文件中。这个文件在 /etc/netplan目录中,具体是哪个文件,我们就要先来查看一下。
查看方法是,在终端输入:
也可以不加sudo 。
下图是原帖的输出结果: 原帖作者的这个输出结果,说明在他的主机内,对应网卡的配置文件就是: 50-cloud-init.yaml 或者是01-netcfg.yaml
需要注意的是,每个人的系统情况不同,这个网卡的DNS配置文件的名字也不同,比如,论坛版主onlylove新装的虚拟机里,查到的是 01-network-manager-all.yaml,那么,他的网卡的配置文件就是: 01-network-manager-all.yaml。而您的的网卡的配置文件,可能和他们还不一样,或者,您的是01-netcfg.yaml
而本人的主机里面,根本就没有这个文件。下图是本人在主机里面查找这个文件的结果: 我们找到了自己系统内网卡的DNS配置文件,还需要查看一下自己的网卡。
步骤二,找到您的主机网卡
查看网卡方法是,在终端输入:
下图是本人的网卡情况:
注意,每个人的系统主机不同,网卡的名字也不同,像是原帖的作者,他的有线网卡名字是:enp0s3 ,本人的确是 enp0s25。
找到了网卡DNS的配置文件,知道了网卡名,我们就来修改网卡DNS的配置文件吧!
步骤三,修改网卡DNS的配置文件
在终端输入:
注意:这个命令里面,打开是原作者查到的 50-cloud-init.yaml 。
50-cloud-init.yaml 这段,要填入您刚刚查到的、您自己主机内的网卡DNS配置文件的名字,如,论坛版主onlylove的 01-network-manager-all.yaml,他就要输入如下命令:
修改的内容,如下图:
这是英文原帖作者的网卡DNS的配置文件,本人主机里没有这个文件,原作者在他自己的网卡的配置文件中,填加了如下的内容:
他是用了谷歌的DNS服务器地址,您可以根据您自己的实际情况填加,比如:
个人建议,最好是找出离您家最近的DNS地址来添加。比如,您住在深圳,您就可以直接设置成深圳的DNS地址。
关于各地区的公共DNS服务器地址,您到网上搜一搜,基本上都可以在网上查到。
另外,在addresses: [8.8.8.8, 8.8.4.4]这段内容里面,可以添加多个DNS地址,要注意的是,需要在每个DNS之间,要加一个逗号来分隔。
修改完网卡配置文件之后,请您。接着,需要:
步骤四,使用netplan apply命令重新加载配置
在终端输入:
注意,在18.04之前的ubuntu版本之中,网卡的DNS配置文件,是在/etc/network/interfaces之中。
查看当前的DNS地址
-------------------------------------
要检查您当前使用的DNS,如果,您是使用的是静态IP地址,可以检查Netplan配置文件。
如果,您没有固定IP地址,可以在终端运行systemd resolve命令来查看:
下图是英文原作者的查看结果:
B)在Ubuntu18.04 Desktop(桌面版)上设置DNS的方法:
=========================
桌面版的Ubuntu18.04 含有NetworkManager应用,桌面版的Ubuntu18.04 要设置DNS地址,可以通过图形用户界面进行编辑。
只需要您用鼠标点击顶栏的左上角,并打开,就可以直接设置DNS地址了。
如下图: 您点击一下“IPV4”选项卡(或“IPv6”)在“DNS”字段下添加上您要加入的DNS的IP地址
如果不想从DHCP服务器自动获取DNS配置,请去掉 Automatic (DHCP)前面的点。 更改完成之后,您需要重新启动一下您的网络,以便应用新的DNS设置。
在Ubuntu16.04(包含Ubuntu16.04)以前的ubuntu版本上,用于配置DNS地址的是/etc/resolv.conf文件。在Ubuntu 18.04里,这个/resolv.conf文件仍然存在,但它已经不再是你配置DNS地址的地方了。
以上内容,来自来onlylove版主推荐的一篇英文帖子,
本人的1楼主贴内容,不够精简,这里也在下面重新列出:
对于那些在 /etc/netplan目录中,没有网卡配置文件**xxx.yaml**的用户。以及,已经禁用了NetworkManager 的用户,可以考虑下面的方法。(这个方法,也绝不单单是这两种用户才可以使用。)
注意:下面的内容存在大量错误,参见后面回帖的讨论 - by astolia
C)让Unbound来自动帮助您配置最佳DNS地址的方法:
=========================
用Unbound来替换掉systemd-resolvd,让Unbound接替NetworkManager,让Unbound来自动帮您配置出最佳DNS地址,顺便彻底脱离127.0.0.53。
Unbound是一个缓存DNS解析器,unbound是Red Hat(红帽)公司推荐的DNS软件........
具体步骤如下:
步骤一, 下载unbound_1.6.7-1ubuntu2.3_amd64.deb
Unbound主页(点这里).这个是外网的链接,较卡,并且没有DED包,推荐您:
...............我们可以直接从国内的阿里源(下载DED包).
或者,点击这个链接:http://mirrors.aliyun.com/ubuntu/pool/u ... _amd64.deb
步骤二,停止systemd-resolvd
步骤三,安装unbound
步骤四,清空(rm -r) fresolv.conf的内容:
步骤五,将dns服务替换为unbound:
在[main]
下面添加
dns=unbound
如图:
然后,保存。这时候,重启您的电脑。如果,您以后还想要自行手动设定DNS地址,要先把这里改回去,手动设定DNS地址的方法,参考本楼A)的内容。
此时,您系统内的/etc/resolv.conf文件里面,已经不再会是nameserver 127.0.0.53,也不是nameserver 8.8.8.8 ,更不是nameserver 114.114.114.114 。
那么,将dns服务替换为unbound之后,/etc/resolv.conf里的内容,究竟是什么?
您可以打开终端,输入如下命令查看:
(cat后面有一个空格)
您会发现,此时的resolv.conf里面,已经unbound根据您的网络实际情况,自动设置的DNS。
比如,本人的DNS就是unbound自动获取的本地局域网DNS。
本人的resolv.conf内容,如下:
这是一个不规范的DNS局域网服务器地址,但,这个就是unbound给本人的主机找出,并设置为默认的最适合本人这里网络条件的DNS地址。
另外,当您以后禁用Unbound以后,系统还是会给您自动加上一个回环地址,这次不再是127.0.0.53 ,而是另一个 127.0.0.1,这样也算是干掉了127.0.0.53吧!
ubuntu自带的NetworkManager 也好,红帽公司推荐的Unbound也好,他们都会根据您的网络的实际情况,为您的系统自动配置DNS,只不过是当您禁用了它们以后,它们各自都会重新为您的系统留下一个回环的DNS地址。不同的是,一个是127.0.0.53 ,而另一个是 127.0.0.1。
如果,您不能正确手动固定您的IP地址,不能正确设置您的DNS,就不要轻易地去禁用NetworkManage或Unbound。
在您禁用了NetworkManager 或Unbound以后,它们在您的系统里面遗留下来的127.0.0.53或者是127.0.0.1这样的回环DNS。恰恰正是您上网慢的一个主要原因。
正确设置DNS,或固定IP的方法,参看本文上面内容A)。
注意: 在18.04之前的ubuntu版本或其它的ubuntu衍生版,如linux-lite之中,网卡的DNS配置文件,是在/etc/network/interfaces之中。
、、
、、
├── 怎样在Ubuntu 18.04 中设置DNS地址?
├── A)在Ubuntu18.04 Server(服务器版)上设置DNS的方法:
│ ├── 查看当前的DNS地址
├── B)在Ubuntu18.04 Desktop(桌面版)上设置DNS的方法:
└── C)让Unbound来自动帮助您配置最佳DNS地址的方法:
---------------------------------------------------
怎样在Ubuntu 18.04 中设置DNS地址?
=========================
这里的主要内容,来自onlylove版主推荐的一篇帖子。................想要查看一下英文原帖(请点击这里). 这是原文的图片。原帖介绍了如何在服务器版Ubuntu 18.04或桌面版buntu 18.04上面设置DNS的方法。
这里稍作改动,内容如下:
如果,您是一名Ubuntu系统的用户,了解一下,在Ubuntu中,如何设置DNS地址,是一件很重要的情,因为它切实地关系着我们的网速。
想要在Ubuntu18.04上面设置DNS地址,具体也要看您是使用哪种版本Ubuntu。不同版本的系统,设置的方法也不相同。
如果您在使用是服务器版的Ubuntu18.04,就需要将DNS地址添加到对应网卡DNS的配的文件里面;桌面版的Ubuntu18.04用户,只需要使用NetworkManager图形配置工具,就可以直接进行DNS地址的设置了。
A)在Ubuntu18.04 Server(服务器版)上设置DNS的方法:
=========================
步骤一,找到您主机的网卡DNS的配置文件
我们需要将DNS地址添加到对应某个网卡的DNS的配置文件中。这个文件在 /etc/netplan目录中,具体是哪个文件,我们就要先来查看一下。
查看方法是,在终端输入:
代码: 全选
sudo ls -l /etc/netplan/
下图是原帖的输出结果: 原帖作者的这个输出结果,说明在他的主机内,对应网卡的配置文件就是: 50-cloud-init.yaml 或者是01-netcfg.yaml
需要注意的是,每个人的系统情况不同,这个网卡的DNS配置文件的名字也不同,比如,论坛版主onlylove新装的虚拟机里,查到的是 01-network-manager-all.yaml,那么,他的网卡的配置文件就是: 01-network-manager-all.yaml。而您的的网卡的配置文件,可能和他们还不一样,或者,您的是01-netcfg.yaml
而本人的主机里面,根本就没有这个文件。下图是本人在主机里面查找这个文件的结果: 我们找到了自己系统内网卡的DNS配置文件,还需要查看一下自己的网卡。
步骤二,找到您的主机网卡
查看网卡方法是,在终端输入:
代码: 全选
ifconfig
找到了网卡DNS的配置文件,知道了网卡名,我们就来修改网卡DNS的配置文件吧!
步骤三,修改网卡DNS的配置文件
在终端输入:
代码: 全选
sudo gedit /etc/netplan/50-cloud-init.yaml
50-cloud-init.yaml 这段,要填入您刚刚查到的、您自己主机内的网卡DNS配置文件的名字,如,论坛版主onlylove的 01-network-manager-all.yaml,他就要输入如下命令:
代码: 全选
sudo gedit /etc/netplan/01-network-manager-all.yaml
代码: 全选
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
代码: 全选
首选:114.114.114.114 备选:114.114.114.115
代码: 全选
深圳市(中国电信)首选DNS:202.96.128.166 备份DNS:202.96.134.133
另外,在addresses: [8.8.8.8, 8.8.4.4]这段内容里面,可以添加多个DNS地址,要注意的是,需要在每个DNS之间,要加一个逗号来分隔。
修改完网卡配置文件之后,请您。接着,需要:
步骤四,使用netplan apply命令重新加载配置
在终端输入:
代码: 全选
sudo netplan apply
查看当前的DNS地址
-------------------------------------
要检查您当前使用的DNS,如果,您是使用的是静态IP地址,可以检查Netplan配置文件。
如果,您没有固定IP地址,可以在终端运行systemd resolve命令来查看:
代码: 全选
systemd-resolve --status
B)在Ubuntu18.04 Desktop(桌面版)上设置DNS的方法:
=========================
桌面版的Ubuntu18.04 含有NetworkManager应用,桌面版的Ubuntu18.04 要设置DNS地址,可以通过图形用户界面进行编辑。
只需要您用鼠标点击顶栏的左上角,并打开,就可以直接设置DNS地址了。
如下图: 您点击一下“IPV4”选项卡(或“IPv6”)在“DNS”字段下添加上您要加入的DNS的IP地址
如果不想从DHCP服务器自动获取DNS配置,请去掉 Automatic (DHCP)前面的点。 更改完成之后,您需要重新启动一下您的网络,以便应用新的DNS设置。
在Ubuntu16.04(包含Ubuntu16.04)以前的ubuntu版本上,用于配置DNS地址的是/etc/resolv.conf文件。在Ubuntu 18.04里,这个/resolv.conf文件仍然存在,但它已经不再是你配置DNS地址的地方了。
以上内容,来自来onlylove版主推荐的一篇英文帖子,
本人的1楼主贴内容,不够精简,这里也在下面重新列出:
对于那些在 /etc/netplan目录中,没有网卡配置文件**xxx.yaml**的用户。以及,已经禁用了NetworkManager 的用户,可以考虑下面的方法。(这个方法,也绝不单单是这两种用户才可以使用。)
注意:下面的内容存在大量错误,参见后面回帖的讨论 - by astolia
C)让Unbound来自动帮助您配置最佳DNS地址的方法:
=========================
用Unbound来替换掉systemd-resolvd,让Unbound接替NetworkManager,让Unbound来自动帮您配置出最佳DNS地址,顺便彻底脱离127.0.0.53。
Unbound是一个缓存DNS解析器,unbound是Red Hat(红帽)公司推荐的DNS软件........
具体步骤如下:
步骤一, 下载unbound_1.6.7-1ubuntu2.3_amd64.deb
Unbound主页(点这里).这个是外网的链接,较卡,并且没有DED包,推荐您:
...............我们可以直接从国内的阿里源(下载DED包).
或者,点击这个链接:http://mirrors.aliyun.com/ubuntu/pool/u ... _amd64.deb
步骤二,停止systemd-resolvd
代码: 全选
sudo systemctl stop systemd-resolved
sudo systemctl disable systemd-resolved
代码: 全选
sudo dpkg -i unbound_1.6.7-1ubuntu2.3_amd64.deb
代码: 全选
sudo rm -rf /etc/resolv.conf
步骤五,将dns服务替换为unbound:
代码: 全选
sudo gedit /etc/NetworkManager/NetworkManager.conf
下面添加
dns=unbound
如图:
然后,保存。这时候,重启您的电脑。如果,您以后还想要自行手动设定DNS地址,要先把这里改回去,手动设定DNS地址的方法,参考本楼A)的内容。
此时,您系统内的/etc/resolv.conf文件里面,已经不再会是nameserver 127.0.0.53,也不是nameserver 8.8.8.8 ,更不是nameserver 114.114.114.114 。
那么,将dns服务替换为unbound之后,/etc/resolv.conf里的内容,究竟是什么?
您可以打开终端,输入如下命令查看:
代码: 全选
cat /etc/resolv.conf
您会发现,此时的resolv.conf里面,已经unbound根据您的网络实际情况,自动设置的DNS。
比如,本人的DNS就是unbound自动获取的本地局域网DNS。
本人的resolv.conf内容,如下:
代码: 全选
Generated by NetworkManager
nameserver 192.168.18.1
另外,当您以后禁用Unbound以后,系统还是会给您自动加上一个回环地址,这次不再是127.0.0.53 ,而是另一个 127.0.0.1,这样也算是干掉了127.0.0.53吧!
ubuntu自带的NetworkManager 也好,红帽公司推荐的Unbound也好,他们都会根据您的网络的实际情况,为您的系统自动配置DNS,只不过是当您禁用了它们以后,它们各自都会重新为您的系统留下一个回环的DNS地址。不同的是,一个是127.0.0.53 ,而另一个是 127.0.0.1。
如果,您不能正确手动固定您的IP地址,不能正确设置您的DNS,就不要轻易地去禁用NetworkManage或Unbound。
在您禁用了NetworkManager 或Unbound以后,它们在您的系统里面遗留下来的127.0.0.53或者是127.0.0.1这样的回环DNS。恰恰正是您上网慢的一个主要原因。
正确设置DNS,或固定IP的方法,参看本文上面内容A)。
注意: 在18.04之前的ubuntu版本或其它的ubuntu衍生版,如linux-lite之中,网卡的DNS配置文件,是在/etc/network/interfaces之中。
、、
、、
上次由 千里不留行 在 2020-06-10 12:25,总共编辑 9 次。