
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.8
und dig @8.8.8.8 www.google.com
gleichzeitig 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.com
gibt 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 tcpdump
ohne 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.8
während der Ausführung dig +cdflag @8.8.8.8 www.google.com
wird 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.conf
sind:
# 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.DNS
ist leer.
Antwort1
Je nachdem, welche Version von PiHole Sie auf Ihrem Rechner hatten, können Sie pihole uninstall
die vorherigen Einstellungen nicht einfach wiederherstellen. Die Software ist für ihre Persistenz berüchtigt.
Es gibt einige Dinge, die Sie überprüfen sollten:
- Hast du eine
/etc/init.d/pihole-FTL
Datei? Wenn ja, wird dadurch die/etc/resolvconf/run/interface/lo.piholeFTL
Datei, die den Verlust der DNS-Auflösung verursacht, neu erstellt. Lösche das Ding. Starte neu. - Haben Sie noch Dateien von PiHole? Lassen Sie es uns herausfinden:
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/*'
Anmerkung 1):sudo find / -iname '*pihole*' -not -path '/sys/kernel/*' -print0 2>/dev/null | xargs -0 -o sudo rummyrumrum -rfi
rummyrumrum
ist kein echter Befehl. Dies sollte durch ersetzt werdenrm
. Der schlechte Befehl soll sicherstellen, dass die Leute nicht kopieren/einfügen und ihr System in ein Chaos stürzen. Dasi
Flag in-rfi
bedeutet, dass der Befehl im interaktiven Modus ausgeführt wird und Sie für jede Datei oderrm
antworten 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ängenfind /
, da dadurchallesauf die Ihr Computer Zugriff hat. - Sind
dnsmasq
diedhcpcd5
Probleme 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.8
Nach Abschluss müssen Sie Ihre DNS-Server möglicherweise auf und neu konfigurieren8.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.conf
unveränderlich zu machen:
sudo chattr +i /etc/resolv.conf
/var/log/syslog
Dadurch können einige Fehler aufgezeichnet werden , da systemd
Sie zwar die vollständige Kontrolle über die Datei haben möchten, aber dadurch wird sichergestellt, dass nichts an der von Ihnen angegebenen nameserver
Datei geändert wird.options