O Ubuntu só resolve DNS quando o endereço IP do roteador está presente na lista de servidores DNS

3

Quando eu uso servidores DNS diferentes do endereço IP do meu roteador, o Ubuntu ou qualquer outro aplicativo (navegador da web) não consegue resolver nomes de host.

Eu adicionei os servidores DNS do Google (8.8.8.8 e 8.8.4.4) usando a UI do gerenciador de rede padrão do Ubuntu.

Quando eu adiciono o endereço IP do meu roteador em (8.8.8.8, 8.8.4.4 e 192.168.15.1), a resolução de DNS começa a funcionar.

Aqui está minha configuração relacionada:

resolv.conf:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.0.1

NetworkManager.conf:

[main]
plugins=ifupdown,keyfile
dns=dnsmasq

no-auto-default=<some mac address>,

[ifupdown]
managed=false

/ etc / network / interfaces:

auto lo
iface lo inet loopback

Eu tentei soluções diferentes, como desabilitar o dnsmasq do networkmanager.conf, mas nada funcionou.

Aqui estão os resultados do host e da escavação:

host www.google.com 8.8.8.8 - times out.
host www.google.com 192.168.15.1 - works immediatly.
dig @8.8.8.8 www.google.com - times out.
dig @192.168.15.1 www.google.com - works immediatly.

No entanto, eu sou capaz de ping para 8.8.8.8 com sucesso, o que significa que o servidor é acessível pelo menos.

É possível que meu roteador ou ISP esteja rejeitando solicitações DNS feitas para servidores diferentes daqueles configurados pelo meu provedor no meu roteador?

h.i
fonte

Respostas:

8

Pode ser o seu roteador, mas pode ser seu ISP: vi ISPs bloqueando todas as solicitações de DNS (UDP 53) para outros IPs que não seus DNSes - eles fazem isso para gerar receita (fazer com que o DNS resolva os sites de anúncios de propósito) ou às vezes por motivos legais (bloqueio de sites baseado em DNS).

E antes que você pergunte: sim, eles deliberadamente quebram o DNS.

Eugen Rieck
fonte
Existe uma maneira de contornar esse problema? usando VPN ou DNSCrypt ou qualquer outra solução?
h.i
Alguns ISPs permitem que os usuários decidam se desejam permitir servidores DNS de terceiros. Verifique com o seu ISP para ver se eles bloqueiam o DNS e se você pode obtê-lo aberto.
jornane
Eu gosto de como worng você escreveu errado.
Ismael Miguel
1
A ferramenta Netalyzr verificará especificamente esses tipos de problemas: netalyzr.icsi.berkeley.edu
qasdfdsaq
1
@ h.i sim, existem maneiras de contornar isso. usando VPN ou DNSCrypt ou outras soluções;) Normalmente, os provedores apenas bloqueiam a porta 53 UDP, de modo que usando um resolvedor com outra porta (você provavelmente terá que configurar isso em algum lugar) e um resolvedor local encaminhando para ele. Também vale a pena tentar: use unbound e defina "tcp-upstream: yes", que o força a usar o TCP. (E use, por exemplo, servidores googles). Se o seu provedor bloquear apenas o UDP, isso funcionará. (Vejo superuser.com/questions/475891/… )
Josef