Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Kju

#1
Quote from: grind on May 08, 2023, 04:13:28 PMEdit: Seems to work :)
Cool, freut mich, dass dir mein Skript weiter geholfen hat. Ich selber nutze es seit ich glaube Oktober nicht mehr, da ich nun wieder bei der Telekom bin und dort alles einfach funktioniert. :)
#2
Hi  :D

1. Du hast IPv4 falsch geschrieben. Diese ganzen Krücken und Hacks die wir tagtäglich nutzen müssen, gehören tatsächlich verboten. Und von den Kosten von IPv4 Adressen will ich gar nicht erst anfangen. Viele meiner Dienste im Internet lasse ich schon auf IPv6 Only laufen. :D
2. Habe ich ein Problem gefixt, was die meisten OPNsense-Nutzer wahrscheinlich gar nicht wirklich wahrnehmen, da sie entweder:
- Kein IPv6 konfiguriert haben
- Einen anständigen ISP haben der keine Zwangstrennungen macht und die Leasetime der Präfixe mehrere Tage beträgt (da muss ich Telekom positiv hervorheben) oder gar feste IPs haben
- Einen ISP haben, der es nicht einmal im Jahre 2022 geschafft hat, IPv6 auszurollen. (Hallo EWE *klick* )
- oder die Trennung i.d.R. Nachts ist und sich alles eh nach einer halben Stunde bis Stunde wieder repariert hat und da alle schalfen.

Ich empfinde ein simples Skript jetzt auch nicht als Gefrickel. Auf der Arbeit schreibe ich täglich Skripte um Dinge zu automatisieren, optimieren oder realisieren, die out of the Box nicht möglich sind.
Und man sollte auch nicht vergessen, dass das Problem nur durch die zwischengeschaltete Fritzbox kommt. Wenn OPNsense nicht wäre, würde die Fritzbox zuverlässig IPv6 Adressen verteilen (bzw die Clients sich welche per SLAAC zuweisen), auch nach einer Zwangstrennung - einfach da das DHCPv6 entfällt. Wenn die Fritzbox nicht wäre und OPNsense hier alleine stehen würde, wäre das vielleicht ebenfalls so.

PS: Bitte nimm Punkt 1 mit etwas Humor. Es ist meine Meinung und die einiger Netzwerker-Kollegen aus der Firma. :)
#3
Danke für euren Input.

Ein Cronjob würde es auf jeden Fall besser machen, aber so richtig gefallen tut es mir immer noch nicht. In der Fritzbox ist eine Zeit für die Zwangstrennung eingetragen (ansonsten wird diese vom ISP nicht immer zur selben Zeit gemacht) und kurz darauf könnte ich per Cronjob natürlich das Interface Reloaden. Dann sollte der IPv6-Ausfall minimal sein. Probleme hab ich jedoch, wenn die Fritzbox rebootet wird, z.B. durch ein Update oder aus anderem Gründen die Verbindung zu anderen Zeiten unterbrochen wird.

Bei mir läuft >40% meines Traffic über v6, weshalb mir die Sache schon recht wichtig ist.

Der Cronjob brachte mich aber auf eine andere Idee:
Ich habe mir ein kleines Shell-Skript geschrieben, welches schaut, ob sich die öffentliche IPv6 auf dem WAN-Interface geändert hat. Wenn dem so ist, wird das Interface neu gestartet. Das ganze läuft als Cron 1x die Minute. In meinen Tests haben meine Clients so immer innerhalb einer Minute eine neue v6 Adresse bekommen.

Statt dem Restart wäre nur ein neues Präfix anfordern natürlich noch besser, aber leider habe ich bisher nicht herausgefunden, wie das über die Shell geht. Ich hatte jetzt auch keine Lust mehr, in den PHP-Skripten zu stöbern. :)

Hier nun einmal mein erste Version von dem Skript:
#!/bin/sh

INT="em0"
FILE="/tmp/oldWanIp"

if [ -f "$FILE" ]; then
    oldIP=`cat "$FILE"`
else
    oldIP=""
fi

newIP=`ifconfig "$INT" | grep -v deprecated | awk '/inet6 2001/{print $2}'`

echo "Old IP: $oldIP"
echo "New IP: $newIP"

if [ "$oldIP" != "$newIP" ]; then
    echo "reload WAN interface"
    /usr/local/sbin/configctl interface linkup stop "$INT"
    /usr/local/sbin/configctl interface reconfigure "$INT"
    /usr/local/sbin/configctl interface linkup start "$INT"
    echo "$newIP" > "$FILE"
fi


Gestern hatte ich noch probiert, ein Legacy Plugin zu schreiben. Ich habe auf das newwan-Event gelauscht. Aber scheinbar wird das Event nicht getriggert, wenn sich das WAN Interface über SLAAC eine neue IPv6 zugewiesen hat. Außerdem habe ich in den PHP-Skripten gesehen, dass wenn "Request only an IPv6 prefix" aktiviert ist, das Event auch nur getriggert wird, wenn sich das Präfix ändert. Also so ein bisschen Henne Ei Problem. :)

Weitere Verbesserungsvorschläge werden gerne entgegen genommen, aber ich hoffe, dass sich meine IPv6 Probleme damit nun endlich weitestgehend erledigt haben. Besser als übers Mikrotik scheint es jetzt schon definitiv zu sein. Kann also gut sein, dass ich mir demnächst eine SFP+-Netzwerkkarte für meinen Server besorgen muss.  ;D ::)
#4
Hallo zusammen,

ich bin noch sehr neu bei OPNsense und teste gerade dessen IPv6 Fähigkeiten für den Heimgebrauch, da mir die kaputte Implementierung bei Mikrotik (zumindest bei dynamischen Präfixen) auf den Senkel geht. Ich hoffe mit OPNsense eine Alternative gefunden zu haben. :)

Leider habe ich aber auch mit OPNsense ein Problem, zu dem ich hier hoffentlich eine Lösung finde. Vielleicht habe ich auch einfach nur irgendwo einen Haken vergessen.

Zu meinem Testaufbau:
- Aktuelle Version OPNsense 22.1
- VM mit zwei virtuellen Interfaces, 1x WAN (VLAN 10 als Access Port), 1x LAN (VLAN aware)
- VM hängt hinter einer Fritzbox, welches die Einwahl macht und IPv6 Präfixe per DHCP6 verteilt
- WAN Interface erhält eine IPv6 Adresse sowie ein delegated prefix /60
- VLAN100 auf LAN-Interface erstellt, konfiguriert als "Track Interface" und sendet Router Advertisements

Das funktioniert alles hervorragend. Meine Geräte in VLAN 100 bekommen eine IPv6 Adresse und IPv6 Traffic funktioniert wunderbar. Nun kommt aber das Aber:
Sobald sich mein vom ISP zugeteiltes IPv6 Präfix ändert, erhält das WAN-Interface innerhalb weniger Sekunden eine neue IPv6 Adresse. Die alte Adresse wird als Deprecated markiert. Leider holt sich OPNsense im Anschluss kein neues Präfix per DHCPv6 (verifiziert via packet capture), sondern erst nach einigen Stunden, wahrscheinlich wenn der Lease ausläuft? Nach der täglichen Zwangstrennung (ja, einige ISPs machen das noch  ::) ) dauerte es die letzten Tage 1,5 Stunden, bis OPNsense sich ein neues gültiges Präfix geholt hat. In der Zeit ist IPv6 kaputt, da mir die IPs vom ISP nicht mehr zugeteilt sind. Sobald OPNsense ein neues Präfix erhalten hat, wird das Netz auf VLAN100 aktualisiert und den Clients mitgeteilt, dass die alte Adresse deprecated ist und diese sich eine neue IPv6 aus dem aktuellen Netz zuweisen dürfen (der Part, der bei Mikrotik nicht anständig funktioniert).

Nun ist die Frage: Wie überrede ich OPNsense dazu, per DHCP6 nach einem neuen Präfix zu fragen, sobald das WAN-Interface eine neue IPv6 erhalten hat? Hab ich eine Einstellung dafür vergessen? Zumindest in meinem Fall bedeutet eine neue WAN-IPv6 auch ein neues IPv6-Präfix. Händisch kann ich das forcieren, indem ich im WAN-Interface bei DHCP auf "reload" klicke.

Ich würde mich freuen, wenn mir jemand bei diesem Problem weiter helfen könnte. :)

Viele Grüße