OPNsense: Schaffe es nicht IPv6 an einem vlan-Interface zum Laufen zu bringen
Hallo liebes Forum,
lange Zeit war ich stiller Mitleser. Aber jetzt möchte ich euch gerne um Hilfe bitten.
Zunächst mal: Vielen Dank für den vielen und überaus nützlichen Input und ganz besonderen Dank an Kollegen Aqui für die wirklich zeitlosen Tutorials!
Auch habe ich mich -bis auf wenige Ausnahmen- an eure Hardwareempfehlungen gehalten.
Zu meiner Situation. Ich befinde mich seit Juni letzten Jahres in Griechenland. Hier habe ich das Hotel meiner Eltern übernommen. OK, wie überall auf der Welt ein derzeit schwieriges Business zum Geld verdienen.
Hier habe ich eine IT-Infrastruktur aufgebaut inklusive Gäste Wifi über Captive-Portal mit voucher-system.
Die Hardware:
- Speedport Entry 2i im Bridge-mode (nur DSL-Modem).
- APU2E4 (OPNsense).
- Fritzbox 7590 (beschnitten bis auf VoIP und DECT-Station).
- Cisco SG250-10P 10-Port Gigabit PoE Smart Switch.
- Raspberry pi4 (pi-hole, Unifi AP Controller, CUPS, Samba …).
- 1 (bald mehrere) UniFi AP-AC-Pro Access Point.
Aufbau:
ISP (Cosmote, GR) -> OPNSense (igb0=WAN, igb1=LAN) -> Cisco Switch
Switch:
Port 1: OPNsense
Port 2: Raspberry Pi4
Port 3: Fritzbox
Port 6: Unifi AP
Der AP sendet 2 SSID’s. Eine für das administrative LAN und eine weitere (vlan=2 mit parent interface igb1 an der OPNsense) für das Gäste Wifi. Am Switch habe ich die Ports 1,2 und 6 auf Trunk gestellt (default vlan1=untagged, vlan2=tagged). Sämtliche Aufgaben übernimmt die OPNsense (DHCP, Routing). Routing ist am Switch disabled.
Alles funktioniert wunderbar. Aber ich habe hier zu viel Zeit und den Anspruch auch IPv6 zum Laufen zu bekommen. Für das administrative LAN (native vlan 1) klappt es auch. Leider nicht für das vlan Gäste WiFi. Am ISP liegt es nicht es nicht. Vom ihm bekomme ich ein /56 Prefix. Ich habe mal Testweise das igb2 Interface an der OPNsense aktiviert. Interface, DHCPv6 und radvd-Einstellungen bis auf „IPv6 Prefix ID“ identisch wie bei igb1 und igb1_vlan2 (Track Interface, Assisted Mode). Wenn ich am igb2 Interface ein Laptop einstöpsele funktioniert alles einschließlich IPv6.
Also, ich bekomme für das Gäste Wifi keine IPv6 Adressen. Ein seltsames Verhalten habe ich noch beobachtet. Nach einiger Zeit im Gäste Wifi sehe ich auf meinem Android-Smartphone doch eine IPv6 Adresse und kurz darauf schmeißt mich das Captive-Portal raus. Wenn ich IPv6 abstelle, kein Problem.
Könntet ihr mir helfen? Was übersehe ich? Noch irgendwelche Einstellungen am Switch? Oder an der OPNsense? Wie bekomme ich IPv6 an der vlan Schnittstelle zum Laufen?
Hoffe, ich habe ausreichend Infos mitgeben können
Vielen Dank schon mal im Voraus.
Niko
lange Zeit war ich stiller Mitleser. Aber jetzt möchte ich euch gerne um Hilfe bitten.
Zunächst mal: Vielen Dank für den vielen und überaus nützlichen Input und ganz besonderen Dank an Kollegen Aqui für die wirklich zeitlosen Tutorials!
Auch habe ich mich -bis auf wenige Ausnahmen- an eure Hardwareempfehlungen gehalten.
Zu meiner Situation. Ich befinde mich seit Juni letzten Jahres in Griechenland. Hier habe ich das Hotel meiner Eltern übernommen. OK, wie überall auf der Welt ein derzeit schwieriges Business zum Geld verdienen.
Hier habe ich eine IT-Infrastruktur aufgebaut inklusive Gäste Wifi über Captive-Portal mit voucher-system.
Die Hardware:
- Speedport Entry 2i im Bridge-mode (nur DSL-Modem).
- APU2E4 (OPNsense).
- Fritzbox 7590 (beschnitten bis auf VoIP und DECT-Station).
- Cisco SG250-10P 10-Port Gigabit PoE Smart Switch.
- Raspberry pi4 (pi-hole, Unifi AP Controller, CUPS, Samba …).
- 1 (bald mehrere) UniFi AP-AC-Pro Access Point.
Aufbau:
ISP (Cosmote, GR) -> OPNSense (igb0=WAN, igb1=LAN) -> Cisco Switch
Switch:
Port 1: OPNsense
Port 2: Raspberry Pi4
Port 3: Fritzbox
Port 6: Unifi AP
Der AP sendet 2 SSID’s. Eine für das administrative LAN und eine weitere (vlan=2 mit parent interface igb1 an der OPNsense) für das Gäste Wifi. Am Switch habe ich die Ports 1,2 und 6 auf Trunk gestellt (default vlan1=untagged, vlan2=tagged). Sämtliche Aufgaben übernimmt die OPNsense (DHCP, Routing). Routing ist am Switch disabled.
Alles funktioniert wunderbar. Aber ich habe hier zu viel Zeit und den Anspruch auch IPv6 zum Laufen zu bekommen. Für das administrative LAN (native vlan 1) klappt es auch. Leider nicht für das vlan Gäste WiFi. Am ISP liegt es nicht es nicht. Vom ihm bekomme ich ein /56 Prefix. Ich habe mal Testweise das igb2 Interface an der OPNsense aktiviert. Interface, DHCPv6 und radvd-Einstellungen bis auf „IPv6 Prefix ID“ identisch wie bei igb1 und igb1_vlan2 (Track Interface, Assisted Mode). Wenn ich am igb2 Interface ein Laptop einstöpsele funktioniert alles einschließlich IPv6.
Also, ich bekomme für das Gäste Wifi keine IPv6 Adressen. Ein seltsames Verhalten habe ich noch beobachtet. Nach einiger Zeit im Gäste Wifi sehe ich auf meinem Android-Smartphone doch eine IPv6 Adresse und kurz darauf schmeißt mich das Captive-Portal raus. Wenn ich IPv6 abstelle, kein Problem.
Könntet ihr mir helfen? Was übersehe ich? Noch irgendwelche Einstellungen am Switch? Oder an der OPNsense? Wie bekomme ich IPv6 an der vlan Schnittstelle zum Laufen?
Hoffe, ich habe ausreichend Infos mitgeben können
Vielen Dank schon mal im Voraus.
Niko
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 640124
Url: https://administrator.de/forum/opnsense-schaffe-es-nicht-ipv6-an-einem-vlan-interface-zum-laufen-zu-bringen-640124.html
Ausgedruckt am: 05.05.2025 um 18:05 Uhr
23 Kommentare
Neuester Kommentar
Der AP sendet 2 SSID’s. Eine für das administrative LAN
Wie gruselig !! Du strahlst im Ernst das administrative LAN also das Management LAN als WLAN SSID aus ?? Nicht dein Ernst oder ? Ein Kardinalsfehler im WLAN Design. Das Management Netz hat logischerweise niemals eine WLAN SSID und sollte aus Gründen die auf der Hand liegen immer nur per Kupfer zugänglich sein. Das solltest du dringenst mal überdenken was du da machst ?!Zurück zum Thema....
Am Switch musst du nichts einstellen, der rennt ja sicher im reinen Layer 2 Mode und für den sind nur Mac Adressen interessant aber nix mit IP.
Dadurch das es an 2 LAN Interfaces funktioniert kannst du ja auch sehen das du generell mit der IPv6 Konfig alles richtig gemacht hast. Im Grunde ist es ganz einfach...den /56er Pool den du per PD vom Provider bekommen hast gibt die Firewall als /64er auf den LAN Interfaces weiter. Ob das VLAN Subinterfaces sind oder physische Interfaces ist dabei völlig Wumpe....jedenfalls bei einer pfSense Firmware.
Gehe einmal startegisch vor um die gruselige Ubiquity Hardware als Fehlerquelle ausschliessen zu können:
Generiere dir einen UNtagged Kupfer Port im Gastnetz VLAN auf dem Switch so das du direkt mit einem Test PC/Laptop an der Firewall hängst.
Dann testest du die IPv6 Adressierung nochmal. Das VLAN Subinterface sollte für IPv6 natürlich identisch so konfiguriert sein wie eins der pysischen Testinterfaces igb1 oder igb2.
Normal sollte der Client dann eine entsprechende v6 IP bekommen.
Die OPNsense Firmware ist in machen Teilen recht buggy und instabiler als ihre pfSense Schwester. Einen Fehler in der Firmware im v6 Verhalten an virtuellen VLAN Interfaces kann man also bei OPNsense nicht vollends ausschliessen. Ggf. solltest du dir alternativ einmal ein separates Flash besorgen und das mit einer pfSense Firmware testen. Hier in D rennt das an einem Telekom Dual Stack mit pfSense und einem VLAN Port mit 3 dort aufliegenden VLAN Interfaces völlig fehlerlos.
Das Laptop bekommt dort auch keine IPv6 Adresse.
Das war zu erwarten, denn der AP arbeitet ja nur als einfache Layer 2 Bridge und hat mit dem IP Forwarding nichts zu tun. Dennoch aber ein wichtiger Test um da ggf. einen Fehler ausschliessen zu können.Habe mittlerweile PFsense auf meine Appliance aufgespielt. PFsense zeigt das gleiche Verhalten wie OPNsense.
Sorry, ist hier nicht nachzuvollziehen. In einem Testaufbau funktioniert das hier absolut fehlerlos an einem Telekom Dual Stack VDSL Anschluss !https://moerbst.wordpress.com/2016/07/31/ipv6mit-pfsense-an-dsl-der-tele ...
Entscheident ist hier die Prefix ID !!!
Diese muss für jedes lokale Interface (dazu zählen natürlich auch VLAN IP Interfaces !) einzigartig sein und musst du pro lokalem Interface hochzählen.
Sprich solltest du beispielsweise eine zusätzliche Netzwerkschnittstelle als VLAN 10, VLAN 20 usw. einsetzen, übernimmst bis auf die IPv6 Prefix ID alle Einstellungen für diese Interfaces genauso, außer bei der IPv6 Prefix ID wo du hochzählen musst: VLAN 10 ist dann IPv6 Prefix ID 1 , VLAN 20 dann IPv6 Prefix ID 2 etc..
Sehr wahrscheinlch hast du das nicht beachtet ?!
Das ist aber wichtig weil nur mit der unterschiedlichen ID die Firewall in der Lage ist den PD Pool entsprechend pro ID als /64er an die lokalen Interfaces zu vergeben.
Die IPv6 Konfig mit der pfSense an allen Dual Stack Anschlüssen klappt damit generell fehlerlos.
sollte es demzufolge am ISP hier liegen?!
Nein, ganz sicher nicht, denn die kochen auch nur mit normalem IPv6 Wasser wie es weltweit überall gleich ist. Wichtig und zwingend ist natürlich das dein Provider dir immer per Prefix Delegationen einen größeren Pool überträgt z.B. /56 usw.Wenn die dir nur ein /64er übergeben kannst du genau ein einziges lokales v6 Segment betreiben. Aber wie du selber sagst ist das ja nicht der Fall.
Mmmhhh...das sieht doch aber alles sehr gut und richtig aus !!
Die lokalen Interfaces haben doch allesamt eine korrekt v6 IP bekommen und auch vom Log her sieht das alles sauber aus ?!
Normal müsste ein Endgerät doch in den lokalen Segmenten entweder per SLAAC oder DHCPv6 eine v6 IP bekommen. Unverständlich....
Da wirst du nicht umhinkommen einmal den Wireshark Sniffer auf deinem Test PC anzuschmeissen in einem der lokalen VLAN Segmente und dir den v6 Traffic mal anzusehen WAS da genau schiefläuft bei der Adressvergabe. In den Capture Filter gibst du dann ip6 an so das du nur IPv6 relevanten Traffic siehst.
Es wäre sehr hilfreich wenn du den Trace dann hier einmal posten könntest.
Welche Mechanismen da ablaufen bzw. ablaufen müssen erklärt dieses kostenlose Tutorial recht gut:
https://danrl.com/writing/ipv6-workshop/
Die lokalen Interfaces haben doch allesamt eine korrekt v6 IP bekommen und auch vom Log her sieht das alles sauber aus ?!
Normal müsste ein Endgerät doch in den lokalen Segmenten entweder per SLAAC oder DHCPv6 eine v6 IP bekommen. Unverständlich....
Da wirst du nicht umhinkommen einmal den Wireshark Sniffer auf deinem Test PC anzuschmeissen in einem der lokalen VLAN Segmente und dir den v6 Traffic mal anzusehen WAS da genau schiefläuft bei der Adressvergabe. In den Capture Filter gibst du dann ip6 an so das du nur IPv6 relevanten Traffic siehst.
Es wäre sehr hilfreich wenn du den Trace dann hier einmal posten könntest.
Welche Mechanismen da ablaufen bzw. ablaufen müssen erklärt dieses kostenlose Tutorial recht gut:
https://danrl.com/writing/ipv6-workshop/
verbinde und das sniffen starte, kommen trotz "ip6" Filterung viele Zeilen zusammen
IPv4 dürfte dann aber nicht kommen !Oder du hast fälschlicherweise NICHT den Capture Filter aktiviert sondern nur den Anzeige Filter...ein Unterschied.
Hier findest du Hilfe und Anleitung:
https://www.heise.de/ct/artikel/Fehler-erschnueffeln-221587.html
Es ist schwer das nur als ASCII Text zu erkennen, da man die Mac Adresse des Ubuntus nicht kennt. 
Es passiert aber eine Neigbor Solicitation wie du sehen kannst 2a02:587:6e25:f402:385:3b7b:757:1b45 from 00:0d:b9:57:01:15.
Man müsste nur wissen ob dein Rechner die 00:0d:b9:57:01:15 als Mac Adresse hat.
Was sagt denn ein ifconfig auf der Ubuntu Kiste ?
Checke auf dem Ubuntu auch das dort sicher IPv6 aktiviert ist. In der Datei /etc/sysctl.conf sollten die 2 Zeilen:
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.all.disable_ipv6 = 0
entsprechend gesetzt sein.
Eine klassische Neigbor und Router Solicitation bei v6 sieht so aus:
1.) Cature Filter auf ip6 setzen das du nur IPv6 Traffic snifferst und v4 dir nicht den Wireshark "vollmüllt" !
2.) Hier siehst du die Neigbor Solicitation des Clients (ICMP Typ 135) und dananch gleich die Router Solicitation die der Router dann mit dem RA und Prefix des Global Unicast Netzes sowie DNS IPs beantwortet:
3.) Adressvergabe:
Es passiert aber eine Neigbor Solicitation wie du sehen kannst 2a02:587:6e25:f402:385:3b7b:757:1b45 from 00:0d:b9:57:01:15.
Man müsste nur wissen ob dein Rechner die 00:0d:b9:57:01:15 als Mac Adresse hat.
Was sagt denn ein ifconfig auf der Ubuntu Kiste ?
Checke auf dem Ubuntu auch das dort sicher IPv6 aktiviert ist. In der Datei /etc/sysctl.conf sollten die 2 Zeilen:
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.all.disable_ipv6 = 0
entsprechend gesetzt sein.
Eine klassische Neigbor und Router Solicitation bei v6 sieht so aus:
1.) Cature Filter auf ip6 setzen das du nur IPv6 Traffic snifferst und v4 dir nicht den Wireshark "vollmüllt" !
2.) Hier siehst du die Neigbor Solicitation des Clients (ICMP Typ 135) und dananch gleich die Router Solicitation die der Router dann mit dem RA und Prefix des Global Unicast Netzes sowie DNS IPs beantwortet:
3.) Adressvergabe:
Hast du den DHCPv6 Haken am Interface gesetzt ?
PFsense IPv6 - Was mache ich falsch ?
PFsense IPv6 - Was mache ich falsch ?
Ruf zur Sicherheit nochmal bei deiner technischen Provider Hotline an ob der auch wirklich physische /56er Pools per PD verteilt. Auch hier in D gibt es Provider die das vorgeben, tatsächlich aber nur ein /64 ausgeben.
Nicht das du dir einen Wolf probierst und es liegt doch am Provider. Kläre das also besser wasserdicht bevor wir hier weiter ins Detail gehen.
Kann ja eigentlich jetzt nur daran liegen, den du hast wirklich alles richtig gemacht bis dato.
Nicht das du dir einen Wolf probierst und es liegt doch am Provider. Kläre das also besser wasserdicht bevor wir hier weiter ins Detail gehen.
Kann ja eigentlich jetzt nur daran liegen, den du hast wirklich alles richtig gemacht bis dato.
Nur dieses eine störrische vlan-interface.
Uuuhh böses Faul !Könnte natürlich sein das das v6 Feature für virtuelle VLAN Interfaces einen Bug hat oder schlimmer noch nicht supportet ist auf virtuellen VLAN Interfaces und nur auf physischen Interfaces rennt.
Das müsstest du ggf. mal mit dem 2ten phyischen Port versuchen zu reproduzieren. Wenn die Verteilung des PD Pools über die ID nur auf dem Parent Interface bzw. dem physischen rennt und reproduzierbar nicht auf den virtuellen VLAN Interfaces, dann sieht das ein Fall für den pfSense Bug Report zumindestens aber einmal für einen Thread im (Englisch sprachigen) pfSense Forum um das zu klären.
und mal dort an der Wifi-Schnittstelle gelauscht. Bekomme hier "mehr" Informationen und vergleiche hier die Interfaces.
Was ist denn unterschiedlich in Bezug auf IPv6 an deinem WiFi und Kupfer Interface ?dass sich bei der problematischen Schnittstelle (unten im Screenshot) die Zeile "Solicit XID" mehrfach wiederholt
Das ist richtig.Das zeigt ganz klar das die "andere Seite" nicht antwortet ! Wenn du ein Layer 2 Problem sicher ausschliessen kannst (VLAN IP muss per Ping erreichbar sein !!) ist das einen Fehlfunktion.
Nur mal doof nachgefragt:
Das die virtuellen VLAN Interfaces alle natürlich Firewall üblich jeglichen Traffic im Default blockieren, musst du logischerweise dort natürlich eine entsprechende FW Regel pro VLAN Interface generieren die den lokalen Traffic sowohl für IPv4 als auch IPv6 erlaubt. Hast du das beachtet ?
Ping -6 auf die Schnittstellen IPv6 funktioniert. Alle Schnittstellen einschließlich vlan-Schnittstelle antworten.
Bekommst du denn die Schnittstellen IPs hier aus dem PD Pool oder hast du sie statisch nach eigenem Ermessen gesetzt ?Wenn du sie über den PD Pool bekommst arbeitet ja alles so wie es soll was die Adressverteilung anbetrifft auf den lokalen Interfaces.
Der Rest ist dann nur eine Fehlfunktion von SLAAC oder DHCPv6.
Wenn die Distribuierung der lokalen Interface Adressen sauber funktioniert, kannst du mit dem Wireshark dann einmal die RA Broadcasts mitsniffern und dort die Status Bits aufklappen. Das wäre einmal interessant wie die gesetzt sind !
Nur nochmal zur Sicherheit nachgefragt: Die globalen IPv6 Settings hast du alle gemacht ??
https://docs.opnsense.org/manual/how-tos/ipv6_dsl.html
Vielleicht hilft das noch:
https://blog.friedlandreas.net/2018/12/opnsense-ipv6-hinter-einer-fritzb ...
https://www.thomas-krenn.com/de/wiki/OPNsense_IPv6_deaktivieren
https://blog.veloc1ty.de/2019/05/26/pfsense-opnsense-ipv6-delegation-fri ...
Bei dem Problematischen vlan sehe ich beim sniffen leider kein Router Advertisement (Type 134)
Obwohl dieses Interface eine gültige IPv6 Adresse aus dem PD Pool bezogen hat ??Das ist dann ein Fehler, denn eine Router muss zwingend RAs senden damit die v6 Endgeräte den und auch den Netz Prefix erkennen.
Interessant wäre ob diese fehlenden RA Advertisements rein nur auf den (oder allen) virtuellen VLAN Interfaces fehlen oder generell ?
Du solltest also auf den physischen Interfaces bzw. den Parent Interfaces (untagged Physik) zu den VLAN Interfaces einmal checken ob dort die RAs kommen. Das wäre hilfreich.
Aber Router Solicitation (Type 133) ist zu sehen.
Die kommt ja immer von den Clients ! Darauf antwortet der Router dann mit einem RA.Wenn die RAs nur auf den physischen Interfaces kommen und da die v6 Connectivity klappt, aber nicht auf den virtuellen VLAN Interfaces bei sonst gleicher Interface Konfig ist das wohl ein Bug oder eine Fehlkonfig.
Da es an einem Comcast IPv6 Netz fehlerfrei mit 16 VLAN Interfaces rennt:
https://blog.barclayhowe.com/16-ipv6-subnets-pfsense-and-comcast/
und das schon seit 3 Jahren muss man wohl doch eher von einer Fehlkonfig ausgehen.
Es liegt am captive portal.
Ohh man.... Das hättest du aber auch gleich sagen können als uns hier so ins Messer laufen zu lassen ! https://forum.netgate.com/topic/134389/ipv6-with-captive-portal/2
Na ja...wenigstens hast du den bösen Buhmann nun identifiziert !
Beim nächsten Mal also vorher nachdenken um solche Fauxpas' zu vermeiden.
nochmals ein riesengroßes Dankeschön
Immer gerne ! 🙂