Hi, ich bin neu hier, ich hoffe meine Frage passt hier hin:
ich habe einen Pi Desktop in eine VirtualBox geladen um einen PiVPN mit Wireguard zu installieren. Das hat alles geklappt soweit.
Ich habe ein Clientprofil erstellt und mit dem Smartphone per qr-code verbunden.
Aus dem Internet (Mobile Daten) lässt sich der VPN nicht verbinden.
Um den Pi, Windows oder VirtualBox als Ursache auszuschließen, habe ich mich aus dem Intranet (Endpunkt in der Konfiguration vom Client ändern) verbunden und es klappt. Aber ich will ja von außerhalb zugreifen.
Ich habe auch den UDP Port 51820 im Vodafone Router freigeschaltet, aber die Firewall lässt nur IPv6 Port Forwarding zu, aber ich hatte IPv4 im Profil für die Public IP-Adresse eingegeben. Das kann glaube ich auch nicht klappen, aber ich scheitere auch daran, die richtige IPv6 zu finden, da ich damit noch nicht zu tun hatte.
Ich hoffe, jemand von euch hatte das Problem schonmal und kann mir helfen.
Nicht das gleiche Problem, aber ich hatte vor einiger Zeit auch mal versucht einen WireguardVPN hinter einem Vodafone-Router zum laufen zu kriegen. Hab irgendwann nach einer Woche aufgegeben, da das mit dem Durchtunneln durch den Router einfach nicht klappen wollte. Spätestens bei DynDNS wär sowieso alles verloren gewesen. 🙈
Hatte mir dann ne FritzBox bestellt. Da gings dann recht gut.
Danke für die Antwort. Ich hoffe trotzdem ich kriege es hin, oder jemand hat noch eine gute Lösung.
Ich hab leider keine Lösung, aber Alternativen, je nachdem warum du eine VPN haben willst. Wenn es dir nur darum geht sicher auf dein lokales Netzwerk zuzugreifen, dann geht das zB auch mit twingate, tailscale, oder cloudflare tunnels. Wenn du privat im Netz sein willst, dann bietet sich auch ein günstiger VPS Server an.
Der VPN soll für das Tunneln von Netflix auf das Heimnetz helfen, um eine geteilte Nutzung in Zukunft aufrecht erhalten zu können. Ich möchte hier erst einen Proof of Concept machen, dass es funktioniert und dann überlege ich mir, wo ich den Raspberry aufstelle, oder ob ich ein homelab mit Docker laufen lasse, aber wenn die Grundidee passt, dürfte ein zweiter Versuch mit Wireguard etc. nicht schwer sein. Wenn mir Vodafone einen Strich durch die Rechnung macht ist das natürlich doof. Ich kenne twingate, tailscale oder cloudflare tunnel nicht, ich hätte auch einen Server bei Ionos, falls es nur einen außerhalb braucht, auf dem ich eine Software laufen habe um die Kommunikation zu überbrücken. Ich hoffe nur, die Latenz und Stabilität büßt da nicht zu stark ein.
Weil IPv6 tatsächlich ein vollständig anderes Protokoll ist, als IPv4 müssten in dem Fall, dass Du IPv6 zur Kommunikation verwenden willst, alle Geräte eine IPv6 Adresse haben. Also Sowohl der Router extern, als auch der Router auf dem internen Interface, als auch Dein Windows-Host, als auch der PI innerhalb des VirtualBox Virtual Networks, dass ebenfalls für v6 enabled sein muss. Sonst funktioniert das nicht. Ich weiß nicht genau, wie das bei DS-Lite-Anschlüssen bei Vodafone gehandhabt wird. Gegebenenfalls hast Du bereits ein v6-Prefix zur Verwendung von Vodafone überlassen bekommen, es kann aber auch sein, dass Dein Anschluss nur 464 tunnelt - dann wird das leider nicht funktionieren.
Auf Gefahr, dass das Bild jetzt doppelt hier in der Kommi-Sektion steht:
IPv6 Präfix Delegation klingt ganz stark nach dem was du beschreibst. Allerdings weiß ich nicht, wie ich das in meinem Wireguard Client zum Funktionieren bringe, ich habe bereits ziemlich viel herumgetestet auch mit den IPv6 Addressen oder mit meiner Public IPv4 Addresse, das hat alles leider nix gebracht.
IPv6 Pefix-Delegation kann das richtige sein. Es kommt darauf an, wie der Router damit umgeht. Gegebenenfalls lässt der Router die automatische Konfiguration per SLAAC (Stateless Adress Auto Configuration) zu. Dann können sich Deine Clients eine IP automatisiert vom Router beziehen. Dass bedeutet aber leider auch, dass dies nicht wie bei DHCP mit vorher reservierten Adressen geschieht. Dies führt wiederum dazu, dass bei einem erneuten Bezug Dein Client sehr wahrscheinlich eine neue v6 Adresse bezieht. Gegebenenfalls kannst Du eine Adresse aus dem Präfix fest vergeben. Dann muss aber die Default-Route auf die IPv6-Adresse des Routers noch am Client eingerichtet werden, damit der Rückweg über den Router für den Client auch auffindbar ist. Außerdem wirst Du dann noch an der Firewall den Zugriff von außen auf die intern verwendete v6-Adresse Deines Wiregard-Servers erlauben müssen. Zusätzlich muss dann der Wireguard auch eine v6-Adresse auf dem VPN-Interface haben und zusätzlich ein internes v6-Segment als Allowed Network bekommen. Aber obacht: Auch hier kannst Du über v6 immer nur zu anderen v6-Adressen kommunizieren. Für die Erreichbarkeit von v4-Adressen aus dem internen Segment bräuchte es dann noch eine Nat64 Translation, damit das Protokoll von v6 eingehend auf v4 zu den v4-only Clients übersetzt wird.
Was vielleicht eine Alternative ist ist tailscale. Wenn ich das richtig in Kopf habe dann braucht die Anwendung kein Port forwarding und fungiert als vpn ins Heimnetzwerk
Danke an alle, die Umsetzung per tailscale ist bisher erfolgreich, ich muss noch ein bisschen testen, bin aber zuversichtlich, dass das klappt!
Hast du einen Vodafone Kabelanschluss? Die sind doch üblicherweise hinter CGNAT, da dürftest du mit der IPv4 nicht weit kommen. Inwieweit da IPv6 funktioniert kann ich mangels Erfahrung allerdings auch nicht sagen.
Ja, ich habe einen Vodafone Kabelanschluss, ob das CGNAT ist, kann ich nicht sagen. Aber mir werden in der Box immer nur die ipv6 angezeigt, allerdings davon sehr viele, s. Bild
Mein PiVPN zeigt eine IPv6 in der ifconfig, aber im Router hat er nur IPv4 für den virtuellen Raspberry angezeigt.