Bei uns funktioniert das auch an Unitymediaanschlüssen, die nur eine genattete IPv4 haben. Bei euch nicht?
Wir werden uns am Mittwoch erstaml die Logik vom l2tp_client.c anschauen. Das Ding ist einfach völliges Chaos und es gibt jede Menge Funktionen, die komische Seiteneffekte haben(z. B. setzt die Funktion is_timeout den Timeout zurück). Deswegen kann man an der Struktur nur schwer was ändern, ohne was kaputt zu machen.
Wir haben jetzt ein notdürftigen Patch, der usage für deutlich mehr Broker ermöglicht, aber zu viele Pakete rumschickt. Sauber ist was anderes.
Für IPV6 müsste man sich mal überlegen, ob man nicht eine kleine Bibliothek nimmt, oder ob man das wirklich alles hart kodiert lassen will.