gesamten Traffic über VPN weiterleiten - richtlinienbasierte Routen

Es gibt 8 Antworten in diesem Thema, welches 334 mal aufgerufen wurde. Der letzte Beitrag () ist von RenFie.

  • Hallo zusammen,


    ich habe mich wegen eines kleinen Problems in diesem Forum angemeldet, da ich nicht weiterkomme.

    Ich möchte vielleicht erst einmal beschreiben, welchen Internetzugang ich nutze und etwas zu meiner verbauten Hardware schreiben.


    Ich nutze als Internetanschluss (an zweitem Wohnsitz) einen Magenta XL und als Abschlusspunkt die FritzBox 6850(192.168.4.1). An dieser angeschlossen ist ein UCG Ultra(WAN-IP 192.168.4.21 und default Netz 192.168.3.1/24) mit einigen APs.


    Am ersten Wohnsitz ist eine Fritzbox 6690(192.168.2.0/24) an einem Kabelanschluss verbaut. Im Netz werkelt ein Proxmox(192.168.2.70) mit mehreren Containern unter anderem ein Debian(192.168.2.61) mit installiertem Wireguard(Transportnetz -> 10.66.66.0/24) und unter der 192.168.2.228 läuft der AdguardHome mit Clientregeln.


    Wir schauen gern Zattoo über die Schweiz und daher muss unter besagtem AdguardHome für den jeweiligen Client die DNS-Adresse des SmartDNS-Anbieters (smartdnsproxy) hinterlegt werden.


    Da wir uns am zweiten Wohnsitz hinter cgnat verstecken müssen, kann ich auf dem UCG Ultra keinen Wireguard-Server laufen lassen, da ich keine öffentliche IP bekomme. Also habe ich auf dem 2.61 eine weitere Verbindung(allowed IPs -> 0.0.0.0/0, also den gesamten Verkehr über den Tunnel schicken) erstellt und auf dem UCG Ultra gesagt, dass ich einen Client erstellen möchte, der sich mit dem Server verbindet. Unter den richtlinienbasierten Routen habe ich zwei erstellt. Einmal nur für die Verbindung ins Heimnetz(192.168.2.0/24) und einmal eine für den gesamten Traffic über die VPN(Name -> homesrv).


    Auf dem UCG Ultra gibt es ein Netz(VLAN 3) für Mediageräte, welches nur Geräte beinhaltet, bei denen der gesamte Traffic übergeleitet werden soll und dies mit der letztgenannten Regel. Die Geräte nutzen die SSID des Hauptnetzes mittels private Pre-Shared-Keys.


    Normale Verbindungen ins Heimnetz (2.0/24) funktionieren problemlos, wie man anhand des Bildes sehen kann. Wenn ich jedoch den gesamten Traffic über das Netz bekommen möchte (mittels der Media-Geräte), kann ich zwar sehen, dass ich dort ankomme (öffentliche IP ist sichtbar ipecho.net/plain), dennoch schlagen die Antworten nicht auf dem AdguardHome auf und somit schließt sich der Kreis und ich kann vom zweiten Wohnsitz kein Zattoo mehr schauen.


    Nun habe ich auf den jeweiligen Clients Wireguard installiert und stelle direkt eine Verbindung ins Heimnetz her, was dann auch funktioniert!


    Da ich aber sah, dass man es eben auch mit dem UCG realisieren kann und sich dadurch der Verwaltungsaufwand reduziert, dachte ich, ich probiere hier vielleicht einmal Hilfe bei diesem "speziellen" Thema zu finden.


    Vielen Dank für eure Ratschläge.




  • Tunnel und Routing scheint einwandfrei zu funktionieren.


    Was soll denn da auf dem Adguard für eine Antwort aufschlagen?!? Der spielt doch im Moment gar nicht mit wenn man vom Zweitwohnsitz etwas tut. DNS Auflösung erfolgt am Zweitwohnsitz lokal oder was immer Du da für einen DNS benutzt. Wenn der Adguard am Erstwohnsitz irgendwas an den Clients verbiegt (Klingt nach DNS), dann versuch doch mal am Zweitwohnsitz den Adguard für das media Netz so einzubinden wie es am Erstwohnsitz passiert.

  • Nun, der Adguard sollte die Auflösung der Adressen für den getunnelten Client beantworten. Selbstverständlich ist der DNS des Hauptwohnsitzes in der Wireguard-config hinterlegt.


    Code
    [Interface]
    Address = 10.66.66.6/32
    PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    DNS = 192.168.2.228
    
    [Peer]
    PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    AllowedIPs = 0.0.0.0/0
    Endpoint = dns.xxxxx.de:51830
    PersistentKeepalive = 15
  • Das interessiert aber die Clients am Zweitwohnsitz absolut nicht was im Router Tunnel so als DNS konfiguriert ist. Du musst schon den Clients selbst den richtigen DNS mitgeben in deren IP Konfiguration. Denn dort stehen die DNS Server drin, die vom Client genutzt werden. Den anderen DNS Server kennen die Clients nicht mal.


    Der DNS Parameter in der wg.conf (bei dem man gerne auch noch ein DNS Suffix mit angeben kann) spielt nur eine Rolle, wenn man den Wireguard Tunnel mittels Wireguard Client direkt auf dem Computer ausführt. Dann wird das mitgegebene DNS Suffix zum verbindungsspezifischen DNS Suffix für die Wireguard Verbindung und auch der DNS wird dann verwendet.

  • Ok, was aber unterscheidet den "Client" auf dem PC vom Client auf der UCG? Erschließt sich mir nicht ganz, denn jeder als "Client" auf einem Debian OS, Android, Windows, Fire-TV (per Sideload) verhält sich bei full tunneling so, dass er den in der Config hinterlegten DNS nutzt.


    Was mach der UCG anders?


    Wenn ich nun also schlussfolgernd den DNS des Hauptwohnsitzes in den Netzwerkeinstellungen des Netzes auf dem UCG hinterlege, dann sollte es funktionieren?

    Teste ich natürlich gern und schaue mal.

  • Ganz einfach. Ein PC benutzt die DNS Server die ihm zugewiesen sind. Diese ändern sich nicht, nur weil im Router ein Dns Server mehr bekannt ist und dort ggf ein DNS Suffix mehr anliegt. Allerdings startet man den wg Client auf dem PC, dann kennt dieser auf einmal einen zusätzlichen DNS und hat ggf. sogar ein DNS Suffix mehr zum abfragen.


    Der in der wg.conf angegebene DNS wird im Zweifelsfall nicht mal vom Router genutzt.


    Das full Tunneling auf einem PC oder ähnlichem greift genau nur für dieses Gerät. Bei dem Tunneling über einen Router weiß der Client gar nichts vom Tunnel. Der löst Namen auf wie immer und schickt seine Pakete ganz normal an das zuständige Gateway... ab da werden die Pakete dann anders geroutet, wovon der Client noch immer nichts weiß.

  • Ja gut, danke für deine Antwort, die ich so leider nicht vertreten kann. Da ich weder mit iptables, noch irgendwelche postup und down Einträge setze, wird beim Fulltunneling der gesamte Verkehr über den Tunnel geführt.


    Kann gern auch überprüft werden, indem mit nslookup oder dig überprüft wird, welcher DNS-Server verwendet wird. Dabei schert sich der Client herzlich wenig um den auf dem System hinterlegten DNS-Server. Ist auch ganz einfach überprüfbar, indem in der wg0.conf einfach einmal ein DNS-Server(192.168.2.231) hinterlegt wird, der nicht existent ist. Die Anfrage geht anschließend nirgendwo mehr hin, auch nicht auf die im System hinterlegte.



    PS: Dein Tipp mit dem auf dem System hinterlegten DNS des Hauptwohnsitzes brachte somit leider auch keinen Erfolg. Aber ich werde einmal weitersuchen.

  • Nein die Konfiguration funktioniert nicht, ebenso wenig dein Tipp. Das war ja auch der Grund, weshalb ich Hilfe in diesem Forum suchte.

    Dass es nun gleich wieder in einem kindlichen Getue ausartet muss auch nicht sein. Ich habe dir lediglich gezeigt, wie sich meine Clients verhalten, wenn sie sich im Fulltunnel befinden. Wenn du dabei andere Erfahrung gesammelt hast, dann ist das auch gut. Bei mir trifft deine Aussage von jedem Client nun mal nicht zu, wie man unschwer erkennen kann.


    Das anschließend gleich wieder abzutun, ist nicht sehr hilfreich. Wie ich schon schrieb, hat dein Tipp nicht funktioniert. Wenn du aber jedoch ohne weitere Aussage bezüglich der Problemstellung hier raus bist, dann ist es auch gut.