jago
Goto Top

Wie richtet man IPV6 ULA mit VLANs auf Zyxel USG110 ein?

Hallo,

Unter IPv4 haben wir exemplarisch Netze wie folgt (nach aussen natürlich mit NAT):
192.168.0.0/24    LAN und Trunk
192.168.40.0/24   VLAN40 Verwaltung
192.168.50.0/24   VLAN50 Server
192.168.60.0/24   VLAN61 Anderes1
192.168.61.0/24   VLAN61 Anderes2
192.168.62.0/24   VLAN61 Anderes3

Mit IPv6 haben wir ein /56 Netz vom ISP bekommen und das läuft jetzt sinngemäss so:
2a01:aaaa:bbbb:cc00::/64    LAN und Trunk
2a01:aaaa:bbbb:cc40::/64    VLAN40 Verwaltung
2a01:aaaa:bbbb:cc50::/64    VLAN50 Server
2a01:aaaa:bbbb:cc60::/64    VLAN60 Anderes1
2a01:aaaa:bbbb:cc61::/64    VLAN61 Anderes2
2a01:aaaa:bbbb:cc62::/64    VLAN62 Anderes3

Bei der USG wird das so erreicht, indem man die Präfix Delegation per WAN-DHCP vom ISP abfrägt (hier also 2a01:aaaa:bbbb:cc00::/56) und einen 2-stelligen Suffix zufügt und somit ein /64 Netz bekommt. Dieses Netz ist wird dann per Router-Advertisement den Clients mitgeteilt. Das funktioniert und auch das Routing zwischen den Netzen/VLANs.

Was ich jetzt noch gerne hätte, wäre ein statischer ULA Adressbereich, falls der ISP wechselt etc. Also sowas:
fd00:affe:0:0::/64     LAN und Trunk
fd00:affe:0:40::/64    VLAN40 Verwaltung
fd00:affe:0:50::/64    VLAN50 Server
fd00:affe:0:60::/64    VLAN60 Anderes1
fd00:affe:0:61::/64    VLAN61 Anderes2
fd00:affe:0:62::/64    VLAN62 Anderes3

Das funktioniert nicht so recht. Ich kann zwar bei der Zyxel USG110 einen statischen /64 Präfix (z.B. fd00:affe:0:50::/64 für VLAN50) angeben und die Rechner beziehen diesen dann auch und geben sich damit korrekt eine /128 IP.

Innerhalb des gleichen Netzes/VLAN lassen sich die Rechner auch untereinander mit der fd00 Adresse ansprechen. Jedoch nicht auf ein anderes Netz/VLAN. Wenn ich das mit Traceroute anschaue, versuchen sie nicht mal sich zur USG110 zu verbinden, was sie aber müssten.

Was mach ich falsch?

Content-ID: 529846

Url: https://administrator.de/contentid/529846

Ausgedruckt am: 17.11.2024 um 11:11 Uhr

aqui
Lösung aqui 26.12.2019 aktualisiert um 16:39:03 Uhr
Goto Top
Eigentlich machst du alles richtig. Die Vorgehensweise ist genau so wie es bei so gut wie bei allen Herstellern weltweit gemacht wird.
Hier am Beispiel eines Cisco IOS Routers:
!
interface vlan1
description Lokales VLAN-1
ipv6 address provider-v6-prefix ::1:0:0:0:1/64
ipv6 address fd00:bade:affe:1::/64 eui-64
(ipv6 address fe80:bade:affe:1::1 link-local)
!
interface vlan40
description Lokales VLAN-40
ipv6 address provider-v6-prefix ::40:0:0:0:1/64
ipv6 address fd00:bade:affe:40::/64 eui-64
(ipv6 address fe80:bade:affe:40::1 link-local)
!
interface vlan50
description Lokales VLAN-50
ipv6 address provider-v6-prefix ::50:0:0:0:1/64
ipv6 address fd00:bade:affe:50::/64 eui-64
(ipv6 address fe80:bade:affe:50::1 link-local)
!

usw.
Wobei provider-v6-prefix hier der Platzhalter für den per PD dynamisch zugeteilten Prefix ist.
Entscheident ist das man entweder eine dedizierte statische IP verwendet oder das eui-64 Pendant dort nimmt.
Das o.a. v6 Interfacekommando in Klammern ist optional wenn man auch die Link Local Adressen kosmetisch an diese Struktur anpassen möchte.
Die o.a. Konfig funktioniert damit fehlerlos !
LordGurke
LordGurke 26.12.2019 um 17:15:31 Uhr
Goto Top
Wie sieht der Traceroute denn konkret aus?
Nur Tineouts oder eine Fehlermeldung?
Vielleicht blocken auch Firewallregeln den Traffic?
Jago
Jago 28.12.2019 um 12:20:18 Uhr
Goto Top
@LordGurke
Es kommen nur Timeouts. Firewall ist testweise deaktiviert, bzw. alles auf 'allow' gestellt.

Auch die Routingtable auf den Rechnern stimmt. Z.B. für das LAN Netz 0:
  3    266 ::/0                     fe80::a2e4:cbff:fe87:5415
  3    266 fd00:affe::/64           Auf Verbindung

Die fe80 Adresse ist die Zywall als Gateway.

Mittlerweile denke ich, es liegt daran, dass man auf der Zywall keine weiteren Interface Adressen angeben kann. Zumindest über das Webinterface geht das nicht. ULA-Adressen fc,fd und Link-Local fe80 Adressen werden dort ausdrücklich abgewiesen. Das erscheint mir ein Bug, zumindest was den ULA Bereich anbelangt.

@aqui
Ich werde das mal per Config Datei versuchen. Etwas gekürzt sieht es bis jetzt wie folgt aus:
!
interface vlan50
port lan1
vlan-id 50
description ServerNetz
ip address 192.168.50.1 255.255.255.0
type internal
igmp version 2
ipv6 nd ra advertise
ipv6 nd ra router-preference medium
ipv6 dhcp6 server
ipv6 enable
ipv6 address Prefix_Deleg_WAN1 ::50:0:0:0:1/64
ipv6 nd ra prefix-advertisement Prefix_Deleg_WAN1 ::50/64
ipv6 dhcp6-lease-object DNS_VLAN50
ipv6 nd ra other-config-flag
ipv6 nd ra prefix-advertisement fd00:affe:0:50::/64
!

Wenn ich mal Zeit habe, versuche ich dann zuzufügen:
ipv6 address fd00:affe:0:50:0:0:0:1/64

Richtig?

PS: Wie hast du den Text blau hingekriegt? face-smile
aqui
aqui 28.12.2019 aktualisiert um 13:06:06 Uhr
Goto Top
Es kommen nur Timeouts.
Bedenke das du bei v6 Traceroutes mit multiplen Adressen am Interface immer eine Source IP oder Source Interface mit angeben muss, denn wenn der v6 Tracreoute eine fd00 Adresse verwendet als Absender ist klar das das in die Hose geht ! Die v6 Source IP muss immer die öffentliche sein !
Etwas gekürzt sieht es bis jetzt wie folgt aus:
Ist ja erschreckend. Ist ja fast original Cisco Syntax ! face-wink
Na ja auch Zyxel scheint sich da am Marktführer zu orientieren und abzukupfern... face-wink
PS: Wie hast du den Text blau hingekriegt?
Einfach mal die hiesigen FAQs lesen im Kapitel Formatierungen !! face-smile
Formatierungen in den Beiträgen
"bue"=blau ist das Zauberwort nach den beiden "Lattenzäunen"...
Jago
Jago 28.12.2019 um 16:34:41 Uhr
Goto Top
So wie ich das verstanden habe, nimmt Windows als Source Adresse diejenige, die am 'nächsten' liegt. Also wenn ich eine fd00:xx anpinge, dann wohl auch mit einer fd00:xx als Source. Und warum soll das in Hose gehen? Ich pinge ja eine fd00 aus einem anderen Netz an, also z.B. fd00:affe:0:50:xxxxxx und habe als Source dann wohl z.B. fd00:affe:0:0:xxxxx. Es soll ja geroutet werden. Im Browser kann ich ja auch keine Sourceadresse wählen. Wieso muss das eine öffentliche (=global?) Source Adresse sein?

Aber zum anderen Thema:
Ich hab mal an einer zweiten USG110 die Interface Adresse im Config wie oben beschrieben eingegeben. Tatsächlich startet das Gerät sogar und die Interface Adresse erscheint als static in der Webanwendung aufgelistet. Also genau das, was eben per Webseite nicht einstellbar ist, dort steht ausdrücklich Link-local, ULA and Multicast forbidden.

Erst dachte ich supi, das war's. Ich kann die Interface Adresse auch anpingen. Dann hab ich aber gesehen, dass ich nun in der Routing Tabelle die fd00 Adressbereiche sämtlicher aktivierten VLANs drin habe, also z.B.

fd00:affe::/64 Auf Verbindung (das ist richtig für das LAN mit ID 0)
fd00:affe:0:40::/64 Auf Verbindung (falsch)
fd00:affe:0:50::/64 Auf Verbindung (falsch)

So kann ich natürlich nicht vom LAN ins VLAN50 verbinden.

Ich denke die Zyxel macht hier eindeutig was falsch.

Dazu passt ja auch die Antwort aus dem Zyxel Support Forum: ULA? Keine Ahnung, wie das geht. Haben auch nichts in unserem eigenen Handbuch gefunden. Aber hier haben Sie sicherheitshalber nochmal einen FTP Link zum Handbuch face-smile

Das ist nun ärgerlich und beschäftigt mich schon seit Wochen. Aber hey, IPv6 ist ja auch erst 20 Jahre alt.
LordGurke
LordGurke 28.12.2019 aktualisiert um 16:59:10 Uhr
Goto Top
Kannst du dem Zyxel irgendwie beibringen, selbst definierte Routen per RA zu propagieren?

Ich habe das in meinem Netz sehr ähnlich am Laufen (ohne Zyxel), habe dafür aber auch eine separate Route für fd00::/16 per RA advertisen lassen.
Dann taucht auch genau diese Route so in der Routingtabelle der Clients auf - und *das* ist dann der Indikator für den Client, welche Source-Adresse er verwenden soll.

Dein Client weiß zwar, dass er eine Adresse aus fd00:affe::/64 hat und demzufolge auch, wo der andere Clients aus diesem /64-Präfix findet, aber eben nicht, wie er die Clients aus fd00:affe:0:40::/64 erreicht.
Daher nimmt er die Default-Route und verwendet dafür auch das Präfix, was er immer dafür verwendet: Das öffentliche.
Wenn der Client aber eine Route für fd00::/16 sieht, ist diese spezifischer als die Defaultroute und zudem sieht der Client, dass er eine Adresse aus diesem Präfix hat und verwendet diese dann auch als Source-Adresse.

Versuche mal testweise, auf den beiden Clients eine statische Route für fd00::/16 anzulegen und diese auf den Zyxel zeigen zu lassen (einfach die gleiche Adresse wie die des Default-GW verwenden), dann sollten sich beide über die ULA erreichen können.
Und wenn es dann geht müsste man schauen, wie man dem Zyxel beibringt, zusätzliche Routen per RA zu advertisen.


NACHTRAG

Erst dachte ich supi, das war's. Ich kann die Interface Adresse auch anpingen. Dann hab ich aber gesehen, dass ich nun in der Routing Tabelle die fd00 Adressbereiche sämtlicher aktivierten VLANs drin habe, also z.B.

Wenn die alle als "auf Verbindung" markiert werden, dann wird per RA das "OnLink"-Flag gesetzt sein.
Kannst du im Zyxel irgendwelche Einstellungen für Router-Advertisement vornehmen?
Jago
Jago 10.01.2020 um 19:37:41 Uhr
Goto Top
Heute hatte ich mal Zeit mich wieder mit dem Thema zu befassen. Und siehe da: Jetzt laufen die ULA-Adressen einwandfrei. Möglicherweise haben inzwischen ein paar Restarts oder ablaufende Caches Wunder bewirkt.

D.h. die richtige Antwort lautet also:
- Mit der aktuellen Firmware ist es nicht möglich per Webinterface auf Zyxel USGs ULA Adressen als Interface Adresse einzugeben.
- Es ist jedoch in der Konfigurationsdatei möglich, eine zusätzliche statische Interfaceadresse, wie oben beschrieben, anzugeben. Damit sind ULA Netze möglich.

Danke für die Antworten face-smile