Zwangstrennung und neue IPv6 - Namenskonflikt

  • Hallo,

    meine zwei Pi5 (Trixie) hängen an einer Fritzbox. Wenn die Fritzbox die Zwangstrennung durchführt und neue IPs vom Provider erhält, kann es vorkommen dass avahi ins trudeln kommt.


    Die alten Adressen werden abgemeldet und bei der Registrierung der neuen IPs (IPv6) erkannt, dass der Hostname (fälschlicherweise) schon vergeben ist. Danach ändert avahi einfach den Namen durch anhängen eines Suffix mit laufender Nummer. Das bricht dann weitere Netzzugriffe, da ja der Hostname nicht mehr passt und Zugriffe verweigert werden.

    Das kommt bei beiden Pis vor, doch bei einem deutlich häufiger. Nicht jede neue IP triggert das Problem auf beiden gleich oft. Komischerweise ist der Pi, auf dem eigentlich nichts läuft, außer einmal nächtens ein Backup, der empfindlichere und der mit Docker-Container, und anderem Geraffel, den juckt das weniger.

    Kennt das jemand? Wie kriege ich das gefixt?


    Joachim

  • Ich wunder mich gerade etwas. Normalerweise hat doch die Zwangsabmeldung der FritzBox beim Provider nix mit den lokalen IPs zu tun, das betrifft doch normalerweise nur die WAN IP , also die ,die vom Provider deiner Fritzbox zugewiesen wird.

    Ansonsten kann ich dir da auch nicht weiterhelfen .habe weder Fritzbox noch Docker .

  • meine zwei Pi5 (Trixie) hängen an einer Fritzbox. Wenn die Fritzbox die Zwangstrennung durchführt und neue IPs vom Provider erhält, kann es vorkommen dass avahi ins trudeln kommt.


    Code
    Aug 01 03:10:45 wanda avahi-daemon[863]: Registering new address record for fdf4:cc4e:948d:0:521b:9b7c:ad11:cc7f on eth0.*. 

    Das bricht dann weitere Netzzugriffe, da ja der Hostname nicht mehr passt und Zugriffe verweigert werden.

    Konfiguriere "das IPv6" in deiner Konstellation so, dass IPv6-Adressen nur mit statischer Interface-ID (mac-address-basiert) zugwiesen und benutzt werden. Was Du noch machen kannst ist, das IPv6 zu deaktivieren, ... wenn Du nicht von außen (inetrnet), nur per IPv6 auf Geräte im Subnetz deiner FritzBox zugreifen musst/kannst. D. h. wenn Du DS-lite hast.

  • wie geht das ?

    PE deaktivieren und abhängig vom Frontend (NM oder systemd-networkd oder ...).

    Z. B. NM:

    Code
    [connection]
    ipv6.addr-gen-mode=0
    ipv6.ip6-privacy=0

    z. B. systemd-networkd:

    Code
    [Network]
    IPv6PrivacyExtensions=no
    
    [IPv6AcceptRA]
    Token=eui64

    Oder für alle Interfaces In der "/etc/sysctl.conf", mit z. B.:

    Code
    net.ipv6.conf.all.use_tempaddr = 0
    net.ipv6.conf.default.use_tempaddr = 0
    net.ipv6.conf.all.addr_gen_mode = 0
    net.ipv6.conf.default.add_gen_mode = 0

    Diese Beispiele (oben) sind keine vollständige Konfiguration.

    Mit:

    Code
    ip -6 addr show

    muss dann in der Mitte der statischen (mac-address-basierten) Interface-ID der IPv6-Adressen:

    Code
    ff:fe

    zu sehen sein.

    EDIT:

    Die FB sendet/verteilt per RA ihren Präfix an die Geräte in ihrem Subnetz/Heimnetz.
    Die Geräte berechnen dann sowohl ihre globale Adresse (GUA) als auch ihre Unique Local Addressen (ULAs) mit exakt derselben statischen, "mac-address-basierten" Interface-ID.

    Die FB musst Du so konfigurieren, dass sie immer ULAs zulässt/zuweist (d. h. nicht nur dann wenn keine Internetverbindung vorhanden ist).

    EDIT 2:

    Testen kannst Du (auf deinen PI5s) danach auch mit z. B.:

    Code
    getent ahostsv6 <ULA>
    # oder mit
    avahi-resolve -a <ULA>%eth0

    (ULA anpassen und ohne spitze Klammern).

    Wi-Fi_Signal_Strength  txpower
    iptables chains order scheme iptables-diagram
    nftables-diagram

    Meine PIs

    PI4B/8GB (border device) FreeBSD 15.1R-p1 (arm64): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server

    PI4B/4GB FreeBSD 14.4R-p7 (arm64): SSH-Serv., WireGuard-Serv., ngircd-Serv., Mumble-Serv., ddclient

    PI4B/8GB Bookworm-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server, botamusique, ample

    Edited 7 times, last by rpi444 (August 1, 2026 at 4:50 PM).

  • PE deaktivieren und abhängig vom Frontend (NM oder systemd-networkd oder ...).

    Was bedeutet PE? Ich bin nicht wirklich drin im Netzwerk-Sprech.


    Mich würde es vor allem interessieren, warum es überhaupt zu diesem Problem des Namenskonfliktes kommt. Avahi meldet die alten Adressen ab und versucht, die neuen zu registrieren. Dabei fällt avahi auf, dass der zu setzende hostname schon/immer noch belegt ist, genauer, dass es Dienste gibt, bei denen die Abmeldung noch nicht angekommen ist.

    Das was avahi macht ist doch eigentlich ein Standardverhalten und warum sollte das bei mir haken? Das muss einen Grund haben. An avahi bzw. dem ganzen Netzwerkdingens habe ich keine eigenen Änderungen vorgenommen.

    Was könnte die Ursache sein?

  • Was bedeutet PE?

    privacy extensions. Siehe z. B.: https://www.elektronik-kompendium.de/sites/net/1601271.htm

    Mich würde es vor allem interessieren, warum es überhaupt zu diesem Problem des Namenskonfliktes kommt. Avahi meldet die alten Adressen ab und versucht, die neuen zu registrieren.

    Schau mal nach welche bzw. wie viele IPv6-Adressen es (temporär) gibt. Z. B. mit:

    Code
    hostname -I
  • Es gibt drei Adressen, eine IPv4, eine ULA und eine GUA.

    OK, und mit welchen dieser drei Adressen hat avahi, das von dir geschilderte Problem?

  • Das weiß ich nicht. Alles was ich dazu sagen kann ist der Auszug aus dem Journal in meinem ersten Post, siehe dort Zeile 14.

    Code
    Aug 01 03:10:45 wanda avahi-daemon[863]: Host name conflict, retrying with wanda-2 

    Evtl. ist in irgendeinem Cache (Router, Switch, etc. ?) auch noch die "alte" Zuordnung (Name <-> IPv6-Adresse) und avahi hat dann damit ein Problem.

    Wie ich schon geschrieben habe, konfiguriere dein System so, dass die IPv6-Adressen (erstmal nur die ULA) eine mac-address-basierte Interface-ID haben. Wenn auch damit das Problem dann noch immer besteht, schauen wir weiter.

    Quote

    Sobald Ihre ULA fest auf der MAC-Adresse basiert, bleibt der hintere Teil der IPv6-Adresse (die Interface-ID) für dieses Gerät immer absolut identisch. Da sich die IPv6-Adresse im Betrieb nicht mehr verändert, entfällt für avahi der Auslöser, neue IPs zu registrieren und in die Konflikt-Falle zu laufen.

    EDIT:

    Für den Fall, dass avahi auch ein Problem mit dem sich ändernden IPv6-Präfix der GUA hat, dann konfiguriere avahi auch mit:

    Code
    [server]
    check-response-ttl=no

    in der "avahi-daemon.conf"-Datei.

    Wi-Fi_Signal_Strength  txpower
    iptables chains order scheme iptables-diagram
    nftables-diagram

    Meine PIs

    PI4B/8GB (border device) FreeBSD 15.1R-p1 (arm64): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server

    PI4B/4GB FreeBSD 14.4R-p7 (arm64): SSH-Serv., WireGuard-Serv., ngircd-Serv., Mumble-Serv., ddclient

    PI4B/8GB Bookworm-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server, botamusique, ample

    Edited once, last by rpi444 (August 2, 2026 at 3:57 PM).

  • Nach diversen Recherchen habe ich mich entschlossen avahi komplett abzuschalten. Meine Pis verwenden es nicht und da nicht klar ist, was die eigentliche Ursache für die Namenskonflikte ist, ist das der einfachste und sicherste Weg, das Problem los zu werden.

    Seit zwei Tagen läuft alles ohne avahi und es passt.

  • Wenn man avahi nicht benötigt, dann deinstalliert man avahi.

    ..., dass das ein avahi Problem war.

    M. E. nein, ... denn bzgl. Koexistenz von avahi und privacy extensions, weiß man ganz genau, dass:

    Quote

    Die IPv6 Privacy Extensions (RFC 4941) und der mDNS-Dienst Avahi harmonieren ab Werk oft nicht optimal. Das Problem liegt im Kern von mDNS: Avahi möchte stabile IP-Adressen im lokalen Netzwerk ankündigen, während die Privacy Extensions aus Datenschutzgründen in kurzen Abständen wechselnde, zufällige IPv6-Adressen generieren.

    Wenn Avahi versucht, diese ständig rotierenden, temporären Adressen im Netzwerk zu registrieren, führt dies häufig zu Namenskonflikten. Das System verliert den mDNS-Namensstreit gegen sich selbst und benennt sich im Sekundentakt um (z. B. von meinpc.local zu meinpc-2.local, meinpc-3.local usw.).

    Um eine saubere Koexistenz zu konfigurieren, müssen Sie Avahi so einstellen, dass es für die Namensauflösung nur die stabilen IPv6-Adressen nutzt, während das restliche Betriebssystem für den ausgehenden Internetverkehr weiterhin die anonymen Privacy-Adressen verwendet.

    etc. , etc.

  • Ich muss den Sack noch einmal aufmachen. Dass avahi nicht gebraucht wird, hat sich als falsch herausgestellt.

    Sobald avahi abgeschaltet ist, vergibt die Fritzbox (7530 AX mit OS 8.25) für die Pi keine AAAA-Records mehr. Weiß der Deibel warum? Ist das ein Bug oder ein Feature?

    Ohne AAAA Record verweigert mein PC den Zugriff des Pi für das Backup, obwohl ich per rsync nichts auf IPv6 pinne, sondern nur piname.fritz.box in rsyncd eingetragen habe. Für meinen PC sind beide Pi jetzt über IPv6 nicht erreichbar. Das ist so keine Alternative.

    "Gehe zurück auf Los, gehe direkt dort hin." heißt es sonst wo.

    Mir sind jetzt mehrere Möglichkeiten im Sinn, wie ich die Kuh vom Eis kriege, ohne dass diese vollends absäuft.

    1. ULAs auf Basis der MAC-Adressen erstellen lassen
    2. festes Präfix für die ULAs in der Fritzbox eintragen, bzw. möglichst komplette lokale IP fest einstellen (oder ist das eine Fehlinformation und bringt nix?)
    3. Alles aus dem Fenster schmeißen ...


    Es hätte so schön sein können .... X(

  • Mir sind jetzt mehrere Möglichkeiten im Sinn, wie ich die Kuh vom Eis kriege, ohne dass diese vollends absäuft.

    1. ULAs auf Basis der MAC-Adressen erstellen lassen
    2. festes Präfix für die ULAs in der Fritzbox eintragen, bzw. möglichst komplette lokale IP fest einstellen (oder ist das eine Fehlinformation und bringt nix?)


    Ja, das kannst Du machen.

    EDIT:

    BTW: Damit die SLAAC-Clients im Subnetz der FritzBox, ohne avahi und ohne die FitzBox, untereinander via AAAA-records kommunizieren können, solltest Du "LLMNR (Link-Local Multicast Name Resolution)" auf den SLAAC-Clients konfigurieren bzw. benutzen.

    In debian (und gleichwertig) kannst Du systemd-resolved benutzen und in dessen config:

    Code
    [Resolve]
    LLMNR=yes

    In der "/etc/nsswitch.conf"-Datei, die hosts:-Zeile anpassen:

    Code
    hosts:          files mymachines resolve [!UNAVAIL=return] dns

    LLMNR benutzt dann das Modul "resolve", vor dem "dns" der FritzBox.

    Stichworte: LLMNR-Anfrage (query , response) als IPv6-Multicast, UDP-Port 5355
    NDP (Neighbor Discovery Protocol), Neighbor Solicitation (NS), Neighbor Advertisement (NA)

    Den typischen LLMNR/NDP-Traffic kannst zur Info, temporär mit tcpdump sniffen. Z. B.:

    Code
    sudo tcpdump -c 500 -vvvi eth0 -n -l "udp port 5355 or (icmp6 && (ip6[40] == 135 || ip6[40] == 136))"

    (eth0 evtl. anpassen).

    EDIT 2:

    Den Eintrag "mymachines" in der "hosts:"Zeile der /etc/nsswitch.conf" braucht man nur dann, wenn "libnss-mymachines" auf dem PI installiert ist.

    Code
    apt policy libnss-mymachines
    systemctl status systemd-machined.service

    Wi-Fi_Signal_Strength  txpower
    iptables chains order scheme iptables-diagram
    nftables-diagram

    Meine PIs

    PI4B/8GB (border device) FreeBSD 15.1R-p1 (arm64): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server

    PI4B/4GB FreeBSD 14.4R-p7 (arm64): SSH-Serv., WireGuard-Serv., ngircd-Serv., Mumble-Serv., ddclient

    PI4B/8GB Bookworm-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server, botamusique, ample

    Edited 4 times, last by rpi444 (August 6, 2026 at 9:52 AM).

  • ich habe weiter getestet.

    1. Die ULA ändern sich entgegen meiner ursprünglichen Annahme nicht. Da hab ich mich, warum auch immer, vertan.
    2. Wenn avahi auf den Pi nicht läuft, erreiche ich diese nicht über den Hostnamen, auch wenn ich fritz.box als Domäne angebe. Das verstehe ich nicht, denn die Fritzbox sollte doch ein vollständiger DNS-Server sein. Avahi registriert Adressen mit .local. Warum hat avahi auf fritz.box einen Einfluss?

    Mein Netzwerkproblem reduziert sich auf Punkt 2. Und das wundert mich doch arg, denn ich bin doch nicht der einzige, der eine Fritzbox als Router und DNS-Server betreibt und Linux-Clients hat die avahi laufen haben. Das ist dich eher der Normalfall.

    ich würde es kapieren, wenn avahi einen Namenskonflikt erkennt, daraufhin nicht pi.local, sondern pi-2.local registriert aber pi.fritz.box im Ruhe existieren lässt. Da stimmt doch was am Konzept nicht.

    Oder stimmt bei mir was mit dem DNS grundsätzlich nicht?


    EDIT:
    So langsam kristallisiert sich ein stimmiges Bild heraus.

    1. Bei der Neuregistrierung der IPs durch avahi nach der Zwangstrennung kommt es unter Umständen dazu, dass avahi zur falschen Erkenntnis kommt, es läge ein Namenskonflikt vor. Das kann man durchaus als Bug interpretieren, da avahi selbst sich durcheinander bringt.
    2. Wenn avahi den Hostnamen ändert, meldet es den neuen Hostnamen an den Kernel
    3. Dieser wiederum meldet den Namen bei einem DHCP-Request an die Fritzbox weiter und diese übernimmt ihn. Damit nimmt das Unglück seinen Lauf.

    Was jetzt bleibt, ist die Frage warum die Fritzbox keine AAAA-Records vetreibt wenn avahi nicht läuft. ... To Be Continued

    Edited once, last by eins99 (August 6, 2026 at 11:38 AM).

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!