interfaces 里配置的dns能覆盖 dnsmasq代理的127.0.1.1吗

包含网卡/无线网的网络问题和ADSL/校园网/宽带拨号支持及代理/共享等网络使用问题
回复
ringgo
帖子: 6
注册时间: 2020-06-16 16:58
系统: ubuntu 16.04
来自: 帝都

interfaces 里配置的dns能覆盖 dnsmasq代理的127.0.1.1吗

#1

帖子 ringgo » 2020-06-17 18:48

当前系统版本为16.04
查看/etc/resolv.conf dns为127.0.1.1
现在/etc/network/interfaces里配置 dns-nameservers 8.8.8.8
重启网络服务networking
查看/etc/resolv.conf dns仍为127.0.1.1

如何能让interfaces 里配置的dns与 dnsmasq默认的dns127.0.1.1 同时生效呢
头像
astolia
论坛版主
帖子: 6514
注册时间: 2008-09-18 13:11

Re: interfaces 里配置的dns能覆盖 dnsmasq代理的127.0.1.1吗

#2

帖子 astolia » 2020-06-17 22:23

你明明用的是桌面版,为什么不直接通过network manager的图形界面来配置,而要去编辑/etc/network/interfaces?

127.0.1.1这个是作为dns缓存服务器用的,实际查询的还是在network manager里设置的dns服务器。默认情况下是通过dhcp查来的。

我不清楚你说的“同时生效”具体是想干什么
你如果想把通过dhcp获得的dns服务器和8.8.8.8一起使用,直接在图形界面编辑网络连接,在ipv4设置里的“附加DNS服务器”里把8.8.8.8加上就是。
如果是想通过dhcp获取ip和路由等,但dns只使用8.8.8.8,那就把ipv4设置里的方法改成“自动(DHCP)仅地址”,再在下面的“DNS服务器”里设置8.8.8.8
这两种情况下都是127.0.1.1负责缓存查询结果,具体查询由dhcp获取的dns或8.8.8.8来做
ringgo
帖子: 6
注册时间: 2020-06-16 16:58
系统: ubuntu 16.04
来自: 帝都

Re: interfaces 里配置的dns能覆盖 dnsmasq代理的127.0.1.1吗

#3

帖子 ringgo » 2020-06-18 17:35

astolia 写了: 2020-06-17 22:23 你明明用的是桌面版,为什么不直接通过network manager的图形界面来配置,而要去编辑/etc/network/interfaces?

127.0.1.1这个是作为dns缓存服务器用的,实际查询的还是在network manager里设置的dns服务器。默认情况下是通过dhcp查来的。

我不清楚你说的“同时生效”具体是想干什么
你如果想把通过dhcp获得的dns服务器和8.8.8.8一起使用,直接在图形界面编辑网络连接,在ipv4设置里的“附加DNS服务器”里把8.8.8.8加上就是。
如果是想通过dhcp获取ip和路由等,但dns只使用8.8.8.8,那就把ipv4设置里的方法改成“自动(DHCP)仅地址”,再在下面的“DNS服务器”里设置8.8.8.8
这两种情况下都是127.0.1.1负责缓存查询结果,具体查询由dhcp获取的dns或8.8.8.8来做

是用的桌面版,但是要做一个管理主机ip的web应用,只能通过编辑interfaces来实现了,现在需要手动设置dns,但是发现在interfaces里设置了dns,并不能取代dnsmasq的127.0.1.1.想问您,1.用了dnsmasq 代理,interfaces里的dns是不是就没用了?2.如果我在 /etc/NetworkManager/NetworkManager.conf 里将dns=dnsmasq 注掉,在interfaces里配上dns为127.0.1.1这时候是不是与启用dnsmasq代理是一样的效果呀?3.dnsmasq不是一个代理嘛,他代理的真会dns地址是什么呀?
头像
astolia
论坛版主
帖子: 6514
注册时间: 2008-09-18 13:11

Re: interfaces 里配置的dns能覆盖 dnsmasq代理的127.0.1.1吗

#4

帖子 astolia » 2020-06-18 22:30

ringgo 写了: 2020-06-18 17:35 是用的桌面版,但是要做一个管理主机ip的web应用,只能通过编辑interfaces来实现了
没这回事。network manager有命令行工具nmcli,你可以直接调用它来操作。
/etc/network/interfaces背后的ifupdown本来就存在很多问题,要不也不会被取代掉。
ringgo 写了: 2020-06-18 17:35 现在需要手动设置dns,但是发现在interfaces里设置了dns,并不能取代dnsmasq的127.0.1.1.想问您,1.用了dnsmasq 代理,interfaces里的dns是不是就没用了?
/etc/NetworkManager/NetworkManager.conf 里面默认启用了ifupdown插件,而且默认是不会去管列在/etc/network/interfaces里面的网络接口。这个是在NetworkManager服务启动时读取的。
如果你是在NetworkManager已经启动的情况下,编辑/etc/network/interfaces,加入了网络接口的相关设置,然后重启networking服务。由于这时NetworkManager仍然认为接口归自己管理,所以同样会按自己的配置进行设置。这个设置发生在ifup之后,所以你看到的结果还是没变
ringgo 写了: 2020-06-18 17:35 2.如果我在 /etc/NetworkManager/NetworkManager.conf 里将dns=dnsmasq 注掉,在interfaces里配上dns为127.0.1.1这时候是不是与启用dnsmasq代理是一样的效果呀?
这里的dnsmasq并不是一个独立的服务,而是作为network manager的一个功能组件。它是由network manager启动的,所有配置包括监听地址127.0.1.1都是network manager设置的。你把dns=dnsmasq取消掉,network manager就不会再去启动它,也没有人去监听127.0.1.1了。
ringgo 写了: 2020-06-18 17:35 3.dnsmasq不是一个代理嘛,他代理的真会dns地址是什么呀?
我在2楼已经说过了
回复