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 February 25, 2026, 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 February 25, 2026, 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 February 25, 2026, 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 February 25, 2026, 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 February 25, 2026, 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

Quote from: Bode on February 25, 2026, 06:17:35 PMIch möchte nicht an dem Layer2 Problem herumdoktern.
Du hast eine grundsätzliche Layer 2-Fehlkonfiguration, die es zu beheben gilt. "Herumdoktern" wäre, dies zu ignorieren und stattdessen an anderen Stellen zu basteln.

Quote from: Bode on February 25, 2026, 06:17:35 PMHabe ewig gesucht woran es liegen könnte.
Die PCs müssen entweder an Access-Ports (nur VLAN 1 untagged) angeschlossen oder so konfiguriert werden, dass sie selbst VLAN-Ingress-Filtering machen. Beides ist bei dir nicht gegeben, weshalb die PCs alle Multi- und Broadcasts aus beiden VLANs verarbeiten. Probleme aller Art sind da garantiert, RAs aus dem falschen VLAN ist nur eines davon.

Quote from: Bode on February 25, 2026, 06:17:35 PMIch 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.
Konfiguriere die Telefone wie von Cedrik beschrieben, dann sehen die PCs nur VLAN 1 untagged, wenn sie an ein Telefon angeschlossen werden.
Falls Du wirklich die Konstellation hast, dass am selben Switch-Port abwechselnd mal ein PC und mal ein Telefon (+ ggfs. PC am zweiten Telefon-Port) hängt, dann musst Du den Switch in der Tat so konfigurieren, dass er seine Port-Konfiguration dynamisch anpasst (z. B. default Access-Port für VLAN 1 und nur, wenn die MAC-Adresse eines Telefons erkannt wird, zusätzlich VLAN 10 tagged).

An den Link-Local-Adressen von OPNsense herumzubasteln bringt wirklich nichts. Dann empfangen die PCs eben RAs von zwei unterschiedlichen Source-Adressen, aber dadurch ist doch nichts gewonnen. Sie empfangen immer noch RAs aus beiden VLANs. Und es gib sicher auch anderen Multi- / Broadcast-Traffic im VoIP-VLAN, den die PCs abbekommen.
OPNsense virtual machine images
OPNsense aarch64 firmware repository

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

@Maurice
Richtig, das sind valide Argumente. Ich muss mich belesen, wie ich das Ingressfilter für MAC-Adressen auf den Switchen setzen kann. Eine Idee ist, allen MAC-Adressen die keine Telefone sind, über das Filter das Vlan1 und umgedreht den Telefonen vlan10 zuzuweisen auf dem Switch.
Danke dir für den Denkanstoß. Manchmal sieht man den Wald vor lauter Bäumen nicht.

@Cedrik
Die Scopeid wird unter Windows anscheinend herausgefiltert.
Ich kann nur Windows beurteilen, da dort das Problem auftritt. Leider kann ich Linux im Moment nicht testen.
Die Telefone sind wie beschrieben mit IPv6 und IPv4 konfiguriert und funktionieren ohne Probleme.
Vielen Dank.

Grüße Bode