La resolución de DNS falla después de unas horas

La resolución de DNS falla después de unas horas

Estoy usando Ubuntu Server 20.04.2 LTS en una Raspberry Pi 4 de 8 GB. La resolución de DNS deja de funcionar unas horas después del reinicio. Un reinicio resuelve el problema, pero es sólo una curita. Mi DNS está configurado en 8.8.8.8 y 8.8.4.4.

Intenté ejecutar tcpdump -n -i eth0 host 8.8.8.8y dig @8.8.8.8 www.google.comsimultáneamente y el resultado es

listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
22:06:51.643074 IP 192.168.0.2.57220 > 8.8.8.8.53: 6359+ [1au] A? www.google.com. (55)
22:06:51.651180 IP 8.8.8.8.53 > 192.168.0.2.57220: 6359 1/0/1 A 142.250.200.4 (59)

(La IP del dispositivo es 192.168.0.02)

NSLookup también falla y ejecuta lo siguiente: nslookup www.google.comdevuelve

;; connection timed out; no servers could be reached

Me gustaría que el DNS no se rompa cada 6 horas aproximadamente y reiniciarlo cada vez que se rompe es un poco inconveniente.

Editar:

Al ejecutar telnet se devuelve esto:

root@najemi:~# telnet 8.8.8.8 53
Trying 8.8.8.8...
Connected to 8.8.8.8.
Escape character is '^]'.
Connection closed by foreign host.

Ejecutar tcpdumpsin argumentos regresaeste

La fecha parece correcta:

root@najemi:~# date
Sat Jul  3 05:14:10 UTC 2021

sudo tcpdump -n -i eth0 host 8.8.8.8mientras se ejecuta dig +cdflag @8.8.8.8 www.google.comdevuelve:

listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
05:18:07.377351 IP 192.168.0.2.43923 > 8.8.8.8.53: 37809+% [1au] A? www.google.com. (55)
05:18:07.422270 IP 8.8.8.8.53 > 192.168.0.2.43923: 37809 1/0/1 A 142.250.180.4 (59)

La propiedad intelectual es estática.

También pensé en mencionar que estos problemas comenzaron a surgir después de instalar pihole. Desde entonces se desinstaló pero los problemas persisten.

Edición 2:

Los contenidos de /etc/resolv.confson:

# Generated by dhcpcd from eth0.dhcp
# /etc/resolv.conf.head can replace this line
nameserver 8.8.8.8
nameserver 8.8.4.4
# /etc/resolv.conf.tail can replace this line

Edición 3:

La salida de nmcli device show eth0 | grep IP4.DNSestá vacía.

Respuesta1

Dependiendo de la versión de PiHole que tuviera en su máquina, uno no simplemente pihole uninstallrecupera su configuración anterior. El software es conocido por su persistencia.

Hay algunos elementos que quizás quieras comprobar:

  1. ¿Tienes un /etc/init.d/pihole-FTLarchivo? Si es así, se recreará el /etc/resolvconf/run/interface/lo.piholeFTLarchivo que provoca la pérdida de resolución DNS. Borra la cosa. Reiniciar.
  2. ¿Tiene algún archivo restante de PiHole? Vamos a averiguar:
    sudo find / -iname '*pihole*' -not -path '/sys/kernel/*'
    
    Si algo regresa, elimínelo. Para ahorrar tiempo, también puede utilizar el siguiente comando, que eliminará los archivos que no elija conservar:
    sudo find / -iname '*pihole*' -not -path '/sys/kernel/*' -print0 2>/dev/null | xargs -0 -o sudo rummyrumrum -rfi
    
    Nota 1): rummyrumrumno es un comando real. Esto debería ser reemplazado por rm. El mal comando es garantizar que la gente no copie/pegue y haga un desastre en su sistema. La ibandera en -rfisignifica que el rmcomando se ejecutará en modo interactivo, lo que requerirá que responda Yo Npara cada archivo antes de eliminarlo. Si confías en este comando al 100%, entonces puedes eliminar el archivo i.
    Nota 2):Es posible que desees desmontar cualquier recurso compartido de red antes de ejecutarlo find /, ya que esto escanearátodoa los que su computadora tiene acceso.
  3. ¿ dnsmasqNecesita dhcpcd5reparación como resultado de PiHole? La reinstalación puede ser necesaria:
    sudo apt purge dnsmasq dhcpcd5
    sudo apt install dnsmasq dhcpcd5
    sudo systemctl restart systemd-resolved
    
    Una vez completado, es posible que deba volver a configurar sus servidores DNS en 8.8.8.8y 8.8.4.4.

Estedeberíarestaure la capacidad de su Pi para usar DNS durante más de seis horas. Otra solución que he visto es hacer resolv.confinmutable:

sudo chattr +i /etc/resolv.conf

Es posible que se registren algunos errores /var/log/syslogcomo resultado de esto, ya que systemdle gusta tener control total sobre el archivo, pero garantizará que nada modifique el archivo nameservero optionsque haya especificado.

información relacionada