I have no idea why this is not working. I ran tcpdump -n -i eth0 icmp6 on a machine for at least 30 minutes and no router-adverts were seen, just router-solicitation and neighbor packets.
The config file looks right, service is running, restarting the service has no effect (if it was a boot ordering issue it would).
Also, the help text on the 'service router-advert' node is wrong.
vyos@rt-home# sudo systemctl status radvd
● radvd.service - Router advertisement daemon for IPv6
Loaded: loaded (/lib/systemd/system/radvd.service; disabled; vendor preset: enabled)
Active: active (running) since Mon 2020-04-20 18:24:23 CEST; 3h 43min ago
Docs: man:radvd(8)
Main PID: 2574 (radvd)
Tasks: 2 (limit: 542)
Memory: 1.0M
CGroup: /system.slice/radvd.service
├─2574 /usr/sbin/radvd --logmethod stderr_clean
└─2575 /usr/sbin/radvd --logmethod stderr_clean
Apr 20 18:24:23 rt-home systemd[1]: Starting Router advertisement daemon for IPv6...
Apr 20 18:24:23 rt-home radvd[2572]: config file, /etc/radvd.conf, syntax ok
Apr 20 18:24:23 rt-home radvd[2573]: version 2.17 started
Apr 20 18:24:23 rt-home systemd[1]: Started Router advertisement daemon for IPv6.
Apr 20 18:24:36 rt-home systemd[1]: /lib/systemd/system/radvd.service:11: PIDFile= references path below legacy directory /var/run/, updating /var/run/radvd.pid → /run/radvd.pid; please update the unit f
Apr 20 18:24:39 rt-home systemd[1]: /lib/systemd/system/radvd.service:11: PIDFile= references path below legacy directory /var/run/, updating /var/run/radvd.pid → /run/radvd.pid; please update the unit f
[edit]
vyos@rt-home# sudo vi /etc/radvd.conf
[edit]
vyos@rt-home# sudo systemctl reload radvd
[edit]
vyos@rt-home# sudo systemctl restart radvd
[edit]
vyos@rt-home# set service router-advert
Possible completions:
+> interface Interface to send DDNS updates for [REQUIRED]
[edit]
vyos@rt-home# set service router-advert interface br0 interval max 60
[edit]
vyos@rt-home# commit
[ service router-advert interface br0 interval max 60 ]
[ service router-advert ]
[edit]
vyos@rt-home# sudo systemctl status radvd
● radvd.service - Router advertisement daemon for IPv6
Loaded: loaded (/lib/systemd/system/radvd.service; disabled; vendor preset: enabled)
Active: active (running) since Mon 2020-04-20 22:16:09 CEST; 24s ago
Docs: man:radvd(8)
Process: 6882 ExecStartPre=/usr/sbin/radvd --logmethod stderr_clean --configtest (code=exited, status=0/SUCCESS)
Process: 6884 ExecStart=/usr/sbin/radvd --logmethod stderr_clean (code=exited, status=0/SUCCESS)
Main PID: 6885 (radvd)
Tasks: 2 (limit: 542)
Memory: 900.0K
CGroup: /system.slice/radvd.service
├─6885 /usr/sbin/radvd --logmethod stderr_clean
└─6886 /usr/sbin/radvd --logmethod stderr_clean
Apr 20 22:16:09 rt-home systemd[1]: Starting Router advertisement daemon for IPv6...
Apr 20 22:16:09 rt-home radvd[6882]: config file, /etc/radvd.conf, syntax ok
Apr 20 22:16:09 rt-home radvd[6884]: version 2.17 started
Apr 20 22:16:09 rt-home systemd[1]: Started Router advertisement daemon for IPv6.
[edit]
vyos@rt-home# show service router-advert
interface br0 {
hop-limit 64
interval {
max 60
}
managed-flag
prefix 2001:db8::/64 {
valid-lifetime 2592000
}
reachable-time 0
retrans-timer 0
}
[edit]
vyos@rt-home# sudo cat /etc/radvd.conf
### Autogenerated by service-router-advert.py ###
interface br0 {
IgnoreIfMissing on;
AdvDefaultPreference medium;
AdvManagedFlag on;
MaxRtrAdvInterval 60;
AdvReachableTime 0;
AdvIntervalOpt on;
AdvSendAdvert on;
AdvOtherConfigFlag off;
AdvRetransTimer 0;
AdvCurHopLimit 64;
prefix 2001:db8::/64 {
AdvAutonomous on;
AdvValidLifetime 2592000;
AdvOnLink on;
AdvPreferredLifetime 14400;
};
};
[edit]
vyos@rt-home# show interfaces bridge br0
address 192.0.2.1/24
address 2001:db8::1/64
aging 300
description LAN
firewall {
local {
name lan-local
}
}
hello-time 2
ipv6 {
dup-addr-detect-transmits 2
}
max-age 20
member {
interface eth0 {
}
interface eth1 {
}
interface eth2 {
}
interface eth4 {
}
}
priority 20480
stp
[edit]