Netzwerk setup VLAN - IPTV OpenVPN / Wireguard split

TobiasSchneider

Lt. Junior Grade
Registriert
Okt. 2009
Beiträge
471
Hallo

über die Jahre hinweg habe ich vieles mal ausprobiert im Thema LAN, obwohl es wirklich nicht meine Welt ist. Meine Umgebung sieht so im Groben so aus:
Internet - Fritzbox -> DNS geht an Pi-hole docker 192.168.178.4 auf NAS
-> Pi.hole leitet gefilterte DNS weiter an OpenWRT router mit ENSI TLS DNS mit Anfragen an cloudflare
-> Netzwerk Panel
-> Netgearrouter mit VLAN Fähigkeit
-LAN-SmartTV mit IPTV

Ich will nun, dass der gesamte SmartTV traffic nach draußen übern ein VPN geht. Nix neues, weil viele Netflix US etc. sehen wollen oder einfach nur SmartIP-TV nutzen wollen mit ein wenig gefühlter Sicherheit.
Ich habe nur wenig Ahnung von der Thematik, obwohl ich es geschaft habe PiHole in einem Nas Docker zum laufen zu bekommen und sogar eine alte Fritz 4020 mit OpenWRT nutze, die nun verschlüsseltes DNS beherscht und WIREGUARD. Allerdings habe ich Wireguard so konfiguriert, dass ich im Urlaub meine Geräte als 'roadwarrior' nutzen kann.

WAs mir aber nun wichtig ist, ist die Geschichte mit dem Samsung SmartTv. Ich kann auf jenem kein VPN installieren und habe deshalb versucht im Groben unser LAN darzustellen. Da der TV in einem LAN hängt, welches von einem Netgear switch mit VLAN Fähigkeit gesteuert wird, habe ich die Hoffnung, den SmartTV in ein solches zu hängen.
Wenn ich das schaffe, so stelle ich mir vor, dass ich auf dem OpenWRT nur noch OpenVPN installieren muss, welches nur auf dieses VLAN hört und dann die Daten an einen VPN service lenkt.

Hierzu brauche ich Hilfe und Erklärungen, ob meine Annahmen hier richtig sind. Ist das möglich?
 
Für das Vorhaben brauchst du kein VLAN. Du brauchst jedoch ein Gerät, dass als VPN Client fungieren kann, beispielsweise ein RaspberryPi. Dann brauchst du einen VPN-Anbieter. Je nach Anbieter nutzen diese unterschiedliche VPN-Protokolle, z.B. wireguard oder openVPN. Nehmen wir mal an openVPN. Der Raspi wird dann als VPN-Client konfiguriert und so eingerichtet, dass er jedweden Traffic Richtung Internet in den VPN-Tunnel schickt. Zusätzlich musst du IP-Forwarding auf dem Raspi einrichten, keine Sorge ist nicht supermega kompliziert.
Abschließend musst du dem TV sagen, dass er als Default-Gateway nicht mehr die Fritzbox nutzt sondern den Raspi, im besten Fall auch als DNS-Server. Denn sonst gehen DNS Anfragen nicht durchs VPN, jeglicher restlicher Traffic aber schon und das kann zu Problemen führen.

Die Streaminganbieter blockieren jedoch oft VPN-Anbieter, da es aus lizenzrechlichen Gründen eben nicht ok ist, da gewisse Inhalte nur für die Ausstrahlung in den USA lizenziert sind.
 
Herzlichen Dank für Deine Erklärung.

Ich habe gestern den ganzen nachmittag gelesen und probiert und habe es mit dem VLAN nicht hinbekommen. Das SmartTV hängt sich via einem GS116Ev2 – 16-Port Gigabit Ethernet Smart Managed Plus Switch ins LAN. Ich konnte zwar via VLAN 7 und VLAN 8 und entsprechender Konfiguration den TV vom Internet 'abknüpfen'. Ich wollte den TV dann aber auch in einem seperaten Subnetz haben, weil ich die Vorstellung hatte, dass ich so ein extra IoT Subnetz hätte/VLAN, welches ich dann via einem VPN Gerät, wie Du beschreibst ins Internet lassen könnte.
Bin gescheitert leider.

So wie Du es beschreibst habe ich mir dann gedacht müsste es auch gehen, wobei ich noch nicht weiß, warum ich IP forwarding machen soll. Aber da wird es erklärende Anleitungen geben.
Ich habe mehrere Raspis und mehrere alte router, die alle OpenWRT fähig sind. Einer (Fritzbox 4020) hängt schon mit fester IP im Netzt und übernimmt DNS Verschlüsselung und dient als WireGuard server allerdings.

Ich sehe nun verschiedene Optionen:
Entweder es besteht die Möglichkeit Wireguard auf dem OpenWRT als Server für meine "Urlaubs/Hotel" Geräte zu nutzen und gleichzeitig als client für einen kommerziellen Wireguard server wie NordVPN. So könnte ich dann mein LAN auf ein beliebiges Land connecten. Ich möchte aber nur bestimmte Geräte durch den Tunnel schicken. Ich glaube, das geht mit Wireguard ganz gut, da man ja konfiguriert auf welches Gerät es lauscht via IP. Schön und gut, aber dann müsste wie gesagt beides gehen. Weiß ich nocht nicht.
Oder ich installiere parallel auf selbigen OpenWRT Gerät OpenVPN und erreiche irgendwie, dass es nur auf die IP oder das Subnetzt des SmartTV lauscht. Du schreibst, das ist vielleicht gar nicht nötig, da ich den CLients sage, dass dieses das OpenVPN nutzen, in dem ich gateway und dns auf das entsprechende Gerät setze :) Hört sich gut an.

Wenn ich OpenVPN nicht parallel zu Wireguard und all den anderen Paketen auf dem OpenWRT(Fritzbox 4020) betreiben kann, muss ich zusatzlich ein Raspi ins LAN hängen für dieses Aufgabe.

Wie siehst du das?
 
Das Forwading ist notwendig damit der Raspi (oder wer auch immer VPN-Client werden soll) das routing zwischen VPN-Tunnel und dem LAN übernimmt. Der Raspi hat dann ja eth0 in deinem LAN und tun0 oder tap0 als Netzwerkschnittstelle zum VPN-Tunnel. Wenn jetzt dein TV als Gateway den Raspi anspricht und Pakete dahin schickt muss der Raspi diese Pakete in den Tunnel routen/weiterleiten.

Ja, man kann das gesamte Konstrukt auch mit VLANs nutzen aber das verkompliziert das Setup dann natürlich deutlich, denn neben den VLANs am Switch braucht's auch einen Router, der mehr als zwei Interfaces hat und nein, eine Fritzbox hat im besten Fall nur drei Interfaces (WAN, "Gastnetz" sprich eigenes VLAN an Port 4 und eben LAN was auf den internen Switch aufgeteilt ist). Du brauchst dafür einen Router, der mehrere Netze verwalten kann und musst dies natürlich einrichten. Hinzu kommen dann DHCP-Server für jedes Netz sofern du nicht alles statisch konfigurieren willst oder DHCP-Helper auf dem Switch und du musst viel die Routingtabellen anfassen, da je nach Subnet (LAN-VLAN, IOT-VLAN, etc) du andere default routen setzen musst eben je nachdem ob der Traffic direkt ins Internet oder durchs VPN gehen soll.
 
Zuletzt bearbeitet:
Alles klar, dann weiß, wo ich nachlesen muss und wie die richtige Vorgehensweise ist.
Ich bedanke mich dafür, dass Du Dir die Zeit genommen hast, mich zu verstehen und die Sache zu erklären.
 
Ich möchte noch mal nachhaken, denn ich habe zwei Tage gelesen und probiert, aber in meinem setup funktioniert es noch nicht. OpenVPN lässt sich erfolgreich starten auf dem OpenWRT, wenn ich die conf direkt starte.
Diese habe ich nun so verknüpft, dass es wahrscheinlich weiterhin funktionieren sollte. Aber ich habe es noch nicht geschafft, dass ein client bei mir im Lan mit gateway und dns auf das OpenWRT Gerät mit OpenVPN getunnelt wird.
Am OpenWRT Gerät habe ich via shell traceroute über meine interfaces gemacht und sieht für mich so aus, dass aktuell VPN steht.

Frage 1 für heute:
Muss der zweite Router, hier der OpenWRT, in einem anderen subnetzt sein wie router1, meine Fritzbox modem/router?

!
Aktuell sind beide router bei mir im selben sub und mein szenario
Fritz 192.168.178-1 (modemrouter) ->
DNS->Pihole 192.168.178.4 (im docker auf nas via macvlan)->DNS Weiterleitung an 192.168.178.6 (mein OpenWRT router mit stubby DNS und Wireguard, der auch OpenVPN client sein soll)-> ext. DNS 1.1.1.1 cloudflare
 
Also ich versuche mal dein Setup vollständig nachzuvollziehen:

Fritzbox fungiert als Modem & Router und dein LAN hat als Subnet 192.168.178.0/24. Die Fritzbox hat die IP 192.168.178.1 und du hast ein NAS und auf dem läuft u.a. ein pihole-Container mit der 192.168.178.4 und du hast einen openWRT Router mit der 192.168.178.6.
Per DHCP bekommen deine Clients als DNS-Server den pihole und als Gateway die Fritzbox mitgeteilt?

Ebenso läuft auf dem openWRT wireguard, das per port-forwarding auf der Fritzbox erreichbar ist aus dem LAN.

Zusätzlich hast du den openVPN Client auf dem openWRT eingerichtet um dich mit einem externen VPN-Server im Internet zu verbinden.
Bis hier hin alles richtig verstanden? Dann hätte ich jetzt ein paar Fragen:
  • Welche (interne) IP hat denn das wireguard Interface wg0?
  • Welche IP bekommt dein tun0 Interface?
  • Wie sieht die Routing Tabelle auf dem openWRT Gerät aus wenn du den openVPN Tunnel aufgebaut hast?

Mit den Angaben sollte man weiter helfen können. Ich sehe unabhängig davon jetzt aber schon ggf. ein Problem:
Wenn Traffic Richtung Internet ab dem openWRT durch den openVPN Tunnel gehen soll würde dies auch bedeuten, dass der DNS-Traffic Richtung cloudflare durch den Tunnel muss und auch davon abhängig ist, dass dieser Tunnel immer verfügbar ist. Wenn du dies umgehen willst, müsstest du dich zusätzlich noch mit Policy Based Routing (PBR) auseinander setzen. Damit kannst du zum Beispiel Routen nicht nur anhand von Metriken setzen wie es beim "klassischen" Routing der Fall ist sondern u.a. anhand von Ports oder dem genutzten Protokoll. Du müsstest dann ein policy based routing bauen auf dem openWRT, dass ausgehenden DNS Traffic nicht als Gateway tun0 nutzt sondern eth0 und dann zur Fritzbox und ab da weiter ins Internet

Frage am Rande: Warum eigentlich openWRT + stubby wenn pi-hole doch auch dns-over-https nutzen kann? https://docs.pi-hole.net/guides/dns-over-https/ Damit bräuchtest nämlich kein PBR auf dem openWRT nutzen für DNS ^^
 
Zurück
Oben