Öffentlicher IPv6-Suffix ändert sich sporadisch

Started by psychofaktory, April 30, 2026, 01:58:27 PM

Previous topic - Next topic
Quote from: psychofaktory on May 04, 2026, 09:35:40 PMDoch, "Nur Präfix anfordern" ist bei allen genannten Instanzen aktiv. Genau so wie im Screenshot oben ersichtlich.
Wurde ja schon erklärt, dass das eine SLAAC-Adresse ist und mit DHCPv6 nichts zu tun hat.

May 04, 2026, 09:59:31 PM #16 Last Edit: May 04, 2026, 10:13:46 PM by Patrick M. Hausen
Quote from: Bob.Dig on May 04, 2026, 09:53:28 PM
Quote from: psychofaktory on May 04, 2026, 09:35:40 PMDoch, "Nur Präfix anfordern" ist bei allen genannten Instanzen aktiv. Genau so wie im Screenshot oben ersichtlich.
Wurde ja schon erklärt, dass das eine SLAAC-Adresse ist und mit DHCPv6 nichts zu tun hat.

Danke für die Erinnerung. Hast Recht. Genau deshalb wird da ja auch eine EUI-64 rein verwurstet.

Ich denke, meine Code-Analyse stimmt trotzdem. Er nimmt sich "irgendeine" MAC von einem lokalen Interface und nimmt die für pppoe0. Auf manchen Systemen scheint "irgendeine" zumindest deterministisch über Reboots hinweg zu sein, auf manchen nicht so ganz.

Wenn man mit einem festen Prefix bei der DTAG eine stabile Adresse z.B. für Ingress haben will, und es einem irgendwie widerstrebt, dafür nun "LAN address" zu benutzen, dann kann man sich ja eine Adresse auswürfeln und die als VIP mit /128 auf lo0 legen. Einen Firewall-Alias und dann in der Regel auf WAN statt "from * to WAN address" eben "from * to MEIN_ALIAS" und gut ist. Die DTAG routet ja das ganze /56 über den Draht, ohne genauer hin zu gucken.

Letztlich braucht man eine deterministische Adresse ja meist für Ingress. Selbst, wenn man auf einem eigenen VPC irgendwo in einer Cloud z.B. SMTP freischalten will, kann man ja genau so gut das /64 nehmen. Oder IPv4. Also für Egress funktioniert's schon irgendwie, will ich damit sagen.

Muss ich morgen mal ausprobieren. Ich mag so "ist stabil, aber ich weiß nicht weshalb, und ob das so bleibt" Szenarien auch nicht.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Muhahaha!

Jetzt hab ich mal "Request prefix only" aktiviert und ich kriege immer noch eine GUA, mit EUI-64 drin, so weit sind wir ja inzwischen, und ... es ist die MAC vom igc0, über das auch die Session läuft.

Ich mach das mit der /128 auf lo0 ... :-)

Grüße
Patrick
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Und die /var/etc/mpd_wan.conf ist mit und ohne "Request prefix only" vollkommen identisch! WTF?

OK, die Magie passiert in /usr/local/opnsense/scripts/interfaces/ppp-linkup.sh, das seinerseits /usr/local/opnsense/scripts/interfaces/ppp-ipv6.php aufruft.

Letzteres ist überschaubar, ich lass die Copyright-Boilerplate mal weg:

require_once 'config.inc';
require_once 'util.inc';
require_once 'system.inc';
require_once 'interfaces.inc';
require_once 'filter.inc';
require_once 'auth.inc';

if (empty($argv[1]) || empty($argv[2])) {
    exit(1);
}

$interface = convert_real_interface_to_friendly_interface_name($argv[1]);
$family = $argv[2];

if (empty($interface) || ($family != 4 && $family != 6)) {
    exit(1);
}

if (!interface_ppps_bound($interface, $family)) {
    exit(1);
}

switch (is_ipv6_allowed() ? ($config['interfaces'][$interface]['ipaddrv6'] ?? 'none') : 'none') {
    case 'dhcp6':
    case 'slaac':
        interface_dhcpv6_prepare($interface, $config['interfaces'][$interface]);
        interface_dhcpv6_configure($interface, $config['interfaces'][$interface]);
        /* signal this succeeded to avoid triggering a newwanip event right away */
        exit(0);
    default:
        interface_static6_configure($interface, $config['interfaces'][$interface]);
        system_routing_configure(false, $interface, true, 'inet6');
}

exit(1);

Das Flag "Request prefix only" im UI setzt einfach nur in der config.xml:

       <dhcp6prefixonly>1</dhcp6prefixonly>

Ich hab versucht, hinter die Logik zu steigen, muss hier aber abbrechen. Also alles in allem scheint der mpd5 doch deterministisch zu sein, der ist aber für das Aushandeln von IPv6 überhaupt nicht zuständig. Weshalb nicht? mpd5 kann doch IPv4 und IPv6 per PPPoE heißt es in der Doku. Trotzdem macht die OPNsense hier anscheinend alles selbst. Über mehrere PHP- und Shellscripts hinweg, die vom mpd5 getriggert werden.

Wahrscheinlich ist auch das Rätsel der stabilen EUI-64 dann irgendwo dort zu lösen.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Today at 12:14:28 AM #19 Last Edit: Today at 12:16:45 AM by Maurice
"Request prefix only" ist eine Einstellung des DHCPv6-Clients und nicht PPP-spezifisch. Es geht nur darum, ob der dhcp6c auch IA_NA anfragt.
Bei der Telekom ist es völlig egal, ob man diese Option setzt oder nicht, denn per DHCPv6 bekommt man dort ausschließlich ein Präfix (IA_PD), keine Adresse (IA_NA). Für die Konfiguration der WAN-Adresse wird dort wie gesagt SLAAC verwendet.

Deine Analyse scheint dann mein Bauchgefühl zu bestätigen: Bei SLAAC auf PPP-Interfaces ist die für EUI-64 verwendete MAC-Adresse mehr oder weniger zufällig und OPNsense kann daran auch nichts ändern. Das ist natürlich unschön.

mpd5 kümmert sich nur um IPv6CP, nicht um DHCPv6 und Router Solicitation / SLAAC. Das läuft ganz normal über dhcp6c und rtsold.
OPNsense virtual machine images
OPNsense aarch64 firmware repository

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

Ich habe kein SLAAC und mein Provider kann überhaupt nur Prefix Only, deswegen kann ich nur bedingt mitreden.

Bevor @franco die Möglichkeit eingebaut hat, den Präfix auch für das WAN zu nutzen, war die ,,egress MAC" aufgrund des willkürlich gewählten LAN-Interfaces auch zufällig, weil das WAN gar keine GUA bekam.
Intel N100, 4* I226-V, 2* 82559, 16 GByte, 500 GByte NVME, ZTE F6005

1100 down / 450 up, Bufferbloat A+

Quote from: Maurice on Today at 12:14:28 AMDeine Analyse scheint dann mein Bauchgefühl zu bestätigen: Bei SLAAC auf PPP-Interfaces ist die für EUI-64 verwendete MAC-Adresse mehr oder weniger zufällig und OPNsense kann daran auch nichts ändern. Das ist natürlich unschön.

Aber dieser Teil scheint m.E. komplett im Scope von OPNsense zu liegen. Daher denke ich, man könnte die auch konfigurierbar machen.

Ich werde erstmal eine neue GUA auf das lo0 werfen ...
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)