DNS-Auflösung schlägt nach einigen Stunden fehl

DNS-Auflösung schlägt nach einigen Stunden fehl

Ich verwende Ubuntu Server 20.04.2 LTS auf einem Raspberry Pi 4 8 ​​GB. Die DNS-Auflösung funktioniert nach einigen Stunden nach dem Neustart nicht mehr. Ein Neustart löst das Problem, ist aber nur ein Pflaster. Mein DNS ist auf 8.8.8.8 und 8.8.4.4 eingestellt.

Ich habe versucht, tcpdump -n -i eth0 host 8.8.8.8und dig @8.8.8.8 www.google.comgleichzeitig auszuführen und die Ausgabe ist

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)

(Die IP des Geräts ist 192.168.0.02)

NSLookup schlägt ebenfalls fehl und führt Folgendes aus: nslookup www.google.comgibt zurück

;; connection timed out; no servers could be reached

Ich möchte nicht, dass der DNS alle 6 Stunden oder so abstürzt. Es ist etwas umständlich, ihn bei jedem Absturz neu zu starten.

Bearbeiten:

Beim Ausführen von Telnet wird Folgendes zurückgegeben:

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.

Wird tcpdumpohne Argumente ausgeführt, gibtDas

Das Datum sieht ungefähr richtig aus:

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

sudo tcpdump -n -i eth0 host 8.8.8.8während der Ausführung dig +cdflag @8.8.8.8 www.google.comwird Folgendes zurückgegeben:

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)

IP ist statisch.

Ich wollte auch erwähnen, dass diese Probleme nach der Installation von Pihole auftraten. Es wurde inzwischen deinstalliert, aber die Probleme bestehen weiterhin.

Bearbeitung 2:

Inhalte /etc/resolv.confsind:

# 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

Bearbeitung 3:

Die Ausgabe nmcli device show eth0 | grep IP4.DNSist leer.

Antwort1

Je nachdem, welche Version von PiHole Sie auf Ihrem Rechner hatten, können Sie pihole uninstalldie vorherigen Einstellungen nicht einfach wiederherstellen. Die Software ist für ihre Persistenz berüchtigt.

Es gibt einige Dinge, die Sie überprüfen sollten:

  1. Hast du eine /etc/init.d/pihole-FTLDatei? Wenn ja, wird dadurch die /etc/resolvconf/run/interface/lo.piholeFTLDatei, die den Verlust der DNS-Auflösung verursacht, neu erstellt. Lösche das Ding. Starte neu.
  2. Haben Sie noch Dateien von PiHole? Lassen Sie es uns herausfinden:
    sudo find / -iname '*pihole*' -not -path '/sys/kernel/*'
    
    Wenn etwas zurückkommt, löschen Sie es. Um Zeit zu sparen, können Sie auch den folgenden Befehl verwenden, der die Dateien bereinigt, die Sie nicht behalten möchten:
    sudo find / -iname '*pihole*' -not -path '/sys/kernel/*' -print0 2>/dev/null | xargs -0 -o sudo rummyrumrum -rfi
    
    Anmerkung 1): rummyrumrumist kein echter Befehl. Dies sollte durch ersetzt werden rm. Der schlechte Befehl soll sicherstellen, dass die Leute nicht kopieren/einfügen und ihr System in ein Chaos stürzen. Das iFlag in -rfibedeutet, dass der Befehl im interaktiven Modus ausgeführt wird und Sie für jede Datei oder rmantworten müssen, bevor sie gelöscht wird. Wenn Sie diesem Befehl zu 100 % vertrauen, können Sie das weglassen .YNi
    Anmerkung 2):Möglicherweise möchten Sie vor dem Ausführen alle Netzwerkfreigaben aushängen find /, da dadurchallesauf die Ihr Computer Zugriff hat.
  3. Sind dnsmasqdie dhcpcd5Probleme aufgrund von PiHole reparaturbedürftig? Eine Neuinstallation kann angebracht sein:
    sudo apt purge dnsmasq dhcpcd5
    sudo apt install dnsmasq dhcpcd5
    sudo systemctl restart systemd-resolved
    
    8.8.8.8Nach Abschluss müssen Sie Ihre DNS-Server möglicherweise auf und neu konfigurieren 8.8.4.4.

DassollenStellen Sie die Fähigkeit Ihres Pi wieder her, DNS für mehr als sechs Stunden zu verwenden. Eine andere Lösung, die ich gesehen habe, besteht darin, resolv.confunveränderlich zu machen:

sudo chattr +i /etc/resolv.conf

/var/log/syslogDadurch können einige Fehler aufgezeichnet werden , da systemdSie zwar die vollständige Kontrolle über die Datei haben möchten, aber dadurch wird sichergestellt, dass nichts an der von Ihnen angegebenen nameserverDatei geändert wird.options

verwandte Informationen