opnsense ipv6 Interface-ULA auf lagg.vlan_xxxx gleich, Problem

Started by Bode, February 24, 2026, 05:50:33 PM

Previous topic - Next topic
Hallo,

ich habe ein Problem mit gleichen ULA-Adressen auf lagg.vlans, die nur durch die Zonenbezeichner zu unterscheiden sind.

Voraussetzungen:
-opnsense mit aktuellem Patchstand
-opnsense mit lagg.vlan1 und lagg.vlan10 im Lan
-Switch (Port1 +Port2) mit Trunk zu opnsense (Port1 +Port2)
-auf dem Switch eine Port-Konfiguration z.B. Port 5 mit lagg.vlan1 (native PC) und lagg.vlan10 (trunk VOIP)

Ziel:
-lagg.vlan1 soll die Konfiguration route + dns bekommen, dies funktioniert
-lagg.vlan10 soll die Konfiguration nur für voip-Telefone bekommen (über lldp-med, dhcp-option), dies funktioniert

Problem:
Alle lagg.vlan haben die gleiche ULA fe80::xxx:xxxx:xxxx:wxyz.
Windowsclients ignorieren die Zonenbezeichner der Router-ULA und bekommen anhand dieser ULA über das routeradvertisement die ipv6 Einstellungen für:
lagg.vlan1 -richtig
und
lagg.vlan10 -falsch

Fragen:
Wie bekomme ich verschiedene ULA für die verschiedenen lagg.vlans, damit die lagg.vlan10 Einstellungen nicht auf dem Client gesetzt werden?
Gibt es eine andere saubere Lösung?
Warum werden nicht gleich verschiedene ULA pro vlan erzeugt?

Vielen Dank an die Entwickler für das Produkt.

Grüße Bode


 

Quote from: Bode on February 24, 2026, 05:50:33 PMAlle lagg.vlan haben die gleiche ULA fe80::xxx:xxxx:xxxx:wxyz.

Das ist keine ULA sondern eine Link-local Address und das ist vollkommen in Ordnung so, da die nur mit Scope überhaupt Bedeutung haben.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Entschuldige Patrick, mein Fehler.

In meinem Fall ist das grundsätzliche Problem, dass ich zu wenige Ports in den Zielräumen habe.
Nach dem Studium von NDP gibt es drei Lösungen für das Problem.

Lösungen:
a) Jedes Telefon bekommt einen eigenen Port auf dem Switch mit der Zuweisung des vlans (nicht möglich bei mir).
b) Ich setze auf der opnsense eine extra Netzwerkkarte oder lagg1.vlan10 auf.
c) Abschaltung von ipv6 auf vlan10.

Ich würde jetzt Lösung b) umsetzen wollen.
Könnt ihr das so bestätigen?


Verstehe ich nicht. Betreibst du mehrere VLANs untagged auf ein und demselben Port?
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Quote from: Patrick M. Hausen on Today at 10:12:11 AMVerstehe ich nicht. Betreibst du mehrere VLANs untagged auf ein und demselben Port?

Nein,

PC (untagged vlan1)<-->VOIP-Telefon mit zwei Ethernetports (vlan10 tagged)<--->Switch (z.B. Port5 vlan1 untagged, vlan10 tagged)

Egal ob nur der PC oder der PC mit Telefon angeschlossen sind, es werden die Route, der DNS-Server und die Domänesuchliste IPv6 vom vlan10 auf dem PC im vlan1 gesetzt.

Mit Paket-Trace gucken, was da passiert. Keine Ahnung. Ich würde immer empfehlen, tagged und untagged nicht zu mischen auf der OPNsense. Also vielleicht von der OPNsense bis zum Switch beide VLANs tagged betreiben, und dann erst am Switch das VLAN 1 für den PC wieder auf untagged setzen.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Das hört sich nach einer inkorrekten VLAN-Konfiguration des PCs an. Dort muss die NIC so konfiguriert werden, dass das VoIP-VLAN ignoriert wird.

Das ist ggfs. einfacher, wenn Du auf dem Switch-Port beide VLANs taggst und auf dem PC explizit das gewünschte VLAN (tagged) konfigurierst.

Mit IPv6 und OPNsense hat das alles relativ wenig zu tun - Du hast ein Layer 2-Problem zwischen Switch und Client-PC.

Grüße
Maurice
OPNsense virtual machine images
OPNsense aarch64 firmware repository

Commercial support & engineering available. PM for details (en / de).

Quote from: Patrick M. Hausen on Today at 11:45:03 AMMit Paket-Trace gucken, was da passiert. Keine Ahnung. Ich würde immer empfehlen, tagged und untagged nicht zu mischen auf der OPNsense. Also vielleicht von der OPNsense bis zum Switch beide VLANs tagged betreiben, und dann erst am Switch das VLAN 1 für den PC wieder auf untagged setzen.

Das lagg ist mit allen vlans tagged zum Switch. Das Problem sind die fehlenden Ports in den Zielräumen. Ich wollte VOIP-Telefone vor den PC's betreiben. Das funktioniert mit ipv4, aber nicht mit ipv6, da die Einstellungen per Multicast von der Opnsense per Routeradvertisement auf den PC gepusht werden und beide Vlans auf dem Switchport liegen.


Quote from: Maurice on Today at 12:46:05 PMDas hört sich nach einer inkorrekten VLAN-Konfiguration des PCs an. Dort muss die NIC so konfiguriert werden, dass das VoIP-VLAN ignoriert wird.

Das ist ggfs. einfacher, wenn Du auf dem Switch-Port beide VLANs taggst und auf dem PC explizit das gewünschte VLAN (tagged) konfigurierst.

Mit IPv6 und OPNsense hat das alles relativ wenig zu tun - Du hast ein Layer 2-Problem zwischen Switch und Client-PC.

Grüße
Maurice

Ja, das wäre eine Lösung, wenn die PC's nicht mobil wären, könnte ich einfach den Switchport tagged auf vlan1 und die Netzwerkkarte auf vlan1 setzen. Da diese aber mobil sind, fällt diese Lösung aus.

IPv6 Router Advertisements müssen laut RFC 4861:
-von der Link Local des Routers kommen
-mit der MAC des Parent Interfaces gesendet werden
-per Multicast an ff02::1 gehen

Wenn mehrere VLANs auf demselben Parent liegen, sieht Windows:
-dieselbe MAC
-dieselbe Link Local
-denselben Router
→ und akzeptiert alle RAs.

Lösung: VLANs auf OPNsense NICHT über denselben Parent führen
Statt:
lagg0.1
lagg0.10

z.B.:
em0.1
em1.10

oder:

lagg0 für Daten
lagg1 für VOIP

Ich weiß bloß nicht, ob das dann sauber funktoniert. Damit könnte ich die Switchkonfiguration und die PC's unverändert verwenden.

Vielen Dank euch beiden!

Grüße Bode

Aber weshalb beachtet Windows das RA Paket mit dem 802.1q Tag dran überhaupt? Das muss doch auf der Ebene schon verworfen werden?
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Ich denke der trunk zur OPNsense ist nicht /nur/ getagged, sondern hat auch ein ungetaggtes VLAN laufen:

https://docs.opnsense.org/manual/how-tos/vlan_and_lagg.html

Bitte genau so umsetzen, andernfalls kommt es zu den Effekten die in der "Attention" box beschrieben sind.
Hardware:
DEC740

Vielleicht lassen sich die IP-Telefone so konfigurieren, dass sie das VoIP-VLAN nicht an ihren zweiten Port (an dem der PC hängt) durchreichen? Wäre ein naheliegendes Feature, denn genau für deinen Use Case haben diese ja den zweiten Port.

Du solltest jedenfalls nicht versuchen, für ein Layer 2-Problem (nicht sauber getrennte VLANs) einen Workaround auf höheren Layern (z. B. Router Advertisements) zu basteln.

@Patrick Je nach NIC / Treiber / Konfiguration wird das VLAN-Tag ggfs. ignoriert und Windows akzeptiert dann alle Frames. So kommt es zur Vermischung von VLANs. Habe ich auch schon gesehen.
OPNsense virtual machine images
OPNsense aarch64 firmware repository

Commercial support & engineering available. PM for details (en / de).

Quote from: Monviech (Cedrik) on Today at 03:07:54 PMIch denke der trunk zur OPNsense ist nicht /nur/ getagged, sondern hat auch ein ungetaggtes VLAN laufen:

https://docs.opnsense.org/manual/how-tos/vlan_and_lagg.html

Bitte genau so umsetzen, andernfalls kommt es zu den Effekten die in der "Attention" box beschrieben sind.

Vielen Dank für den Hinweis, ist genauso umgesetzt.

Quote from: Maurice on Today at 04:36:31 PMVielleicht lassen sich die IP-Telefone so konfigurieren, dass sie das VoIP-VLAN nicht an ihren zweiten Port (an dem der PC hängt) durchreichen? Wäre ein naheliegendes Feature, denn genau für deinen Use Case haben diese ja den zweiten Port.

Du solltest jedenfalls nicht versuchen, für ein Layer 2-Problem (nicht sauber getrennte VLANs) einen Workaround auf höheren Layern (z. B. Router Advertisements) zu basteln.

@Patrick Je nach NIC / Treiber / Konfiguration wird das VLAN-Tag ggfs. ignoriert und Windows akzeptiert dann alle Frames. So kommt es zur Vermischung von VLANs. Habe ich auch schon gesehen.

Genauso wie du es beschreibst ist es. Windows ignoriert die VLAN-Tags.
Ich möchte nicht an dem Layer2 Problem herumdoktern. Habe ewig gesucht woran es liegen könnte. Ich möchte eine Lösung, womit die PC's ohne Konfiguration in ihr vlan kommen, unabhängig ob ein Telefon davor ist oder nicht, den Telefonen ihr vlan zugewiesen wird und die PC's mobil mit ihrer Netzwerkkarte benutzt werden können. Damit ist es für meine Konfiguration das einfachste auf der Opnsense eine Netzwerkkarte oder zusätzliches Lagg zu installieren und dieser Konfig das Telefon-Vlan zu zuweisen.  Damit wären alle meine Bedingungen erfüllt. Laut RFC 4861 ist der Link Local des Routers dann ein anderer und so sollte alles funktionieren. Ist zwar nicht schön, macht aber den kleinsten Aufwand und gibt mir die notwendige Unabhängigkeit. Ich werde es einmal vorbereiten und eine Rückmeldung geben.

Schöner wäre es, man könnte jedem vlan auf dem lagg eine eigene Link Local Adresse zuweisen. Das gibt die RFC aber nicht her.

Vielen Dank für eure Rückmeldungen und Hinweise.

Grüße Bode

Aber die link local addresse ist doch unique pro vlan:

e.g. bei mir:

vlan0.4: flags=1008943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
    description: lagg0_vlan4_GAST (opt4)
         inet6 fe80::f690:eaff:fe01:3dc8%vlan0.4 prefixlen 64 scopeid 0x19

vlan0.5: flags=1008943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
         description: lagg0_vlan5_IOT (opt5)
         inet6 fe80::f690:eaff:fe01:3dc8%vlan0.5 prefixlen 64 scopeid 0x1a

Die scopeid ist der unterschied.

Für Telefonie haben switche etwas was "Auto Voice VLAN" heißt, bei Cisco oder Netgear z.b. Da wird erkannt ob es ein Telefon angeschlossen wird und der Port ändert dann automatisch den Modus.

Wenn man z.B. ein SNOM oder YEALINK User Agent verwendet, hat dieser einen eigenen switch eingebaut, an einem Port schließt man Trunk zum Switch an, und am anderen Port bekommt man z.b. ein ungetaggtes VLAN für den angeschlossenen PC raus.
Hardware:
DEC740