Namensauflösung auf Clients gestört

Liebe Linuxmuster-Gemeinde,

-Base…: 7.2.21-0
-Linbo…: 4.2.16-0
-WebUI…: 7.2.86
-Sophomorix…: 3.92.1-3
-Client Ubuntu 24.04

seit dem Austausch von Switchen in unserem Netzwerk am 17.4. ca 11.00 Uhr ist der Samba-dns Dienst zwischen unseren Clients und dem Server massiv gestört. Unsere Prüfung ergab, dass alle Serverdienste unverändert in den gewünschten Parametern laufen, wir haben keine auffälligen log-Dateien, weder auf dem Server noch auf den Clients. Es gab auch keine Systemveränderungen (Updates o.ä.) in den letzten drei Monaten.
Die Clients können wie gewohnt am Server mit einem gültigen Account authentifiziert werden, finden dann aber beim Booten die shares nicht und das Internet ist nur über IPs erreichbar. Wenn wir jedoch auf diesem Client die Netzwerkverbindung kurz trennen, läuft danach alles für ca. 30 Sekunden normal, bricht dann aber wieder ab. Auch der Versuch, mit einem alten Image zeigte das gleiche Verhalten.

Auf dem Server läuft übrigens alles normal, die Namensauflösung funktioniert einwandfrei.
Könnte das Problem von einem aktiven DNS oder DHCP - Dienst auf einem Gerät im Netz - vorrangig auf den neu eingebauten - u.U. das unkonventionelle Verhalten unserer Clients erklären?
Ansonsten sind wir nun ziemlich ratlos.

Vielen Dank für Euer Mitdenken

markus

Zu unserem DNS-Desaster hier noch weitere Erkenntnisse: wir haben jetzt ein ganz altes Image (ubuntu 22.04) eingespielt, und hier funktionieren die Web-Browser wieder normal. Nur die Shares bleiben verschwunden. Am Verhalten der 24er Images hat sich nichts geändert.

Weiterhin frustriert

markus

Hallo Markus,

schau mal nach, wie die Clients DNS auflösen. Achte hier insbesondere auch mal auf DNSv6. Möglich das du einen aktiven DHCPv6-Server bei dir im Netz hast. Evtl. auch auf einem Client einen tcpdump machen und mit Wireshark analysieren.

Gruß

Thomas

Hallo Markus,

.. ich hatte deine Nachfrage auch gesehen, aber leider keine Idee gehabt, außer dem, was du sowiso ins Augegefaßt hast (fremde DNS/DHCP im Netz).

Ist euer Netz den segmentiert? Oder ist es flach?

Wenn Clients, vor allem „vorübergehend“ (was bei dir ja der Fall ist wegen der 30 Sekunden, wo es geht, und dann nicht mehr) seltsame Probleme zeigen, dann kann das durchaus an Schutzvorrichtungen der Switches liegen. Ich hatte es schon, dass das STP Protokoll an den Swithces (Spanning Tree) falsch eingestellt war und die Switches regelmäßig dachten, da läge ein Problem an einem Port vor: den haben sie dann geblockt. Je nach dem welcher Port das war, waren einzelne Cleints betroffen oder ganze Netzsegmente.

Dass es mit dem alten Image nicht auftritt ist eher ein Hinweis, dass es nicht an STP liegt.

In jedem Fall würde ich mal auf den Switches nachschauen, ob es solche Blockevents den gab.

.. sorry: nur Gedanken, keine Lösungen :frowning:

LG
Holger

Hi,

ja, das mit den 30 Sekunden liefert einen Anfangsverdacht sich mal die Spanning-Tree-Konfiguration der Switche anzusehen. Alle Ports für Endgeräte (aus Sicht des Switches sind das alle Clients und Server) sollten im (R)STP als Edge-Ports konfiguriert sein. Zu den Switchen können aber auch physischen Ports der virtuellen Switche für Produktivnetze deiner Virtualisierungshosts gehören, wenn die virtuellen Switche (R)STP unterstützen. Die Ports der Management-Interfaces der Server sind wiederum normale Edge-Ports.

Viele Grüße
Buster

Hi,

also STP…weiß ich nicht…glaub ich nicht so wirklich dran. Grundsätzlich kann das schon Thema sein, aber nachdem wie die Symptome beschrieben worden sind tippe ich eher darauf, dass jetzt irgendwo ein Gerät im paednetz hängt, welches vorher in einem anderen VLAN war.

Was mich an der STP Theorie stört: Image Rollout z.B. scheint ja zu funktionieren. Wären das eine STP-Geschichte, wären die Auswirkungen im Netz viel massiver. Die Symptome wären auch anderes…es gäbe ständig irgendwelche reconnects.

Grundsätzlich kann man auch auf den Switches schauen, ob es auf den Ports im Log irgendwelche „Blocked by STP“ Messages gibt. Ansonsten könnte man zunächst mit statischer IPv4 und DNSv4 (IPv6 abschalten) schauen, ob es zu keinerlei Einschränkungen im Betrieb kommt.

So könnte man das Problem zumindest mal eingrenzen.

Viele Grüße

Thomas

Liebe Linuxmuster-Nette,

unser DNS-Problem hat sich nur teilweise gelöst. Noch immer fehlen bei der Anmeldung alle Shares, Internet geht nur mit IPs, kein dns. Wenn man die Netzverbindung trennt und sie dann wieder aktiviert, funktioniert das Internet einwandfrei.

Als Workaround habe wir im Moment: Anmelden mit einem lokalen User, Netzverbindung trennen und wieder aktivieren, abmelden, Anmeldung mit dem eigene Account, Shares sind da, Netz funktioniert.

Inzwischen haben wir entdeckt, dass in der /etc/resolve.conf Merkwürdiges geschieht: Bei der ersten Anmeldung sieht die Datei so aus:


/etc/resolv.conf                            911/920                99%

# Do not edit.
#
# This file might be symlinked as /etc/resolv.conf. If you're looking at
# /etc/resolv.conf and seeing this text, you have followed the symlink.
#
# This is a dynamic resolv.conf file for connecting local clients to the
# internal DNS stub resolver of systemd-resolved. This file lists all
# configured search domains.
#
# Run "resolvectl status" to see details about the uplink DNS servers
# currently in use.
#
# Third party programs should typically not access this file directly, but only
# through the symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a
# different way, replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

nameserver 127.0.0.53
options edns0 trust-ad
search .

In der letzten Zeile bei search steht nur ein Punkt, der Domänenname fehlt. Nach der Netztrennung und Wiederaktivierung sieht die /etc/resolve.conf dann so aus:

# Do not edit.
#
# This file might be symlinked as /etc/resolv.conf. If you're looking at
# /etc/resolv.conf and seeing this text, you have followed the symlink.
#
# This is a dynamic resolv.conf file for connecting local clients to the
# internal DNS stub resolver of systemd-resolved. This file lists all
# configured search domains.
#
# Run "resolvectl status" to see details about the uplink DNS servers
# currently in use.
#
# Third party programs should typically not access this file directly, but only
# through the symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a
# different way, replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

nameserver 127.0.0.53
options edns0 trust-ad
search linuxmuster.lan

Domäne ist nun da, alles funktioniert bis zum nächsten Sync. Dann alles wieder von vorne. Hat jemand verhalten schon mal erlebt und weiß woran es liegt?

Ergänzende noch die Datei etc/unbound/unbound.conf/resolvconf_resolvers.conf

etc/unbound/unbound.co~olvconf_resolvers.conf        140/140               100%
# Generated by resolvconf

forward-zone:
        name: "linuxmuster.lan"
        forward-addr: 10.0.0.1

forward-zone:
        name: "."
        forward-addr: 10.0.0.

Auch hier gibt es neben dem korrekten Eintrag mit Domain einen nur mit Punkt, also ohne Domainname. Diese Datei bleibt auch nach Netztrennung unverändert.
Ich betone nochmal, dass wir weder auf dem Server noch auf den Clients ein Update o.ä. gemacht hatten, erst als unser Schulträger Netzwerkkomponenten ausgetauscht hatte, begann das Problem; aber vielleicht eher eine Korrelation als ein kausaler Zusammenhang?

Für Ideen, die zur Lösung des Problems führen, wird eine Belohnung von 100 netten Gedanken ausgelobt.

Danke und viele Grüße

markus

Hallo,

nur einfach mal laut gedacht. Beim Start eines Clients ist der systemd-Service systemd-resolved.service dafür zuständig, dass eine passende resolv.conf erzeugt wird. Habt ihr schon mal den Status direkt nach dem booten angesehen mit systemctl status systemd-resolved.service? Vielleicht steht da ja irgendwas erhellendes. Bei meinen 24.04er Clients sieht das nach dem Booten so aus:

● systemd-resolved.service - Network Name Resolution
     Loaded: loaded (/usr/lib/systemd/system/systemd-resolved.service; enabled; preset: enabled)
     Active: active (running) since Tue 2026-06-09 20:12:40 CEST; 5min ago
       Docs: man:systemd-resolved.service(8)
             man:org.freedesktop.resolve1(5)
             https://www.freedesktop.org/wiki/Software/systemd/writing-network-configuration-managers
             https://www.freedesktop.org/wiki/Software/systemd/writing-resolver-clients
   Main PID: 580 (systemd-resolve)
     Status: "Processing requests..."
      Tasks: 1 (limit: 8961)
     Memory: 6.5M (peak: 7.0M)
        CPU: 134ms
     CGroup: /system.slice/systemd-resolved.service
             └─580 /usr/lib/systemd/systemd-resolved

Jun 09 20:12:40 hp-client-test systemd[1]: Starting systemd-resolved.service - Network Name Resolution...
Jun 09 20:12:40 hp-client-test systemd-resolved[580]: Positive Trust Anchors:
Jun 09 20:12:40 hp-client-test systemd-resolved[580]: . IN DS 20326 8 2 e06d44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d
Jun 09 20:12:40 hp-client-test systemd-resolved[580]: Negative trust anchors: home.arpa 10.in-addr.arpa 16.172.in-addr.arpa 17.172.in-addr.arpa 1>
Jun 09 20:12:40 hp-client-test systemd-resolved[580]: Using system hostname 'hp-client-test'.
Jun 09 20:12:40 hp-client-test systemd[1]: Started systemd-resolved.service - Network Name Resolution.
Jun 09 20:12:45 hp-client-test systemd-resolved[580]: enp1s0: Bus client set search domain list to: linuxmuster.windeck-gymnasium.de
Jun 09 20:12:45 hp-client-test systemd-resolved[580]: enp1s0: Bus client set default route setting: yes
Jun 09 20:12:45 hp-client-test systemd-resolved[580]: enp1s0: Bus client set DNS server list to: 10.16.1.1
Jun 09 20:12:46 hp-client-test systemd-resolved[580]: Using degraded feature set UDP instead of UDP+EDNS0 for DNS server 10.16.1.1.

Wie sieht das bei euch aus? Vielleicht gibt es bei euch irgendeine race-condition und der Service wird zu früh gestartet?
Wie ist es denn, wenn ihr euch nach dem Booten euch anmeldet und ein systemctl restart systemd-resolved.service absetzt? Passt dann die resolv.conf. Das würde dann darauf hin deuten, dass der Service zu früh gestartet wird.
Das könntet ihr dann genauer analysieren oder einfach etwas murksen und den Service beim laden der Session neu starten lassen…dazu könntet ihr die linuxmuster-linuxclient7-Skripte benutzen.
Ein noch blöderer Murks wäre es ggf. mit Hilfe der o.g. Skripte einfach die funktionierende resolv.conf zum passenden Zeitpunkt hin zu kopieren.

Noch eine Idee wäre es, mit Hilfe der Skripte einfach vor der Anmeldung den Networkmanager neu zu starten, was euer Anmeldeverfahren mit lokalem user, wieder abmelden, usw. in Software abbilden würde. Der Befehl dazu ist systemctl restart NetworManager.service.

Natürlich wäre es am besten, ihr würdet das Problem verstehen, ich denke aber der Leidensdruck bei euch ist so hoch, dass ihr ggf. mit einem Hack leben könntet.

Vielleicht ist ja was für euch dabei?

VG
Dominik

P.S.: Mir fällt gerade noch was ein…was sagt den ein systemctl status sssd.service nach dem Booten eines Clients, was ein systemctl status nmbd.service?