New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[23.7.7] dhcpc6 does not receive dhcp6 advertise from ISP over PPPOE if pf is on #6962
Comments
@spin-lock there is definitely something going on but I'm unsure what it is. nothing really stands out in the release notes but 5cb5541 is the closest it comes to influencing this. Can you try to revert it?
Cheers, |
@fichtner Hi Franco, thanks but I tried the patch and still no dice. |
Thanks, appreciate all the details I can get. Still a bit baffled about this one. |
I can confirm this is exactly happening in my setup as well. |
Details matter, please. |
This what I see in the log
|
That’s just android phones being silly when they can’t get an IPv6 via SLAAC |
ifconfig of the WAN/LAN plus /var/etc/radvd.conf would probably help. |
@fichtner Ok I tried different things over the weekend before finally gave up, destroyed the WAN and recreated from scratch with same settings. It magically started working again (without having to toggle pf). |
@spin-lock weird :) I'm not against that but if you could can you check the configuration history diff to see if maybe the settings are slightly different now? |
I would appreciate that also since I'm still stuck. Will get you the details you asked for |
With the new config, I noticed the internal device name for my PPPOE is changed from "wan" to "opt8". HTH. |
@fichtner I edited the config of working version and changed every occurrence of "opt8" to "wan", reload new config & reboot and dhcp6c was not working again (had to toggle pf to get dhcp6 replies from ISP). I then edited the config again and changed back every "wan" to "opt8", reload & reboot and it was working normally again. I'm not sure what to make out of this, hope this will give you some clue, Franco. HTH. |
Ok, that is expected when redoing the interface as the "lan" and "wan" identifiers are reserved values for the console and factory reset configuration only. Think we should close then.
Funky. Can you make a Cheers, |
Here's the excerpts of diff I picked on pppoe:
I don't see any difference other than labels. |
Ok, I keep going back to "weird" as the word to describe this. I don't have another idea. Maybe states problem? |
I resolved mine, think it was my switch's IGMP snooping causing issues. |
I decided to push my luck, change MTU on WAN and then change it back and lost all IPV6 and can't get it back. Now I'm convinced it's not a switch but opnsense issue. |
Enabled promiscuous mode, then disabled and then removed VLAN priority, rebooted and IPV6 is back. Totally strange. Let me know if there's anything you need to help triage this. |
This issue has been automatically timed-out (after 180 days of inactivity). For more information about the policies for this repository, If someone wants to step up and work on this issue, |
Important notices
Before you add a new report, we ask you kindly to acknowledge the following:
Describe the bug
After upgrade from 23.7.6, I noticed my WAN (PPPOE) doesn't have IPv6 address nor PD for my LAN.
From the log I can see that dhcp6c keep sending dhcp6 solicit without getting answered.
I ran packet capture and confirm that is the case:
[root@router ~]# tcpdump -nn -i pppoe0 port 546 and port 547
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on pppoe0, link-type NULL (BSD loopback), capture size 262144 bytes
03:41:47.451210 IP6 fe80::daff:feed:beef.546 > ff02::1:2.547: dhcp6 solicit
03:41:48.551764 IP6 fe80::daff:feed:beef.546 > ff02::1:2.547: dhcp6 solicit
03:41:50.638706 IP6 fe80::daff:feed:beef.546 > ff02::1:2.547: dhcp6 solicit
03:41:54.622538 IP6 fe80::daff:feed:beef.546 > ff02::1:2.547: dhcp6 solicit
03:42:02.689358 IP6 fe80::daff:feed:beef.546 > ff02::1:2.547: dhcp6 solicit
I checked and tried different things without success, until I tried disabling pf (pfctl -d) and restarted dhcp6c. Oddly enough this time packets are received correctly.
Packet capture output:
listening on pppoe0, link-type NULL (BSD loopback), capture size 262144 bytes
03:43:30.867525 IP6 fe80::daff:feed:beef.546 > ff02::1:2.547: dhcp6 solicit
03:43:30.880805 IP6 fe80::200:5eff:fe00:103.547 > fe80::daff:feed:beef.546: dhcp6 advertise
03:43:30.881094 IP6 fe80::daff:feed:beef.546 > ff02::1:2.547: dhcp6 request
03:43:30.921665 IP6 fe80::200:5eff:fe00:103.547 > fe80::daff:feed:beef.546: dhcp6 reply
dhcp6c output:
...
Oct/27/2023 03:43:30: Sending Solicit
Oct/27/2023 03:43:30: a new XID (7c989a) is generated
Oct/27/2023 03:43:30: set client ID (len 14)
Oct/27/2023 03:43:30: set identity association
Oct/27/2023 03:43:30: set elapsed time (len 2)
Oct/27/2023 03:43:30: set option request (len 4)
Oct/27/2023 03:43:30: set IA_PD prefix
Oct/27/2023 03:43:30: set IA_PD
Oct/27/2023 03:43:30: send solicit to ff02::1:2%pppoe0
Oct/27/2023 03:43:30: reset a timer on pppoe0, state=SOLICIT, timeo=0, retrans=1091
Oct/27/2023 03:43:30: receive advertise from fe80::200:5eff:fe00:103%pppoe0 on pppoe0
Oct/27/2023 03:43:30: get DHCP option client ID, len 14
Oct/27/2023 03:43:30: DUID: 00:01:00:01:2b:bd:54:2a:7c:2b:e1:13:02:0d
Oct/27/2023 03:43:30: get DHCP option server ID, len 16
Oct/27/2023 03:43:30: DUID: fe:80:00:00:00:00:00:00:02:00:5e:ff:fe:00:01:03
...
Oct/27/2023 03:43:30: Received REPLY for REQUEST
Oct/27/2023 03:43:30: nameserver[0] 2404:8000:11:2::4
Oct/27/2023 03:43:30: nameserver[1] 2404:8000:11:3::2
Oct/27/2023 03:43:30: make an IA: PD-0
Oct/27/2023 03:43:30: create a prefix 2404:8000:1001:193d::/64 pltime=172800, vltime=259200
Oct/27/2023 03:43:30: add an address 2404:8000:1001:193d:7e2b:e1ff:fe13:210/64 on igc3
Oct/27/2023 03:43:30: status code for PD-0: success
It looks like something is blocking my ISP receiving dhcp6 solicits when pf is on.
This is very mystifying to me, as this is a straight upgrade from 23.7.6 and not a single config change made after upgrade.
I compared the rules.debug from 23.7.6 and 23.7.7 and found no discrepancy, both have auto-generated rules for DHCP6 in place:
pass in quick on pppoe0 proto udp from {fe80::/10} port {546} to {fe80::/10} port {546} label "8cd6199018ef9eb8a56a803f76d043ba" # allow dhcpv6 client in WAN
pass in quick on pppoe0 proto udp from {any} port {547} to {any} port {546} label "223a20aafe5da09a3dd93ec49dd4a20b" # allow dhcpv6 client in WAN
pass out quick on pppoe0 proto udp from {any} port {546} to {any} port {547} set prio 0 label "edcf3e218111608c15b56710f3080b8b" # allow dhcpv6 client in WAN
I even tried passing any to any IP6 rule without success.
Any idea where to look at? I'm really at a loss here.
Thanks in advance.
The text was updated successfully, but these errors were encountered: