IPv6 und DHCP Server richtig konfigurieren

Started by simonv, September 28, 2019, 11:49:54 PM

Previous topic - Next topic
Hallo zusammen,

ich habe von meinem hoster ein /64 IPv6 Subnetz bekommen. Ich habe dem WAN und dem LAN interface jeweils eine IPv6 statisch zugewiesen. Somit kann ich beide IPs von extern anpingen.

Jetzt möchte ich den Clients via dem integrierten DHCP Server IPv6 Adressen zuweisen lassen. Dazu habe ich auf dem LAN interface den DHCPv6 Server aktiviert und die entsprechende range aus meinem /64 Netz eingetragen. Die Clients bekommen zwar eine IPv6 Adresse zugewiesen, jedoch wird kein default Gateway gesetzt. Somit kommen die Clients nicht via IPv6 ins Internet. Irgendwo habe ich dann gelesen dass man wohl noch den Router Advertisement einschalten und auf "Managed" setzen soll. "Advertise Default Gateway" ist auch standardmäßig aktiviert. Danach habe ich das lease auf dem Client erneuert. Trotzdem wurde kein Gateway gesetzt. Wenn ich die default route via "ip route" manuell setze dann klappt es auch mit der Verbindung nach außen. Von außen kann ich den Client dann auch problemlos anpingen.

Was mir noch Probleme bereitet ist die statische Adresszuweisung via DHCPv6 Mapping. Trotz korrekt hinterleger DUID bekommen die Clients immer eine andere IP zugewiesen.

Das nächste Problem was ich habe ist dass der DHCP Server Dienst immer wieder mal einfach so abstürzt bzw. gestoppt wird. In den Logfiles unter "Services -> DHCPv4" stehen auch keine Fehler oder ähnliches.
Dadurch hängen dann meine Linux Clients minutenlang beim booten weil der DHCP Server nicht erreichbar ist (wieso systemd beim booten standardmäßig bis zu 6 Minuten auf den DHCP Server wartet und wie man das abschaltet muss ich auch noch herausfinden)

Offensichtlich mache ich etwas grundlegend falsch. Ich hätte nicht gedacht dass das einrichten von IPv6 so ein komplizierter Akt wird. Sitze hier schon seit Stunden dran und komme einfach nicht weiter. Kann mir bitte jemand erklären wie man das ganze korrekt konfiguriert?

Ich habe ein ähnliches Setup, mit ähnlichen Symptomen:
- Gateway fehlt: Soweit ich das verstanden habe, sendet DHCPv6 nie ein Gateway, dieses muss immer über die router advertisements kommen. Wenn ich RADVD auf "Assistiert" setze, funktioniert dies wenigstens mit meinem Ubuntu Laptop (Network Manager). Debian weigert sich bisher.
- Das DUID Problem habe ich ebenfalls, die statischen Zuweisungen scheinen nicht zu funktionieren
- Bei mir stürzt komplett Opnsense ab (nach einigen Stunden Laufzeit), wenn ich eine Prefix Delegation konfiguriert habe, ansonsten läuft es.

Ich habe des Netz schon tot durchsucht, aber irgendwie gibt es keine wirklich zusammenhängende Beschreibung zu IPv6 die funktioniert.
Ich mache das Ganze eigentlich nur, damit ich zum einen Hostnamen über IPv6 in unbound bekomme und um ein lokales Netz zu haben, dass auch bei Ausfall der Internetverbindung funktioniert.
Ideal wäre es, wenn ich regulär stateless globale IPv6s mit Prefix verteilen könnte und parallel per dhcpv6 lokale Adressen. Wie ich das aber in Opnsense konfiguriert bekomme verstehe ich nicht.

Habe meinen IPv6 Test erst mal abgebrochen.

Mein ISP liefert mir ein dynamisches Prefix und mein LAN ist ein "tracking" Interface.

DHCPv6 hatte ich konfiguriert und auch die Router Advertisement aktviert und auf "Managed" gesetzt.

Danach hat sich meine Fritzbox (VOIP Endpunkt) auch die passende IPv6 Adresse gezogen.
Auch ein Windows 10 PC hat sich daran gehalten.

Zumindest die Fritzbox hat mit "assisted" Router Advertisement übrigens lieber selbst ihre IPv6 Adresse generiert.

Letztlich ist es bei mir aber noch einen Schritt danach gescheitert, denn obwohl die FritzBox die passende IPv6 Adresse hat, wurde ihr über den DHCPv6 vergebener DNS Name nicht richtig aufgelöst.

fritzbox.test löste sich zu ::1004 auf  - also ohne prefix.
So sah ich keine Chance mehr VOIP Telefonie zum laufen zu bekommen - konnte ja keine Firewall Regel mit destination fritzbox.test erstellen und die IPv6 Adresse ändert sich mit dem Prefix vom ISP.

Kann auf Wunsch Screenshots der Konfig posten? Vielleicht findet doch einer einen Weg :)


Das mit der Auflösung der Hostnamen habe ich bei mir auch schon gesehen. Er scheint das Prefix nicht voran zu stellen. Bin mir aber nicht sicher, ob es ein Bug oder ein Konfigurationsfehler ist.

Ich habe jetzt auch erst mal abgebrochen irgend etwas anderes als surfen über IPv6 zu betreiben, Opnsense benötigt hier wohl noch etwas Zeit bevor es nutzbar ist. Momentan ist es einfach zu schwierig raus zu bekommen wie eine Konfiguration aussehen müsste, ob diese funktioniert und was Fehler bzw. fehlende Features sind.

@tryhard: Du könntest noch ein komplett statisches Setup mit NAT ausprobieren. Ist zwar finsteres Mittelalter ;-), könnte aber funktionieren.

Mal "kurz" meine Erfahrung zusammengefasst. Evtl. hilft dies jemandem weiter oder er sieht noch Ansatzpunkte:
Ich habe einen Telekom Anschluss mit dynamischem Prefix

WICHTIG: Das folgende sammelt nur meine Erfahrung. Ich weiß nicht ob die Dinge die nicht funktionieren durch Bugs oder falsche Konfigurationen hervorgerufen werden. Da ich keine funktionierende Referenz habe ist dies schwer herauszufinden.

Stateless Setup:
LAN Interface ist auf "Schnittstelle aufzeichnen" gestellt.
Was funktioniert:

  • Clients setzen IPv6 per SLAAC in meinem Prefix Bereich (Getestet mit Debian, Ubuntu und Android)
  • Gateways, Routen und DNS Server werden per RA verteilt
Was nicht funktioniert:

  • Auflösung per Hostname funktioniert in meinem Netz nicht auf IPv6, da ich unbound als forwarder nutze und dieser natürlich keine Ahnung von stateless konfigurierten IPv6s hat. Bind könnte man wohl per dyndns updaten
  • Firewall Regeln für einzelne Hosts sind nicht möglich, da das dynamische Prefix nicht beachtet wird. Kenne die unterliegenden Firewall features nicht, aber bei ip6tables kann man das Prefix einfach wegmaskieren (per ::4:0:0:1/::ffff:ffff:ffff:ffff)

Mixed Setup:
LAN Interface ist auf "Schnittstelle aufzeichnen" gestellt. "Allow manual adjustment of DHCPv6 and Router Advertisements" eingeschaltet und einen DHCPv6 konfiguriert.
Was funktioniert:

  • Clients setzen IPv6 per SLAAC in meinem Prefix Bereich (Getestet mit Debian, Ubuntu und Android)
  • Clients setzen IPv6 per DHCPv6 in meinem Prefix Bereich (Getestet mit Debian, Ubuntu und Android <- extra dhcpv6 client nötig)
  • Clients setzen IPv6 per DHCPv6 und SLAAC gleichzeitig in meinem Prefix Bereich (Getestet mit Ubuntu, Fail auf Debian)
  • Gateways, Routen und DNS Server werden per RA verteilt
Was nicht funktioniert:

  • Statisch vergebene IPv6s werden nicht korrekt verteilt. Es werden immer nur IPv6s aus dem Pool genommen, obwohl die DUID stimmt
  • Einige Clients die per DHCPv6 konfiguriert wurden ignorieren die router advertisements, entsprechend fehlen teilweise die Gateways, Routen, DNS (Wohl ein Endgeräte Problem, bei mir mit Debian. Ubuntu schafft dies Problemlos)
  • Die Hostnamen werden nicht mit den DHCPv6 vergebenen IPv6s in unbound eingetragen. Die dhcpleases.conf enthält zwar einige Einträge zu den link-local IPv6 Adressen, diese funktionieren jedoch nicht in der Auflösung
  • Firewall Regeln für einzelne Hosts sind nicht möglich, s.o.

Reines DHCPv6 oder statisches Setup mit NAT
LAN Interface auf "Statisches IPv6" eingestellt und dann DHCPv6 aktiviert oder statische Konfiguration der Clients. Router advertisements abgeschaltet
noch nicht getestet

Zusatz: Wenn ich eine Prefix Delegation einstelle (z.B. um ein Prefix für Docker bereit zu stellen) ist nach einigen Stunden Opnsense nicht mehr erreichbar. Bei mir hat dann nur noch ein Reset geholfen.

Eure Probleme mit IPv6 hören sich ja gar nicht gut an. Ich hatte gehofft es liegt an mir und dass man mir hier im Forum mal eben "kurz" helfen kann. Das witzige ist ja IPv6 wird von opnSense und auch pfSense seit Jahren unterstützt. Auf meiner Suche nach Lösungen bin ich auf Beiträge aus dem Jahr 2011 gestoßen... kann doch nicht sein dass die IPv6 Unterstützung bis heute so Fehlerhaft ist? Ich vermute mal das liegt hauptsächlich daran dass kaum jemand IPv6 aktiv nutzt, und somit viele Probleme/Fehler in den unterschiedlichsten Konfigurationen nicht auffallen.

Ich habe jetzt erst mal den Clients eine feste IPv6 zugewiesen und via ifupdown den default Gateway gesetzt. Eine automatische Adresszuweisung und registrierung im Ubound wäre aber natürlich viel besser...

Ich bin auch immer wieder schockiert was seit der Spezifikation von IPv6 vor 20 Jahren noch alles nicht funktioniert.
Bei Opnsense ist es hauptsächlich das dynamische Prefix und die Namensauflösung die Probleme macht. Ich kann verstehen, dass dies kein industrieller Fall ist, hätte mir da aber trotzdem etwas früher Aufmerksamkeit gewünscht. Soweit ich weiß ist zumindest das Prefix mittelfristig auf der Roadmap.

Teilweise wird es aber komplett lächerlich: Bei AWS z.B. bekommst ein fixes Prefix, kannst das aber nicht weiter delegieren und nur ein paar IPv6s auf die Interfaces legen (so zwischen 2-50, je nach VPC Größe). Wenn da ein Docker Setup hast, musst direkt ins NAT. Docker sagt dann mal: Ach NAT braucht man doch bei IPv6 nicht... Schon bastelt man wieder...

So, genug gemeckert... :-D Wenn jemand ein lauffähiges/nutzbares Setup hat, würde mich das sehr interessieren.

Also ich habe so ein popeligen Telekom VDSL mit /56 prefix und läuft und funktioniert.
Kann da jetzt nicht klagen.
Habe auch mehrere Dual-Stack OPNsensen am laufen mit statischen Netzen, auch kein Problem.
Sogar OPNsenes mit BGP IPv4 und IPv6 läuft super.
Meiner Erfahrung nach, ist es eher nicht so ganz einfach rauszubekommen welcher Provider IPv6 wie handhabt.
Twitter: banym
Mastodon: banym@bsd.network
Blog: https://www.banym.de

@banyam
Hast Du ein DHCPv6 und/oder Server in Deinem Netz mit dynamischem Prefix laufen?

> mit BGP  ;D ! 

Für ein HA Multi WAN Setup ? Mit welchem Provider denn, wenn ich fragen darf?


Habe zu Hause eine pfSense mit der klappt es mit dem dynamischen Prefix. Wobei Firewall Regeln hier auch nur über den Umweg der DNS Auflösung funktionieren.
Will man also einen Dienst auf einer IPv6 Adresse mit dynamischen Prefix betreiben, muss der DNS Name für die pfSense auflösbar sein. Dann kann man über einen Alias eine Firewall Regel erstellen.

Bei opnSense ginge dies auch wenn die DNS Auflösung der statischen DHCPv6 mappings funktionieren würde.

Eine echte Lösung ist mit Issues 2544 ja geplant. Darauf werde ich warten und dann versuche ich es erneut.
https://github.com/opnsense/core/issues/2544





Quote from: chris42 on September 30, 2019, 11:16:36 PM
@banyam
Hast Du ein DHCPv6 und/oder Server in Deinem Netz mit dynamischem Prefix laufen?

In dem Netz mit dynamischen Prefix hab ich keinen Server. Nutze nur IPv6 von intern nach extern auch kein NAT.

In den Netzen mit eigenen Netzbereichen, stehen Server allerdings auch mit statischen Adressen.

Quote from: tryhard on October 01, 2019, 11:01:28 AM
Für ein HA Multi WAN Setup ? Mit welchem Provider denn, wenn ich fragen darf?

@tryhard klar kannst gern fragen. MNET, Vodafone und Telekom. Kann über keinen was negatives sagen.
Twitter: banym
Mastodon: banym@bsd.network
Blog: https://www.banym.de

Gibt es für diese Probleme mittlerweile eine Lösung?

@Simaryp
steht für das nächste Release im Juli auf der Roadmap:
https://opnsense.org/about/road-map/

Im Github wird dazu auch schon fleißig gewerkelt.

Hallo zusammen,
sehe ich es richtig, dass es nun mit der Version 21.7 funktionieren sollte?
Hat es schon einer ausprobiert? :)

Hallo zusammen,

das würde mich auch interessieren.

Ich habe bei mir IPv6 aktiviert und bekomme auch das Standard-Prefix der Telekom. Das wird im Interface weitergegeben (01.png). Ich bekomme auch IPv6-Adressen im Netzwerk verteilt (02.png). Selbst wenn ich mich neu einwähle und einen neuen Provider-Teil bekomme, wird der ordentlich an die Server im Netzwerk vergeben.

In den DHCPv6-Leases steht allerdings nur ein Lease drin  :o (03.png).

Meine DHCPV6-Config sieht so aus: siehe 04.png

Oder läuft das bei mir fehlerhafterweise per SLAAC, weil keine Leases eingetragen sind?

Danke
Ulf