Der Router erreicht das Internet über seinen Tunnel, während ein Laptop dahinter weiterhin die ISP-Adresse meldet. Zusätzliche Accept-Regeln helfen nicht, und dieses Scheitern ist aufschlussreich: Filtering beantwortet, ob ein Paket passieren darf, nicht wohin es geht. Die Schnittstellenwahl hat bereits ein Routing-Lookup getroffen, das nichts über deine Client-Liste weiß. Repariere das Lookup, und die Firewall ist nicht länger verdächtig.

Eine Filterregel kann keine Schnittstelle wählen

Der Paketfluss auf einem Linux-Router führt zuerst die Routing-Entscheidung und danach den Forward-Hook aus. Wenn eine Regel auf das ausgehende Tunnelgerät passt, hat der Kernel schon entschieden, dass der Tunnel der Weg nach draußen ist. Bevorzugt die Haupttabelle weiterhin die WAN-Standardroute, ist das Paket auf dem Weg zum ISP, und die gerade geschriebene Accept-Regel sieht es nie. Diese eine Reihenfolge-Tatsache erklärt, warum eine Seite neuer Firewallregeln nichts ändert.

Das folgende Beispiel nutzt ein LAN 192.168.8.0/24 auf br-lan, ein Tunnelgerät tun0 und eine Set-Top-Box unter 192.168.8.23, die den Tunnel nehmen soll.

Lies das Lookup, bevor du Regeln bearbeitest

Bitte den Kernel, eine Route im Namen dieses Clients aufzulösen. Die Antwort enthält das ausgehende Gerät und die Quelladresse, die gewählt würde, und das ist alles, was du zur Bestätigung der Diagnose brauchst. Nennt die Antwort das WAN-Gerät, hatte das Paket nie eine Chance, deine Regel zu erreichen.

ip -4 route get 198.51.100.7 from 192.168.8.23

Wiederhole die Abfrage für einen Client, der auf dem normalen Weg bleiben soll. Wenn beide Antworten dasselbe Gerät nennen, ist noch keine quellbasierte Policy im Spiel, und die Korrektur gehört ins Routing statt ins Filtern.

Verbinde eine Tabelle mit den Clients, die du abdecken willst

Policy-Routing fügt ein Regel-Lookup vor der Haupttabelle ein. Baue eine Tabelle, deren Standardroute der Tunnel ist, und binde sie dann an einen Selektor: eine Eingangsschnittstelle, eine Quelladresse oder eine Firewall-Markierung. Prioritäten bestimmen die Reihenfolge, und die Haupttabelle steht weit unten in der Liste bei 32766, sodass eine Regel mit niedriger Nummer zuerst gefragt wird. Schnittstellen-Selektoren erfassen jeden Client auf der Bridge; Adress-Selektoren erfassen eine Maschine.

ip -4 route add default dev tun0 table 200
ip -4 rule add iif br-lan lookup 200 priority 200

Firmware-Oberflächen zeigen meist dieselben Objekte wie eine Seite für Policy-Routing oder VPN-Richtlinien. Eine Geräteliste dort ist leichter zu pflegen als handgeschriebene Regeln und übersteht meist Upgrades, die die Regelsyntax ändern.

Wähle den Selektor bewusst. Eine Schnittstellenregel ist kurz und zukunftssicher, fängt aber auch den eigenen Verwaltungsverkehr des Routers ein, der auf dieser Bridge ankommt. Eine Quellregel ist exakt und braucht eine Bearbeitung, sobald sich die Geräteliste ändert. Schreib die Wahl auf, denn die nächste Person, die fragt, warum sich ein Gerät anders verhält, wird sie brauchen.

Halte lokale Ziele aus dem Tunnel

Eine neue Tabelle kennt nur die Routen, die du hineinlegst. Das LAN-Präfix fehlt, also würden Drucker- und NAS-Verkehr der Tunnel-Standardroute folgen und verschwinden. Eine Throw-Route beendet das Lookup in dieser Tabelle und gibt die Entscheidung an die Haupttabelle zurück.

ip -4 route add throw 192.168.8.0/24 table 200

Lässt du diese Route weg, brechen lokale Freigaben, und die eigene Verwaltungssitzung des Routers kann verschwinden, wenn der Selektor breiter ist als beabsichtigt. Dann kläre die Quellfrage: Tunnelpakete, die noch LAN-Adressen tragen, brauchen auf der Gegenseite eine bekannte Rückroute, während Masquerading auf dem Tunnel diese Anforderung und zugleich die Client-Identität entfernt, die die Gegenseite sähe.

Zur Laufzeit hinzugefügte Regeln und Routen sind nach einem Neustart oder Firmware-Update weg. Trage sie in den Startmechanismus des Routers ein, starte einmal neu und teste erneut vom Client aus: seine öffentliche Adresse, einen zweiten Client, der auf dem WAN bleiben soll, und die Tunnel-Zähler während einer neuen Verbindung.

Ähnliche Artikel