I'm sorry to reopen this bug, but a bug report I replied in T421 has now been re generated. I have inquired the relevant service file and found that the file has been passive, and an invalid setting has been generated. The content of file /lib/systemd/system/[email protected] is as follows:
[Unit] Description=WIDE DHCPv6 client on %i Documentation=man:dhcp6c(8) man:dhcp6c.conf(5) ConditionPathExists=/run/dhcp6c/dhcp6c.%i.conf After=vyos-router.service StartLimitIntervalSec=0 [Service] WorkingDirectory=/run/dhcp6c Type=forking PIDFile=/run/dhcp6c/dhcp6c.%i.pid ExecStart=/usr/sbin/dhcp6c -D -k /run/dhcp6c/dhcp6c.%i.sock -c /run/dhcp6c/dhcp6c.%i.conf -p /run/dhcp6c/dhcp6c.%i.pid %i Restart=on-failure RestartSec=20 [Install] WantedBy=multi-user.target
It appears that the following settings exist for automatic recovery:
StartLimitIntervalSec=0 Restart=on-failure RestartSec=20
But the directive:
StartLimitIntervalSec=0
I don't know why dhcpv6-pd doesn't seem to work when PPPoE dials and uses dhcpv6-pd after the router is started. When dhcp6c starts, PPPoE link has not been established. I've been waiting for at least half a minute, but it doesn't work until I manually restart it by typing the following command:
sudo systemctl restart dhcp6c@pppoe0
The following is a reference to the original modified file of @c-po:
https://github.com/vyos/vyos-1x/commit/992d3560369608085eaed41c385d17cbc4566fa5