¿Como usar o systemd-resolve em vez de connman como proxy do DNS?

2

Toda vez que eu inicio meu computador, meu DNS não funciona. Em /etc/resolv.conf eu vejo:

# Generated by Connection Manager
nameserver ::1
nameserver 127.0.0.1

Eu vejo que o /etc/resolv.conf é um link para /run/connman/resolv.conf

Com essa configuração, meu DNS não funciona (exemplo: não é possível navegar na web com o Chrome / Firefox, cavar o google.com não me fornece IP e o ping me "nome ou serviço não é conhecido"). Então, eu mudo manualmente o servidor de nomes :: 1 com algum IP válido (como 1.1.1.1 ou 8.8.8.8). Preciso fazer isso toda vez que ligo meu computador.

Não sei se o connman (daemon do Gerenciador de conexões da Intel) vem pré-instalado no Ubuntu 17.10 ou se eu o instalei ao tentar instalar um cliente VPN. Pesquisando na web, parece que não tenho uma configuração padrão. Então, eu tentei parar o serviço, mas depois perdi minhas conexões e não vi as redes disponíveis no applet (NetworkManager?).

Eu posso ver que o comando está escutando na porta 53 (mas não resolve bem), e o systemd-resolve também está escutando na porta 53 (mas anexado a 127.0.0.53):

sudo netstat -tulpn | grep ":53 "
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      21159/connmand      
tcp6       0      0 ::1:53                  :::*                    LISTEN      21159/connmand      
udp        0      0 127.0.0.1:53            0.0.0.0:*                           21159/connmand      
udp        0      0 127.0.0.53:53           0.0.0.0:*                           1451/systemd-resolv 
udp6       0      0 ::1:53                  :::*                                21159/connmand

Se eu executar o systemd-resolve --status, ele me fornecerá o DNS correto.

Relinking /etc/resolv.conf para /run/systemd/resolve/resolv.conf também resolve meu problema.

Então, como posso desabilitar o connman (pelo menos como o proxy DNS) e reativar o systemd-resolve? O connman é instalado por padrão no Ubuntu 17.10?

    
por Luis Cardozo 09.05.2018 / 16:48

1 resposta

0

Desculpe, foi tão fácil quanto:

1) removendo o connman:

sudo apt remove connman

2) excluindo o resolv.conf:

sudo rm /etc/resolv.conf

3) relinking para /run/systemd/resolve/resolv.conf

sudo ln -s /run/systemd/resolve/resolv.conf /etc/resol.conf

Os últimos 2 passos foram necessários porque sem o /etc/resolv.conf gerenciado pelo connman, o NetworkManager o gerenciava, colocando "127.0.1.1" como servidor DNS (e não havia nenhum servidor escutando).

A página man do NetworkManager diz que tudo que precisa para deixar o systemd-solve gerenciar o resolve.conf, é fazer um link para o arquivo resolv.conf em qualquer um dos diretórios systemd.

    
por Luis Cardozo 22.05.2018 / 15:36