[CALL FOR TESTING] PPPoE restructuring and IPv6 improvements

Started by franco, August 09, 2024, 09:11:31 AM

Previous topic - Next topic
Just updated.

I see no difference in PPP behaviour since unpatched 24.7.3
Still have to do the vlan-jiggle to get PPP to come up, still have to manually start dhcp6, but overall a smooth update.

@HCB thanks, looking at your mail at this very moment. Sorry, it's been too busy.

I use a dynamic IPv4 connection and use 6TO4 for dynamic IPv6. Is it a good idea to test the current patchset, or are there any known issues for this kind of setup?

PPP-type IPv4? 6RD and 6to4 quirks have been ironed out due to previous feedback. I don't expect them to break.

At the moment the only patch to test is the second one, because the first one is in 24.7.4 now:

# opnsense-patch https://github.com/opnsense/core/commit/6592a9a69

At the moment there seems to be a problem with PPP gateway setting in the mpd.conf which needs a hotfix. But it didn't come up in the testing here, possibly because the thread is mostly about PPPoE.


Cheers,
Franco

I have some feedback regarding PPPoE + native IPv6 by DHCP. I noticed that when (I think) ISP forces PPPoE session refresh then OPNSense fails to renew IPv6 DHCP lease. I have static /56  and from my understanding of logs ppp log seems to be ok, but "opnsense", dhcp6c and rtsold, in consequence are not happy. Way around it is to refresh WAN interface configuration. This is not related to recent release. It happened even on 24.7 but it happens very early (I noticed too few occurrences to figure out a pattern)

Aside from that PPPoE rework works great on every release for me.

This is a general issue when the DHCPv6 server forgets the lease or rejects it. Does it not auto-recover after 10-30 minutes? I'm not suggesting that's ok, just trying to get a baseline since I've worked on fixes for dhcp6c regarding this situation.


Cheers,
Franco

Quote from: franco on September 13, 2024, 04:29:53 PM
This is a general issue when the DHCPv6 server forgets the lease or rejects it. Does it not auto-recover after 10-30 minutes? I'm not suggesting that's ok, just trying to get a baseline since I've worked on fixes for dhcp6c regarding this situation.


Cheers,
Franco

Haha, internet is so essential that I was not patient enough to try to see if this fixes itself in up to 30 minutes :D At least when it happened during the day. Come to think of it I don't know if it ever happened during the night and I haven't noticed. I will try to monitor that more closely.

EDIT: Actually I remembered one day waking up to internet being MIA and once I checked the logs and confirmed just now the session refresh >2h earlier and it didn't fix itself until WAN config re-save.

Thanks, we may be missing something in that case. Maybe the interface index shifts for PPPoE or the device is otherwise unavailable because it was recreated but still referencing the old one. For now I made a ticket:

https://github.com/opnsense/dhcp6c/issues/39

Since we had to hotfix 24.7.4 in this area the second patch backport doesn't apply. Here is an updated version:

# opnsense-patch https://github.com/opnsense/core/commit/d24300f9ab


Cheers,
Franco

Since the second patch is in 24.7.5 now I'll unsticky this thread now. Thanks all for the help!


Cheers,
Franco

Hi there, I found this thread going in my problem direction. The Option "Use IPv4 conenctivity" in die dhcpv6 client config was removed a while ago. It took some time for me to notice that. So I'am Stuck on 24.7.9_1 and EVERY Release after that causes my dhcpv6 config to fail and not getting an IPv6 address nor a prefix on my PPPoE WAN Interface.

My Provider seems to need that IPv4 connectivity Hack.

Where can I open up a ticket on opnsense to report that problem? I think my provider won't update his whole infrastructure just for me.

Or does anyone have an idea how to get the function back?

Quote from: dennyo on September 17, 2025, 08:46:31 PMMy Provider seems to need that IPv4 connectivity Hack.

That option is now always on - that's why the checkbox was removed.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

> Or does anyone have an idea how to get the function back?

As Patrick said: it works this way by default now. It should have been this way from the beginning, but that problematic integration was introduced many many years ago.


Cheers,
Franco

OK so then I need some Ideas how to debug my Problem as I have actually the IPv4 Box checked now in 24.7.9_1 but as soon as I go one Patch or Release further (where IPv4 Conenctivity should be the new Default) I do NOT get any IP anymore.

Who can I debug whats changed in behavior?

tl;dr:
using dhcpv6 client config with box checked "use ipv4 connection" in 24.7.9_1
From >24.7.9_1 that should be default, so box was removed. But since then no IPv6 Address is assigned anymore on PPPoE WAN.
question: why? how to debug?

It's a bit ironic because

community/25.1/25.1:o interfaces: remove "Use IPv4 connectivity" setting as it will be set by default

So if 24.7.9 is a breaking point and the setting wasn't removed before 25.1 we may have not been looking at the real issue?

What is not working? IPv4 or IPv6 or both? Have you even tried 25.7.3?


Cheers,
Franco

I put dhcp6c on debug level logging.
Updated to: 24.7.12_4

What I can see is an Permission Error which repeats.

2025-09-22T14:59:20   Notice   dhcp6c   reset a timer on pppoe0, state=SOLICIT, timeo=6, retrans=67758   
2025-09-22T14:59:20   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T14:59:20   Notice   dhcp6c   set IA_PD   
2025-09-22T14:59:20   Notice   dhcp6c   set option request (len 4)   
2025-09-22T14:59:20   Notice   dhcp6c   set elapsed time (len 2)   
2025-09-22T14:59:20   Notice   dhcp6c   set identity association   
2025-09-22T14:59:20   Notice   dhcp6c   set client ID (len 14)   
2025-09-22T14:59:20   Notice   dhcp6c   Sending Solicit   
2025-09-22T14:59:07   Notice   dhcp6c   reset a timer on pppoe0, state=SOLICIT, timeo=6, retrans=67278   
2025-09-22T14:59:07   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T14:59:07   Notice   dhcp6c   set IA_PD   
2025-09-22T14:59:07   Notice   dhcp6c   set option request (len 4)   
2025-09-22T14:59:07   Notice   dhcp6c   set elapsed time (len 2)   
2025-09-22T14:59:07   Notice   dhcp6c   set identity association   
2025-09-22T14:59:07   Notice   dhcp6c   set client ID (len 14)   
2025-09-22T14:59:07   Notice   dhcp6c   Sending Solicit   
2025-09-22T14:58:47   Notice   dhcp6c   reset a timer on pppoe0, state=SOLICIT, timeo=5, retrans=33641   
2025-09-22T14:58:47   Error   dhcp6c   transmit failed: Permission denied

The ppp device seems to get an IPv6 addy:

2025-09-22T14:57:58   Notice   ppp   ppp-linkup: executing on pppoe0 for inet6   
2025-09-22T14:57:58   Informational   ppp   [wan] f45e:23ff:xxx:0480 -> 4688:16ff:xxx:3119   
2025-09-22T14:57:58   Informational   ppp   [wan] IPV6CP: LayerUp   
2025-09-22T14:57:58   Informational   ppp   [wan] IPV6CP: state change Ack-Sent --> Opened   
2025-09-22T14:57:58   Informational   ppp   [wan] IPV6CP: rec'd Configure Ack #1 (Ack-Sent)   
2025-09-22T14:57:58   Informational   ppp   [wan_link0] rec'd unexpected protocol IPv6   
2025-09-22T14:57:58   Informational   ppp   [wan_link0] rec'd unexpected protocol IPv6   
2025-09-22T14:57:58   Informational   ppp   [wan] IFACE: Rename interface ng0 to pppoe0   
2025-09-22T14:57:58   Informational   ppp   [wan] IFACE: Up event   
2025-09-22T14:57:58   Notice   ppp   ppp-linkup: executing on pppoe0 for inet   
2025-09-22T14:57:58   Informational   ppp   [wan] 31.29.34.167 -> 84.46.104.53   
2025-09-22T14:57:58   Informational   ppp   [wan] IPCP: LayerUp   
2025-09-22T14:57:58   Informational   ppp   [wan] IPCP: state change Ack-Sent --> Opened   
2025-09-22T14:57:58   Informational   ppp   [wan] IPADDR 31.29.34.xxx   
2025-09-22T14:57:58   Informational   ppp   [wan] IPCP: rec'd Configure Ack #3 (Ack-Sent)   
2025-09-22T14:57:58   Informational   ppp   [wan] IPADDR 31.29.34.xxx   
2025-09-22T14:57:58   Informational   ppp   [wan] IPCP: SendConfigReq #3   
2025-09-22T14:57:58   Informational   ppp   [wan] 31.29.34.xxx is OK   
2025-09-22T14:57:58   Informational   ppp   [wan] IPADDR 31.29.34.xxx   
2025-09-22T14:57:58   Informational   ppp   [wan] IPCP: rec'd Configure Nak #2 (Ack-Sent)


Interesting, so PPPoE receives IPv6 address but dhcp6c is not able to bind it on interface...

Reinstalling dhcp6c package does not have any effect.


Chatp GPT gave me hint that DUID could be new after upgrade so I checked, but DUID for dhcp6c stays the same.

Show goes on:

2025-09-22T15:43:49   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:43:10   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:41:35   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:41:09   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:40:29   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:40:10   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:39:57   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:39:40   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:39:39   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:39:32   Error   dhcp6c   transmit failed: Permission denied


Update to 25.1:

2025-09-22T15:55:03   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:55:01   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:55:00   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:54:59   Notice   dhcp6c   RTSOLD script - Sending SIGHUP to dhcp6c   
2025-09-22T15:54:53   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:54:49   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:54:47   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:54:46   Error   dhcp6c   transmit failed: Permission denied   
2025-09-22T15:54:45   Notice   dhcp6c   RTSOLD script - Sending SIGHUP to dhcp6c


I noticed that in 25.1 the Point-to-Point Devices Logfile seems to have moved, but I don't where to??