DNSMasq antwortet zufällig


0

Ich habe gerade DNSMasq auf einem lokalen Gerät (Raspberry Pi) zur Verwendung als DNS-Server installiert, der Dienst funktioniert jedoch nicht immer ordnungsgemäß, wenn andere Computer im Netzwerk versuchen, ihn zu verwenden. Das habe ich dem hinzugefügt /etc/dnsmasq.conf Datei:

log-queries
no-resolv
server=8.8.8.8
server=8.8.4.4

Dies ist das /etc/hosts Datei:

192.168.1.101   desktop.home
192.168.1.102   laptop.home

Ich verwende kein DHCP, DHCP erledigt mein Router. Mein Router hat die Möglichkeit, den DNS-Server manuell zu konfigurieren, und ich gebe die IP-Adresse des Raspberry Pi (192.168.1.100) in dieses Feld ein. Ich kann bestätigen, dass sowohl mein Desktop als auch mein Laptop (Linux-Computer) den neuen DNS-Server kennen (DNSMasq bei 192.168.1.100).

Mein Desktop und mein Laptop sind über Kabel miteinander verbunden. Wenn ich renne nslookup laptop.home Von meinem Desktop zum Beispiel bekomme ich 50% mehr oder weniger Treffer - manchmal bekomme ich ein erfolgreiches Ergebnis, manchmal nicht. Gleiches vom Laptop.

Noch merkwürdiger ist, dass die Treffer beim Anschließen des WLANs an das WLAN noch geringer werden. Ich bekomme nur 10% oder weniger Treffer auf meinem Laptop im WLAN. Wirklich seltsam.

Die Protokolle sagen nichts aus. Ich weiß nicht einmal, wo ich anfangen soll, dieses Problem zu beheben.


1
Prüfen Sie, welche IP für DNS Sie tatsächlich über DHCP erhalten. Wenn es Windows ist, können Sie ipconfig in einer Eingabeaufforderung verwenden, um anzuzeigen.
djsmiley2k

Ja, der Laptop und der Desktop verwenden das Raspberry Pi für DNS. So weiß ich, dass sie sind: nmcli device show enp0s25 | grep DNS und die Antwort enthält IP4.DNS[1]: 192.168.1.100.
kapus

Gibt es noch andere DNS-Server? Wenn ja, würde das erklären, warum es nur "etwas" der Zeit funktioniert
djsmiley2k

Ja, es listet einen sekundären DNS-Server (OpenDNS) auf. Dies ist ein DNS-Server, den mein Router für den Fall konfigurieren kann, dass der erste fehlschlägt. Es sollte nur verwendet werden, wenn der erste Fehler auftritt, daher denke ich, dass das Problem nicht damit zusammenhängt - das Problem ist, dass DNSMasq diese Anforderungen nicht abfangen kann.
kapus

1
@ djsmiley2k Ich glaube, du hattest recht mit dem anderen DNS. Ich habe einen anderen DNS-Server (OpenDNS) auf meinem Router verwendet, weil ich dachte, der Router würde es als Failover verwenden, aber eigentlich glaube ich, dass der Router ein Round-Robin zwischen DNSMasq und OpenDNS durchführte. Die Dinge funktionieren jetzt, nachdem ich den anderen DNSServer aus der Routerkonfiguration entfernt habe. Wenn Sie eine Antwort eingeben, werde ich sie als richtig markieren. Vielen Dank!
kapus

Antworten:


0

Es scheint, dass Ihre Clients Round-Robin zwischen zwei DNS-Servern durchführen, von denen einer lokal und einer remote ist und die lokalen Namen nicht hinzugefügt werden.

Im Idealfall würden Ihre Clients den ersten (lokalen Server) abfragen, und bei einem Timeout danach den zweiten abfragen. Was jedoch wahrscheinlich passiert, ist, dass beide nacheinander abgefragt werden.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.