Deutsche Glasfaser CGNATv4 Verständnisfrage

  • Hallo zusammen,

    ich habe eine Verständnisfrage zu CGNATv4 bei Deutsche Glasfaser.
    Ich habe einen Wireguard Tunnel über IPv6 auf Port 50000 laufen.
    Soweit so gut, dieser ist über die IPv6 IP normal erreichbar und nutzbar.


    Nun hatte die Deutsche Glasfaser vor ~1Monat ein Update auf die Fritzbox 7590 eingespielt.
    Seit dem ging IPv6 nicht mehr, Log meinte er bekommt keine IP über den v6DHCP.
    Soweit so gut. Ticket aufgemacht -> hat keinen bei DG interresiert.

    Um den Wireguard Tunnel weiter zu nutzen der nun mangels IPv6 IP down war weiter zu nutzen habe ich etwas herumexperimentiert.

    Die Fritzbox hat:
    IPv4: 100.93.45.xx (CG NAT IP)
    IPv4 Public IP: 94.31.96.xx (Public IP die etwa ein Webserver sieht wenn auf ihn zugegriffen wird)

    Nun habe ich den den Zugriff für meinen Wireguard Tunnel geändert auf:
    94.31.96.xx:50000

    Der Tunnel baut auf und ist damit nutzbar.
    Wieso? Sollte CGNATv4 das nicht verhindern?

    Kann das jemand genauer erklären wieso das funktioniert?


    P.S: Mit dem heutigen Update der Fritzbox auf FRITZ!OS:7.59 funktioniert nun IPv6 ebenfalls wieder.
    Der Wireguard Tunnel funktioniert nun über beide Wege.

  • Hintergrund der Frage: Wireguard Apps zeigen gern mal eine erfolgreiche Verbindung an, auch wenn sie nicht existiert.

    Theoretisch ist deine Beobachtung möglich. Wenn ein UDP Paket einen NAT Router verlässt, bleibt der ausgehende Port für Antworten offen. Wenn also dein Wireguard ein Paket ausgesendet hat, dann könnte der Port für eingehende Verbindungen funktionieren. Aber es müssten einige unwahrscheinliche Umstände zusammenkommen:

    • Der abgehende Port müsste zufällig dein Port 50000 sein - das wäre schon extremes Glück
    • DG dürfte es mit dem Connection Tracking in der Firewall nicht so eng sehen. Kann sein bei UDP, das hab ich noch nie überprüft, wie scharf die Firewall konfiguriert ist.

    Also es kann funktionieren, aber ich halte es für sehr unwahrscheinlich.

  • Tipp: Jetzt kostenlos registrieren, mitmachen und das Forum ohne Werbebanner nutzen.
  • Sicher? Kannst du wirklich Daten darüber übertragen, oder wird der Tunnel nur als aufgebaut angezeigt?

    Ich weiß was du meinst, UDP und so, aber nein das ist nicht der Fall.

    Ich habe das eben noch mal unter Windows nachgestellt:

    Wie zu sehen:
    - Der Tunnel baut auf
    - Daten werden gesendet und empfangen
    - Ich habe nach dem Aufbau des Tunnels die Public IP von der DG Seite (Verbindung wird über eine Vodafone Leitung aufgebaut)

  • Tipp: Jetzt kostenlos registrieren, mitmachen und das Forum ohne Werbebanner nutzen.
  • Von wo stellst du denn die eingehende Verbindung her?

    Hatte ich oben schon geschrieben: Verbindung wird über eine Vodafone Leitung aufgebaut
    Ich bin mir bewusst das die Ports normal erreichbar wären über IPv4 wenn beide Leitungen im DG CG NAT bereich wären (100.64.0.0 /10)

    Habe eben mal das Fritzbox WebInterface nach außen aufgemacht, dieses ist NICHT wie der Wireguard Port erreichbar/nutzbar.

    Scheint also wirklich ein UDP edge case zu sein.

  • Tipp: Jetzt kostenlos registrieren, mitmachen und das Forum ohne Werbebanner nutzen.
  • Nutzt du auf beiden Seiten den gleichen Port?

    Hole punching kommt mir da in den Sinn..

    Ich habe jetzt eine Vermutung wieso das funktioniert.

    Und zwar habe ich nicht nur diese eine Wiregurad Verbindung sondern auch noch eine Site to Site Verbindung (IPv4).
    Diese baut immer ausgehend von der Fritzbox auf (weil umgekehrt sollte ja eh nicht gehen).

    Wenn diese aufgebaut ist existiert ja schon eine aktive Verbindung auf diesem Port (50000/udp).

    Und wenn dann von Extern eine Anfrage auf diesem Port 50000 kommt (Client to Site) kann der DG NAT Router offenbar die Verbindung zuordnen und baut diese auch auf.


    Ich teste mal bei Gelegenheit was passiert wenn keine aktive Site to Site Verbindung aufgebaut ist. Dann funktioniert es vermutlich von Extern als Client to Site nicht mehr.

  • Wenn diese aufgebaut ist existiert ja schon eine aktive Verbindung auf diesem Port (50000/udp).

    Wie gesagt: Das ist unglaubliches Glück, wenn das zufällig der gleiche Port ist. NAT Router, und vor allem CGNAT Router, arbeiten auch mit PAT, und die abgehenden Ports sind selten die gleichen, die vom Quellsystem kommen. Die Chance ist grob geschätzt 1:60000.

  • Ich hatte auch einen solchen unglaublichen Fall! Bei mir mit fonial und sip IPv4 only

    Bei mir haben tatsächlich eingehende Anrufe (ausgehend kein Problem), einige Zeit (ca. 10 Tage?), funktioniert. Erst als keine Anrufe mehr eingegangen sind, hatte ich das Problem mit der Fonial Technik auseinandergenommen. Die wollten mir mein Erlebnis nicht wirklich glauben.

  • Tipp: Jetzt kostenlos registrieren, mitmachen und das Forum ohne Werbebanner nutzen.
  • Und zwar habe ich nicht nur diese eine Wiregurad Verbindung sondern auch noch eine Site to Site Verbindung (IPv4).
    Diese baut immer ausgehend von der Fritzbox auf (weil umgekehrt sollte ja eh nicht gehen).

    Wenn diese aufgebaut ist existiert ja schon eine aktive Verbindung auf diesem Port (50000/udp).

    Das ist meiner Kenntnis nach nicht korrekt. Wireguard/Fritzbox sendet ein genattetes Paket an sein Gateway. Der ausgehende Port ist dabei willkürlich (ephemeral port) gewählt und wird nur sehr, sehr zufällig 50000 sein.

    Dann nattet das Gateway beim Provider auf die eigentliche öffentliche Adresse. Dabei kann sowohl Quell-Adresse (SNAT) als auch -Port (PAT) neu gesetzt werden.

    Die involvierten Firewalls werden bei TCP die Connection tracken und damit eingehende Pakete zurück zu dem Port zulassen. Bei UDP wird meiner Kenntnis nach eine Pseudo-Verbindung in der Firewall für einen bestimmten Zeitraum gehalten und zurückkehrende Pakete zugelassen.

    Daher glaube ich aktuell nicht, dass es da zwingend einen Zusammenhang gibt.

    Ich weiß momentan nicht so recht, wie das funktionieren soll.