IPv6-Routing zwischen zwei LANs

Forum für allgemeinen Fragen zum Thema IPv6 mit LANCOM Routern

Moderator: Lancom-Systems Moderatoren

Antworten
Maurice
Beiträge: 131
Registriert: 18 Sep 2017, 12:38

IPv6-Routing zwischen zwei LANs

Beitrag von Maurice »

Wir nutzen zwei (V)LANs, in beiden ist IPv6 aktiv:

Code: Alles auswählen

Interface VLAN-ID Schnittstellen-Tag Präfix
------------------------------------------------------
INTRANET  1       0                  2001:DB8:0:1::/64
GAESTE    2       2                  2001:DB8:0:2::/64
Es existiert eine Default-Route (::/0), Routing-Tag 0, über die IPv6-WAN-Schnittstelle. IPv6-Internetzugang funktioniert damit in beiden Netzen.

Auf Rechnern im INTRANET laufen Dienste, die auch aus dem Internet erreichbar sein müssen. Entsprechende IPv6-Forwarding-Regeln sind in der Firewall eingerichtet und dies funktioniert auch problemlos. (Die Firewall ist nur auf dem WAN-Interface aktiv.)
Ausgerechnet aus dem GAESTE-Netz ist jedoch kein Zugriff auf diese Dienste möglich. Offenbar greift hier das Konzept "Netzwerke mit einem Schnittstellen-Tag ungleich 0 können nur auf Netzwerke zugreifen, die das gleiche Schnittstellen-Tag verwenden".

Gibt es dafür eine einfache Lösung? Aus Sicht von INTRANET soll das GAESTE-Netz genauso behandelt werden wie das WAN.

(Bei IPv4 stellt sich das Problem so nicht, da die Dienste im DNS auf die WAN-IPv4-Adresse auflösen und das Port-Forwarding durchlaufen. Das funktioniert auch aus dem GAESTE-Netz.)
backslash
Moderator
Moderator
Beiträge: 7010
Registriert: 08 Nov 2004, 21:26
Wohnort: Aachen

Re: IPv6-Routing zwischen zwei LANs

Beitrag von backslash »

Hi Maurice,
Offenbar greift hier das Konzept "Netzwerke mit einem Schnittstellen-Tag ungleich 0 können nur auf Netzwerke zugreifen, die das gleiche Schnittstellen-Tag verwenden".
genau, d.h. du mußt Traffic vom Gätenetz ins INTRANET per Firewallregel umtaggen. Hinzu kommt noch, daß dein INTRANET das Tag 0 hat - das führt dazu, daß du in der Fierawall das Tag 65535 setzen mußt:

Code: Alles auswählen

Name:         ALLOW-GAESTE->INTRANET
Priorität:    0
Quell-Tag:    0
Routing-Tag:  65535
Aktionen:     ACCEPT
Dienste:      ANY (oder auf was du es gerne beschränken willst)
Quelle:       lokales Netz "GAESTE"
Ziel:         lokales Netz "INTRANET"
(Bei IPv4 stellt sich das Problem so nicht, da die Dienste im DNS auf die WAN-IPv4-Adresse auflösen und das Port-Forwarding durchlaufen. Das funktioniert auch aus dem GAESTE-Netz.)
das ist schon "gruselig"... Im IPv4 sollten die lokalen Hostnamen im Gästenetz auch direkt lokal auflösen, statt den Umweg über das WAN zu gehen. Das hätte dann auch den Vorteil, daß du auf den Servern im INTRANET feststellen kannst, ob eine Anfrage aus dem Gästenetz kam oder aus dem Internet, denn sie würden als Quelle direkt die jeweiligen IPs aus dem Gästenetz sehen und nicht die WAN-IP des LANCOMs. In diesem Fall müßtest du dann aber auch die passende Allow-Regel in der IPv4-Firewall setzen (sie sieht letztendlich genau so aus, wie die für IPv6).

Gruß
Backslash
Maurice
Beiträge: 131
Registriert: 18 Sep 2017, 12:38

Re: IPv6-Routing zwischen zwei LANs

Beitrag von Maurice »

Hi Backslash,

Danke für deine Antwort. Habe testweise eine Firewallregel genau so angelegt, es ändert sich aber leider nichts. Greift die Firewall hier überhaupt? "Firewall für dieses Interface aktiv" ist wie gesagt nur auf der WAN-Schnittstelle gesetzt, nicht auf den LAN-Schnittstellen.

Außerdem sind die existierenden Firewallregeln sehr spezifisch, in der Art:

Code: Alles auswählen

Name:         ALLOW-WEBSERVER1
Priorität:    0
Quell-Tag:    0
Routing-Tag:  0
Aktionen:     ACCEPT
Dienste:      HTTP, HTTPS
Quelle:       ANYHOST
Ziel:         IPv6-Adresse <bestimmter Host im Intranet>
Es gibt eine Vielzahl derartiger Regeln. Wenn es mit "umtaggen" funktionieren sollte: Müsste ich die Regeln dann alle duplizieren und anpassen? Oder bedarf es nur einer "Umtag-Regel" und danach greifen dann die bestehenden Regeln?


Betreffs der IPv4-Lösung:
das ist schon "gruselig"...
Ich würde es "pragmatisch" oder "konsequent" nennen. 8)
Im IPv4 sollten die lokalen Hostnamen im Gästenetz auch direkt lokal auflösen
Das hieße dann Split DNS, davon bin ich absolut kein Freund (ist aber eine andere Diskussion). Alle aus dem Internet erreichbaren Dienste lösen wir immer auf die öffentlichen Adressen auf. Auch im Intranet, denn dort spielt IPv4 ohnehin fast keine Rolle mehr.
statt den Umweg über das WAN zu gehen
Naja, läuft ja dennoch direkt über den Lancom und nicht über das Internet. Ob der intern über die WAN-Adresse NATet oder direkt von einem LAN ins andere routet halte ich in diesem Szenario für nebensächlich.
Das hätte dann auch den Vorteil, daß du auf den Servern im INTRANET feststellen kannst, ob eine Anfrage aus dem Gästenetz kam oder aus dem Internet
Das ist mir ehrlich gesagt egal. Das Gäste-Netz dient nur als Internetzugang, quasi ein halb-öffentlicher Hotspot. Aus Intranet-Sicht sind Gäste-Netz-Clients nicht vertrauenswürdiger als beliebige Internet-Clients.
In diesem Fall müßtest du dann aber auch die passende Allow-Regel in der IPv4-Firewall setzen
Genau, also mehr Konfigurationsaufwand (habe ich Split DNS schon erwähnt?), aber aus meiner Sicht keine Vorteile.

Mit der IPv4-Lösung bin ich glücklich, jetzt muss es nur noch über IPv6 funktionieren...

Grüße

Maurice
Maurice
Beiträge: 131
Registriert: 18 Sep 2017, 12:38

Re: IPv6-Routing zwischen zwei LANs

Beitrag von Maurice »

Sorry, ich muss nochmal nachfragen. Habe mich intensiv mit dem LCOS-Referenzhandbuch auseinandergesetzt, bekomme aber kein IPv6-Routing zwischen zwei LANs unter Einbeziehung der Firewall zustande. Sollte doch ein Standardszenario sein?

Nochmal konkret: Muss "Firewall für dieses Interface aktiv" für die LAN-Schnittstellen aktiviert werden? Default beim Anlegen einer neuen LAN-Schnittstelle ist "Aus", aber das Umtaggen kann dann ja eigentlich nicht funktionieren. Das testweise Aktivieren hat allerdings auch nichts gebracht.

Außerdem habe ich die Priorität der "Umtag-Regel" auf 9999 gesetzt und die Verkettung aktiviert. Soweit richtig? Dann sollte nur diese eine zusätzliche Regel benötigt werden und anschließend die existierenden Regeln durchlaufen werden?
Maurice
Beiträge: 131
Registriert: 18 Sep 2017, 12:38

Re: IPv6-Routing zwischen zwei LANs

Beitrag von Maurice »

Hallo Backslash,

Bin das Thema nochmal intensiver angegangen und mittlerweile der Ansicht, dass es ein Bug sein muss bzw. so schlicht nicht funktioniert.
"Firewall für dieses Interface aktiv" muss auf den LAN-Interfaces aktiviert werden, sonst greifen die LAN-zu-LAN-Firewallregeln nicht. (Eigentlich logisch, frage mich nur, warum das default aus ist.)
Funktioniert aber dennoch nicht. Es sieht danach aus, dass die Umtag-Regel trotz maximaler Priorität nie angewendet wird. Habe sie testweise auf REJECT-SNMP gesetzt, sehe aber nichts im Log. Sprich: Pakete aus dem Gästenetz mit Ziel Intranet erreichen die Firewall wohl gar nicht.

Mein vager Verdacht: In der Routing-Tabelle ist zu sehen, dass für das per PD vom ISP bezogene Präfix automatisch eine Null-Route angelegt wird (wozu eigentlich?).
Beispiel: Der Router bekommt per PD das Präfix 2001:db8:0:0::/56 zugeteilt. In der Routing-Tabelle ist folgender Eintrag zu finden (zweimal, jeweils für Routing-Tag 0 und 2):

Code: Alles auswählen

Praefix       2001:db8:0:0::/56
Rtg-Tag       0 bzw. 2
Next-Hop      ::
Zielinterface #Null
Typ           DHCP
Könnte es sein, dass diese Null-Route noch vor der Firewall zuschlägt und die Pakete aus dem Gästenetz daher verworfen werden, bevor die Umtag-Regel eine Chance bekommt?

Es gibt auch eine Route ins Intranet, aber natürlich nur für Routing-Tag 0:

Code: Alles auswählen

Praefix       2001:db8:0:1::/64
Rtg-Tag       0
Next-Hop      ::
Zielinterface INTRANET
Typ           Connected
Als Workaround habe ich nun manuell eine statische Route vom Gästenetz ins Intranet angelegt:

Code: Alles auswählen

Praefix       2001:db8:0:1::/64
Rtg-Tag       2
Next-Hop      ::
Zielinterface INTRANET
Typ           Static
Das funktioniert (ohne Umtag-Regel), lässt aber alles vom Gästenetz ins Intranet durch. Daher habe ich noch eine Deny-All-Regel angelegt, die alles vom Gäste- ins Intranet blockt. Die sitzt priomäßig nach den Regeln, die gezielt bestimmte Verbindungen ins Intranet erlauben, aber vor der ALLOW-OUTBOUND-Regel.

Funktioniert soweit, aber schön ist das nicht.

Grüße

Maurice
backslash
Moderator
Moderator
Beiträge: 7010
Registriert: 08 Nov 2004, 21:26
Wohnort: Aachen

Re: IPv6-Routing zwischen zwei LANs

Beitrag von backslash »

Hi Maurice,
Bin das Thema nochmal intensiver angegangen und mittlerweile der Ansicht, dass es ein Bug sein muss bzw. so schlicht nicht funktioniert.
Wenn du von Tag 2 nach Tag 0 willst mußt du in der Firewallregel als Tag 655356 angeben und nicht 0...
Mein vager Verdacht: In der Routing-Tabelle ist zu sehen, dass für das per PD vom ISP bezogene Präfix automatisch eine Null-Route angelegt wird (wozu eigentlich?).
Da dieses Prefix auf der Seite des Routers liegt, muß alles verworfen werden, was an dieses Prefix geht und nicht von einer anderen (engeren) Route abgedeckt wird. Würde es ins Internet gesendet, würde der Provider es postwendend zurückschicken und das LANCOM wieder ins Internet usw...
Es gibt auch eine Route ins Intranet, aber natürlich nur für Routing-Tag 0:
ja denn Pakete an das Subprefix 1 des delegierten Prefix sollen natürlich ins Intranet gehen und nicht verworfen werden. Genauso sollte es eine Route für's Gästenetz mit dem passenden Subprefix geben (wenn du das Prefix des Gästenetzes auch aus dem zugewiesenen Prefix ableitest).
Als Workaround habe ich nun manuell eine statische Route vom Gästenetz ins Intranet angelegt:
die sollte überflüssig sein, wenn du in der Firewallregel das richtige Tag setzt

Gruß
Backslash
Maurice
Beiträge: 131
Registriert: 18 Sep 2017, 12:38

Re: IPv6-Routing zwischen zwei LANs

Beitrag von Maurice »

backslash hat geschrieben: Wenn du von Tag 2 nach Tag 0 willst mußt du in der Firewallregel als Tag 655356 angeben und nicht 0...
Habe ich gemacht, genau wie Du es in deiner ursprünglichen Antwort beschrieben hast (Routing-Tag 65535). Funktioniert aber leider nicht.
Ich habe eine Testregel angelegt: Priorität 9999, Quelle lokales Netz "GAESTE", Ziel lokales Netz "INTRANET", Dienste ANY, Aktion REJECT-SNMP. Damit müsste man im Firewall-Log Einträge für sämtlichen Traffic aus dem Gästenetz mit Ziel Intranet sehen. Da ist aber nichts. Nada. Nix. Das kann ich mir nur so erklären, dass die Regel gar nicht angewendet wird. Erst wenn ich manuell die Route ins Intranet mit Routing-Tag 2 hinzufüge greift auch die Firewall-Regel.
backslash hat geschrieben: Da dieses Prefix auf der Seite des Routers liegt, muß alles verworfen werden, was an dieses Prefix geht und nicht von einer anderen (engeren) Route abgedeckt wird. Würde es ins Internet gesendet, würde der Provider es postwendend zurückschicken und das LANCOM wieder ins Internet usw...
Danke, leuchtet ein.
backslash hat geschrieben: Genauso sollte es eine Route für's Gästenetz mit dem passenden Subprefix geben (wenn du das Prefix des Gästenetzes auch aus dem zugewiesenen Prefix ableitest).
Richtig, die gibt es, und zwar nicht nur mit Tag 2, sondern auch mit Tag 0 (da dieses ja privilegiert ist). Daher funktioniert auch der Zugriff aus dem Intranet ins Gästenetz problemlos. Nur eben nicht andersherum.
backslash hat geschrieben: die sollte überflüssig sein, wenn du in der Firewallregel das richtige Tag setzt
Ja, leuchtet mir ein. Die Firewall-Regel sollte das Routing-Tag von 2 auf 0 umschreiben und dann sollte die Route ins Intranet (mit Routing-Tag 0) greifen. Die Praxis spricht aber leider eine andere Sprache. Bitte nicht falsch verstehen, aber hast Du das getestet oder nimmst Du nur an, dass das funktionieren müsste? Ich habe schon zig Stunden experimentiert und komme zu keinem anderen Ergebnis.

Danke für die Geduld! :D
Antworten