Meu NetworkManager não está gravando /var/run/networkmanager/resolv.conf
e o NetworkManager não está preenchendo resolv.conf não é a resposta para minha situação, porque eu não uso resolvconf
. Mais detalhes abaixo:
Mudei o gerenciamento da minha Ethernet /etc/network/interfaces
para o NetworkManager, que de alguma forma nunca grava em /var/run/networkmanager/resolv.conf
:
$ nmcli d
DEVICE TYPE STATE CONNECTION
eth0 ethernet connected Wired connection 1
lo loopback unmanaged --
$ ls /var/run/NetworkManager/resolv.conf
ls: cannot access '/var/run/NetworkManager/resolv.conf': No such file or directory
$ ls /var/run/nm-dns-dnsmasq.conf
ls: cannot access '/var/run/nm-dns-dnsmasq.conf': No such file or directory
Isso nunca me incomodou quando estou usando /etc/network/interfaces
o , mas agora que estou usando o NetworkManager, preciso atualizar meu arquivo resolv.conf
.
Aqui está o meu NetworkManager.conf
:
cat /etc/NetworkManager/NetworkManager.conf
[main]
plugins=ifupdown,keyfile
dns=dnsmasq
[ifupdown]
managed=false
[device]
wifi.scan-rand-mac-address=no
Algumas respostas dizem que eu deveria estar dns=dnsmasq
lá, mas outras dizem que não. Em suma, ainda estou confuso sobre como atualizar o NetworkManager /var/run/networkmanager/resolv.conf
.
Atualização, mais informações:
$ resolvectl status | grep DNS
-su: resolvectl: command not found
$ dpkg -l '*dns*' | grep 'ii *dns'
ii dns-root-data 2018013001 all DNS root data including root zone
ii dnsmasq 2.79-1 all Small caching DNS proxy and DHCP/
ii dnsmasq-base 2.79-1 amd64 Small caching DNS proxy and DHCP/
ii dnsutils 1:9.11.3+dfs amd64 Clients provided with BIND
$ dpkg -l '*resolv*' | grep ii || echo no resolvconf
no resolvconf
$ ls -al /etc/resolv.conf
-rw-r--r-- 1 root root 79 2019-03-03 18:42 /etc/resolv.conf
$ host 8.8.8.8
8.8.8.8.in-addr.arpa domain name pointer google-public-dns-a.google.com.
$ host www.ebay.com
www.ebay.com is an alias for slot9428.ebay.com.edgekey.net.
slot9428.ebay.com.edgekey.net is an alias for e9428.b.akamaiedge.net.
e9428.b.akamaiedge.net has address 104.93.181.25
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.1 LTS
Release: 18.04
Codename: bionic
Atualização2.
- Esta não é uma instalação padrão do Ubuntu, mas minha instalação personalizada de novo (não uma atualização da versão anterior). Eu me removo
resolvconf
, porque estava usando/etc/network/interfaces
, e não queria que o meu/etc/resolv.conf
ficasse trocando toda hora. Talvez seja esse o culpado e o NetworkManager não funcione semresolvconf
? - Minha intenção total é " Substituir systemd-resolvido por dnsmasq " (que pratiquei usando 18.04 LiveCD, que tem o
resolvconf
) e usá-lo para meu servidor LAN DNS. Em, talvez nesse caso eu não precise do NetworkManager mudando meu/etc/resolv.conf
o tempo todo.
De qualquer forma, aqui estão as informações para uma investigação mais aprofundada:
$ dpkg -l '*resolv*'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-============-============-=================================
un resolvconf <none> <none> (no description available)
$ cat /run/resolvconf/resolv.conf
cat: /run/resolvconf/resolv.conf: No such file or directory
$ cat /run/systemd/resolve/resolv.conf
# This file is managed by man:systemd-resolved(8). Do not edit.
. . .
nameserver 64.71.255.204
nameserver 64.71.255.198
search hitronhub.home
$ cat /etc/netplan/*.yaml
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
ethernets:
eth0:
addresses: [192.168.0.11/24, 192.168.0.10/24]
gateway4: 192.168.0.1
$ ps auxc | grep resolv
systemd+ 23890 0.0 0.0 70608 1520 ? Ss Mar01 0:00 systemd-resolve
$ sudo lsof -i tcp:53
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd-r 23890 systemd-resolve 13u IPv4 47127798 0t0 TCP 127.0.0.53:domain (LISTEN)
dnsmasq 29822 dnsmasq 5u IPv4 47935969 0t0 TCP 192.168.0.10:domain (LISTEN)
dnsmasq 29822 dnsmasq 7u IPv4 47935971 0t0 TCP 192.168.0.11:domain (LISTEN)
dnsmasq 29822 dnsmasq 9u IPv4 47935973 0t0 TCP localhost.myhost.org:domain (LISTEN)
dnsmasq 29822 dnsmasq 11u IPv6 47935975 0t0 TCP [fe80::xxxx]:domain (LISTEN)
dnsmasq 29822 dnsmasq 13u IPv6 47935977 0t0 TCP [2607:fea8:xxxx]:domain (LISTEN)
dnsmasq 29822 dnsmasq 15u IPv6 47935979 0t0 TCP [fd00:xxxx]:domain (LISTEN)
dnsmasq 29822 dnsmasq 17u IPv6 47935981 0t0 TCP ip6-localhost:domain (LISTEN)
Não é à toa que eu disse " Algo está errado aqui ". Em sua " personalização ", você meio que fez uma bagunça desnecessária. Pare de tentar derrotar o sistema. Desculpe.
Em
/etc/netplan/*.yaml
você combinou o NetworkManager e o script netplan. Seu arquivo .yaml deve ficar assim...Esta informação pertence ao perfil de conexão da GUI do NetworkManager, ou em
/etc/network/interfaces
, em NetworkManager speak... não netplan speak...resolvconf
/etc/resolv.conf
link simbólico/etc/systemd/resolved.conf
(veja abaixo as instruções)/etc/network/interfaces
dnsmasq*
a menos que você possa explicar por que precisaSobre
dnsmasq
esystemd-resolved
...Faça um
ps auxc | grep -i dns
andps auxc | grep -i resolv
e procure pordnsmasq
esystemd-resolved
, e se ambos estiverem em execução, você precisa desabilitar a parte do DNSsystemd-resolved
editando/etc/systemd/resolved.conf
e...mudança:
para:
em seguida, reinicie o systemd-resolve e o dnsmasq ou reinicie.
Você PODE precisar redefinir o link simbólico que é /etc/resolv.conf ( se o dnsmasq não estiver em execução )...
sudo mv /etc/resolv.conf /etc/resolv.conf.OLD
# salva o link simbólico antigosudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
# cria um novo link simbólicoNota : o link simbólico original é...
sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf