OPNsense Forum

English Forums => 25.1, 25.4 Production Series => Topic started by: cykotix on June 02, 2025, 09:48:59 PM

Title: dhcp6c not starting on WAN
Post by: cykotix on June 02, 2025, 09:48:59 PM
OPNsense version: 25.1.7_4

I recently migrated between hardware.  I downloaded a backup of my configuration, edited the interfaces to match the new hardware and restored that configuration.  The whole process was smooth and painless.  The only issue I'm having is that I cannot get dhcp6c to run automatically to pull my prefix and set my vlan interface IPv6s.

I've confirmed both in the XML & GUI the following options:

My other interfaces track WAN with different Optional Prefix IDs.  I verified that this created /var/etc/dhcp6c.conf & /var/etc/dhcp6c_wan.conf.  Both files are identical and contain:

interface cxl0 {
  send ia-pd 0; # request prefix delegation
  request domain-name-servers;
  request domain-name;
  script "/var/etc/dhcp6c_wan_script.sh"; # we'd like some nameservers please
};
id-assoc pd 0 {
  prefix ::/56 infinity;
  prefix-interface vlan065 {
    sla-id 101;
    sla-len 8;
    ifid 1;
  };
  prefix-interface vlan099 {
    sla-id 255;
    sla-len 8;
    ifid 1;
  };
  prefix-interface vlan010 {
    sla-id 16;
    sla-len 8;
    ifid 1;
  };
  prefix-interface cxl1 {
    sla-id 0;
    sla-len 8;
    ifid 1;
  };
};

I've tried toggling WAN's IPv6 Configuration Type back and forth from DHCPv6 and None just to see if that would help reset the file(s) with no success.  Regardless of what I do, dhcp6c never runs on it's own.  Grepping /var/log/system/latest.log has no mention of dhcp6c and no errors I can find, basically acting as if it's simply disabled.  I do not run DNS/DHCP locally in OPNSense.  That's all offloaded to another machine.

# ps auxww | grep dhcp
_dhcp  48823   0.0  0.0  14080  2828  -  ICs  14:47      0:00.00 dhclient: cxl0 (dhclient)
_dhcp  65735   0.0  0.0  13668  2388  -  I    10:21      0:00.04 /usr/local/sbin/dhcrelay -d -or -i cxl1 192.168.5.7
_dhcp  66892   0.0  0.0  13668  2388  -  I    10:21      0:00.00 /usr/local/sbin/dhcrelay -d -or -i vlan010 192.168.5.7
_dhcp  67855   0.0  0.0  13668  2380  -  I    10:21      0:00.00 /usr/local/sbin/dhcrelay -d -or -i vlan02 192.168.5.7
_dhcp  69203   0.0  0.0  13668  2380  -  I    10:21      0:00.00 /usr/local/sbin/dhcrelay -d -or -i vlan065 192.168.5.7
_dhcp  69589   0.0  0.0  13668  2384  -  I    10:21      0:00.00 /usr/local/sbin/dhcrelay -d -or -i vlan099 192.168.5.7
root   21183   0.0  0.0  13744  2400  0  S+   15:30      0:00.00 grep dhcp

If I manually run dhcp6c -D -f -c /var/etc/dhcp6c.conf -p /var/run/dhcp6c.pid it executes successfully and everything works as expected.  Each interface successfully gets an IP on the correct prefix ID and everything routes as expected.  So I've traced the issue to the fact that dhcp6c is not being called to run despite DHCPv6 being set on WAN.  I've also confirmed that the only time any mention of dhcp6c appears is when I manually execute it.  My fix is to just run dhcp6c -c /var/etc/dhcp6c.conf -p /var/run/dhcp6c.pid after a reboot but I'd like to solve why it isn't doing it on its own.

Any feedback on what to check would be greatly appreciated.  Thanks!
Title: Re: dhcp6c not starting on WAN
Post by: cykotix on June 02, 2025, 10:04:39 PM
To add just a bit more information, here is the output from /var/log/system/latest.log after WAN is refreshed. 

<13>1 2025-06-02T15:50:20-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="3"] /interfaces.php: plugins_configure dhcp (,inet6,[opt4,opt5,opt2,lan])
<13>1 2025-06-02T15:50:20-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="4"] /interfaces.php: plugins_configure dhcp (execute task : dhcpd_dhcp_configure(,inet6,[opt4,opt5,opt2,lan]))
<13>1 2025-06-02T15:50:20-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="5"] /interfaces.php: plugins_configure dhcp (execute task : radvd_configure_dhcp(,inet6,[opt4,opt5,opt2,lan]))
<27>1 2025-06-02T15:50:20-04:00 xx.yy.com dhclient 45875 - [meta sequenceId="6"] connection closed
<26>1 2025-06-02T15:50:20-04:00 xx.yy.com dhclient 45875 - [meta sequenceId="7"] exiting.
<13>1 2025-06-02T15:50:20-04:00 xx.yy.com dhclient 60404 - [meta sequenceId="8"] dhclient-script: Reason PREINIT on cxl0 executing
<13>1 2025-06-02T15:50:20-04:00 xx.yy.com dhclient 60880 - [meta sequenceId="9"] dhclient-script: Reason REBOOT on cxl0 executing
<13>1 2025-06-02T15:50:20-04:00 xx.yy.com dhclient 61087 - [meta sequenceId="10"] dhclient-script: New Hostname (cxl0): wall
<13>1 2025-06-02T15:50:20-04:00 xx.yy.com dhclient 61459 - [meta sequenceId="11"] dhclient-script: New IP Address (cxl0): 111.222.333.182
<13>1 2025-06-02T15:50:20-04:00 xx.yy.com dhclient 61735 - [meta sequenceId="12"] dhclient-script: New Subnet Mask (cxl0): 255.255.248.0
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com dhclient 61944 - [meta sequenceId="13"] dhclient-script: New Broadcast Address (cxl0): 111.222.333.255
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com dhclient 62210 - [meta sequenceId="14"] dhclient-script: New Routers (cxl0): 111.222.333.1
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com dhclient 62808 - [meta sequenceId="15"] dhclient-script: Creating resolv.conf
<28>1 2025-06-02T15:50:21-04:00 xx.yy.com rtsold 63960 - [meta sequenceId="16"] <autoifprobe> probing cxl0
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="17"] /interfaces.php: ROUTING: entering configure using wan
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="18"] /interfaces.php: ROUTING: configuring inet default gateway on wan
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="19"] /interfaces.php: ROUTING: setting inet default route to 111.222.333.1
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="20"] /interfaces.php: plugins_configure monitor (,[WAN_1_DHCP,WAN_DHCP6])
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="21"] /interfaces.php: plugins_configure monitor (execute task : dpinger_configure_do(,[WAN_1_DHCP,WAN_DHCP6]))
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="22"] /interfaces.php: plugins_configure ipsec (,wan)
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="23"] /interfaces.php: plugins_configure ipsec (execute task : ipsec_configure_do(,wan))
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="24"] /interfaces.php: plugins_configure dhcp ()
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="25"] /interfaces.php: plugins_configure dhcp (execute task : dhcpd_dhcp_configure())
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="26"] /interfaces.php: plugins_configure dhcp (execute task : radvd_configure_dhcp())
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="27"] /interfaces.php: plugins_configure dns ()
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="28"] /interfaces.php: plugins_configure dns (execute task : dnsmasq_configure_do())
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="29"] /interfaces.php: plugins_configure dns (execute task : unbound_configure_do())
<11>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="30"] /interfaces.php: The command '/bin/kill -'TERM' '54273''(pid:/var/run/unbound.pid)  returned exit code '1', the output was 'kill: 54273: No such process'
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="31"] /interfaces.php: plugins_configure newwanip:rfc2136 (,[wan])
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="32"] /interfaces.php: ROUTING: entering configure using wan
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="33"] /interfaces.php: ROUTING: configuring inet default gateway on wan
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="34"] /interfaces.php: ROUTING: keeping inet default route to 111.222.333.1
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="35"] /interfaces.php: plugins_configure monitor (,[WAN_1_DHCP,WAN_DHCP6])
<13>1 2025-06-02T15:50:21-04:00 xx.yy.com opnsense 46996 - [meta sequenceId="36"] /interfaces.php: plugins_configure monitor (execute task : dpinger_configure_do(,[WAN_1_DHCP,WAN_DHCP6]))
<13>1 2025-06-02T15:50:23-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="37"] /usr/local/etc/rc.newwanip: IP renewal starting (new: 111.222.333.182, old: 111.222.333.182, interface: wan, device: cxl0, force: yes)
<13>1 2025-06-02T15:50:23-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="38"] /usr/local/etc/rc.newwanip: ROUTING: entering configure using wan
<13>1 2025-06-02T15:50:23-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="39"] /usr/local/etc/rc.newwanip: ROUTING: configuring inet default gateway on wan
<13>1 2025-06-02T15:50:23-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="40"] /usr/local/etc/rc.newwanip: ROUTING: keeping inet default route to 111.222.333.1
<13>1 2025-06-02T15:50:23-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="41"] /usr/local/etc/rc.newwanip: plugins_configure monitor (,[WAN_1_DHCP])
<13>1 2025-06-02T15:50:23-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="42"] /usr/local/etc/rc.newwanip: plugins_configure monitor (execute task : dpinger_configure_do(,[WAN_1_DHCP]))
<13>1 2025-06-02T15:50:24-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="43"] /usr/local/etc/rc.newwanip: plugins_configure vpn (,[wan],inet)
<13>1 2025-06-02T15:50:24-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="44"] /usr/local/etc/rc.newwanip: plugins_configure vpn (execute task : ipsec_configure_do(,[wan]))
<13>1 2025-06-02T15:50:24-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="45"] /usr/local/etc/rc.newwanip: plugins_configure vpn (execute task : openvpn_configure_do(,[wan]))
<13>1 2025-06-02T15:50:24-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="46"] /usr/local/etc/rc.newwanip: plugins_configure vpn (execute task : wireguard_configure_do())
<13>1 2025-06-02T15:50:24-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="47"] /usr/local/etc/rc.newwanip: plugins_configure newwanip (,[wan],inet)
<13>1 2025-06-02T15:50:24-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="48"] /usr/local/etc/rc.newwanip: plugins_configure newwanip (execute task : dhcrelay_configure_if(,[wan],inet))
<13>1 2025-06-02T15:50:24-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="49"] /usr/local/etc/rc.newwanip: plugins_configure newwanip (execute task : miniupnpd_configure_do())
<13>1 2025-06-02T15:50:25-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="50"] /usr/local/etc/rc.newwanip: miniupnpd: Starting service on interface: opt3, lan, opt4
<13>1 2025-06-02T15:50:25-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="51"] /usr/local/etc/rc.newwanip: plugins_configure newwanip (execute task : ntpd_configure_do())
<13>1 2025-06-02T15:50:25-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="52"] /usr/local/etc/rc.newwanip: plugins_configure newwanip (execute task : opendns_configure_do())
<13>1 2025-06-02T15:50:25-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="53"] /usr/local/etc/rc.newwanip: plugins_configure newwanip (execute task : openssh_configure_do(,[wan]))
<13>1 2025-06-02T15:50:25-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="54"] /usr/local/etc/rc.newwanip: plugins_configure newwanip (execute task : unbound_configure_do(,[wan]))
<11>1 2025-06-02T15:50:25-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="55"] /usr/local/etc/rc.newwanip: The command '/bin/kill -'TERM' '54273''(pid:/var/run/unbound.pid)  returned exit code '1', the output was 'kill: 54273: No such process'
<13>1 2025-06-02T15:50:25-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="56"] /usr/local/etc/rc.newwanip: plugins_configure newwanip (execute task : vxlan_configure_do())
<13>1 2025-06-02T15:50:25-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="57"] /usr/local/etc/rc.newwanip: plugins_configure newwanip (execute task : webgui_configure_do(,[wan]))
<13>1 2025-06-02T15:50:25-04:00 xx.yy.com opnsense 63175 - [meta sequenceId="58"] /usr/local/etc/rc.newwanip: plugins_configure newwanip (execute task : wireguard_sync())

And in another terminal if I run dhcp6c -D -f -c /var/etc/dhcp6c.conf -p /var/run/dhcp6c.pid I get the following additional output:

<13>1 2025-06-02T16:01:29-04:00 xx.yy.com dhcp6c 44826 - [meta sequenceId="1"] dhcp6c_script: REQUEST on cxl0 executing
<13>1 2025-06-02T16:01:29-04:00 xx.yy.com dhcp6c 45577 - [meta sequenceId="2"] dhcp6c_script: REQUEST on cxl0 renewal
<13>1 2025-06-02T16:01:34-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="3"] /usr/local/etc/rc.newwanipv6: IP renewal starting (address: fe80::207:43ff:fe32:1860%cxl0, interface: wan, device: cxl0)
<13>1 2025-06-02T16:01:35-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="4"] /usr/local/etc/rc.newwanipv6: plugins_configure dhcp (,inet6)
<13>1 2025-06-02T16:01:35-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="5"] /usr/local/etc/rc.newwanipv6: plugins_configure dhcp (execute task : dhcpd_dhcp_configure(,inet6))
<13>1 2025-06-02T16:01:35-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="6"] /usr/local/etc/rc.newwanipv6: plugins_configure dhcp (execute task : radvd_configure_dhcp(,inet6))
<13>1 2025-06-02T16:01:35-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="7"] /usr/local/etc/rc.newwanipv6: ROUTING: entering configure using wan, opt4, opt5, opt2, lan
<13>1 2025-06-02T16:01:35-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="8"] /usr/local/etc/rc.newwanipv6: plugins_configure monitor (,[WAN_DHCP6])
<13>1 2025-06-02T16:01:35-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="9"] /usr/local/etc/rc.newwanipv6: plugins_configure monitor (execute task : dpinger_configure_do(,[WAN_DHCP6]))
<13>1 2025-06-02T16:01:35-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="10"] /usr/local/etc/rc.newwanipv6: plugins_configure vpn (,[wan,opt4,opt5,opt2,lan],inet6)
<13>1 2025-06-02T16:01:35-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="11"] /usr/local/etc/rc.newwanipv6: plugins_configure vpn (execute task : ipsec_configure_do(,[wan,opt4,opt5,opt2,lan]))
<13>1 2025-06-02T16:01:35-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="12"] /usr/local/etc/rc.newwanipv6: plugins_configure vpn (execute task : openvpn_configure_do(,[wan,opt4,opt5,opt2,lan]))
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="13"] /usr/local/etc/rc.newwanipv6: plugins_configure vpn (execute task : wireguard_configure_do())
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="14"] /usr/local/etc/rc.newwanipv6: plugins_configure newwanip (,[wan,opt4,opt5,opt2,lan],inet6)
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="15"] /usr/local/etc/rc.newwanipv6: plugins_configure newwanip (execute task : dhcrelay_configure_if(,[wan,opt4,opt5,opt2,lan],inet6))
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="16"] /usr/local/etc/rc.newwanipv6: plugins_configure newwanip (execute task : miniupnpd_configure_do())
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="17"] /usr/local/etc/rc.newwanipv6: miniupnpd: Starting service on interface: opt3, lan, opt4
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="18"] /usr/local/etc/rc.newwanipv6: plugins_configure newwanip (execute task : ntpd_configure_do())
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="19"] /usr/local/etc/rc.newwanipv6: plugins_configure newwanip (execute task : opendns_configure_do())
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="20"] /usr/local/etc/rc.newwanipv6: plugins_configure newwanip (execute task : openssh_configure_do(,[wan,opt4,opt5,opt2,lan]))
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="21"] /usr/local/etc/rc.newwanipv6: plugins_configure newwanip (execute task : unbound_configure_do(,[wan,opt4,opt5,opt2,lan]))
<11>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="22"] /usr/local/etc/rc.newwanipv6: The command '/bin/kill -'TERM' '54273''(pid:/var/run/unbound.pid)  returned exit code '1', the output was 'kill: 54273: No such process'
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="23"] /usr/local/etc/rc.newwanipv6: plugins_configure newwanip (execute task : vxlan_configure_do())
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="24"] /usr/local/etc/rc.newwanipv6: plugins_configure newwanip (execute task : webgui_configure_do(,[wan,opt4,opt5,opt2,lan]))
<13>1 2025-06-02T16:01:36-04:00 xx.yy.com opnsense 45692 - [meta sequenceId="25"] /usr/local/etc/rc.newwanipv6: plugins_configure newwanip (execute task : wireguard_sync())
Title: Re: dhcp6c not starting on WAN
Post by: JavierĀ® on June 04, 2025, 08:50:38 PM
Hi, interface cxl0 it is not configured in id-assoc pd 0
Title: Re: dhcp6c not starting on WAN
Post by: cykotix on June 05, 2025, 04:55:28 PM
Thanks for responding.  I don't think it's supposed to be there since cxl0 is my WAN and only responsible for requesting the prefix.  Also just to reinforce, IPv6 works fine if I manually run dhcp6c using this configuration.  My issue is that OPNsense isn't starting dhcp6c on it's own.
Title: Re: dhcp6c not starting on WAN
Post by: Ben S on June 05, 2025, 05:55:50 PM
I'm not 100% sure of the logic but I think dhcp6c may only run if an IPv6 router advertisement is received on the WAN interface, perhaps worth checking (e.g. with tcpdump) if you're seeing those.
Title: Re: dhcp6c not starting on WAN
Post by: JavierĀ® on June 05, 2025, 06:15:43 PM
Hi, it's worth a try, I only have two interfaces and it looks like this. It works very well for me.


interface igc1 {
  send ia-pd 0; # request prefix delegation
  request domain-name-servers;
  request domain-name;
  script "/var/etc/dhcp6c_wan_script.sh"; # we'd like some nameservers please
};
id-assoc pd 0 {
  prefix-interface igc1 {
    sla-id 177;
    sla-len 8;
    ifid 273312202386047166;
  };
  prefix-interface igc0 {
    sla-id 178;
    sla-len 8;
    ifid 273312202386047166;
  };
};


igc0: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
        description: LAN (lan)
        options=4e0272b<RXCSUM,TXCSUM,VLAN_MTU,JUMBO_MTU,TSO4,TSO6,LRO,WOL_MAGIC,RXCSUM_IPV6,TXCSUM_IPV6,HWSTATS,MEXTPG>
        ether xx:xx:xx:xx:xx:xx
        inet 10.154.96.129 netmask 0xffffff80 broadcast 10.154.96.255
        inet6 fe80::2e0:4dff:fe02:cdb2%igc0 prefixlen 64 scopeid 0x1
        inet6 2a01:cc00:cf00:6eb2:3cb::be prefixlen 64
        media: Ethernet autoselect (1000baseT <full-duplex>)
        status: active
        nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
igc1: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
        description: WAN (wan)
        options=4e0272b<RXCSUM,TXCSUM,VLAN_MTU,JUMBO_MTU,TSO4,TSO6,LRO,WOL_MAGIC,RXCSUM_IPV6,TXCSUM_IPV6,HWSTATS,MEXTPG>
        ether xx:xx:xx:xx:xx:xx
        inet 94.107.56.16 netmask 0xfffffe00 broadcast 94.107.57.255
        inet6 fe80::2e0:4dff:fe02:cdb3%igc1 prefixlen 64 scopeid 0x2
        inet6 2a01:cc00:cf00:6eb1:3cb::be prefixlen 64
        media: Ethernet autoselect (1000baseT <full-duplex>)
        status: active
        nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>
Title: Re: dhcp6c not starting on WAN
Post by: cykotix on June 05, 2025, 10:42:37 PM
Quote from: Ben S on June 05, 2025, 05:55:50 PMI'm not 100% sure of the logic but I think dhcp6c may only run if an IPv6 router advertisement is received on the WAN interface, perhaps worth checking (e.g. with tcpdump) if you're seeing those.

Funny you should mention that because when it didn't work at first, that was the first thing I did.  I see zero RA's happening on my WAN.  I contacted my ISP and I was fortunate enough to escalate it up the chain to people and I was told that everything was configured properly on their end.  It was only by happen chance that I manually executed dhcp6c to see if I could force an error to track down that I realized it was actually working.

When I watch tcpdump, specifically for icmp6, before I run dhcp6c, it's completely silent on the interface.  However, when I initiate from dhcp6c, I get an immediate response, all the routing/prefix information comes over and then regular icmp6 packets.

So maybe you're right but since I don't see any RA's from my WAN side, dhcp6c doesn't automatically start.  I guess my solution for now is to just manually start dhcp6c myself.  I thought simply setting DHCPv6 on the WAN interface was enough to start dhcp6c but I guess not?

edit: I do see the RA's, but only after dhcp6c is running.