This instance of OPNsense and its upstream router have been working just fine for months. But last weekend the OPNsense started losing its IPv6 address on WAN. The interface is configured to use SLAAC. When the interface is brought up it get's an address. The output of "ifconfig igb1" shows a valid life time of 14400 and a preferred life time of 1800 seconds. After that tcpdump output shows every router announcement has decreased life times until the preferred life time goes to 0. At that point, any further announcements do not contain a prefix info option at all.
<code>
15:19:50.002388 IP6 (flowlabel 0x9fec0, hlim 255, next-header ICMPv6 (58) payload length: 112) fe80::d63d:f3ff:fe69:6190 > ff02::1: [icmp6 sum ok] ICMP6, router advertisement, length 112
hop limit 64, Flags [none], pref medium, router lifetime 300s, reachable time 0ms, retrans timer 0ms
prefix info option (3), length 32 (4): 2003:f4:f40:7a00::/64, Flags [onlink, auto], valid time 12573s, pref. time 0s
0x0000: 40c0 0000 311d 0000 0000 0000 0000 2003
0x0010: 00f4 0f40 7a00 0000 0000 0000 0000
route info option (24), length 24 (3): 2003:f4:f40:7a00::/56, pref=medium, lifetime=300s
0x0000: 3800 0000 012c 2003 00f4 0f40 7a00 0000
0x0010: 0000 0000 0000
rdnss option (25), length 24 (3): lifetime 100s, addr: 2606:4700:4700::1113
0x0000: 0000 0000 0064 2606 4700 4700 0000 0000
0x0010: 0000 0000 1113
mtu option (5), length 8 (1): 1492
0x0000: 0000 0000 05d4
source link-address option (1), length 8 (1): d4:3d:f3:69:61:90
0x0000: d43d f369 6190
15:21:05.042176 IP6 (flowlabel 0x9fec0, hlim 255, next-header ICMPv6 (58) payload length: 80) fe80::d63d:f3ff:fe69:6190 > ff02::1: [icmp6 sum ok] ICMP6, router advertisement, length 80
hop limit 64, Flags [none], pref medium, router lifetime 300s, reachable time 0ms, retrans timer 0ms
route info option (24), length 24 (3): 2003:f4:f40:7a00::/56, pref=medium, lifetime=300s
0x0000: 3800 0000 012c 2003 00f4 0f40 7a00 0000
0x0010: 0000 0000 0000
rdnss option (25), length 24 (3): lifetime 100s, addr: 2606:4700:4700::1113
0x0000: 0000 0000 0064 2606 4700 4700 0000 0000
0x0010: 0000 0000 1113
mtu option (5), length 8 (1): 1492
0x0000: 0000 0000 05d4
source link-address option (1), length 8 (1): d4:3d:f3:69:61:90
0x0000: d43d f369 6190
</code>
This is where I need help. Are the decreasing life times to be expected at all? And what is it in "ifconfig igb1 up" that restarts the upstream router announcements? I can only assume that it's a router solicitation. Can I somehow make OPNsense send solicitation requests even though announcements are coming?
I just learned that rtsol can used from the command line to send router solicitations, but it doesn't restart the proper announcements from the upstream router.
The upstream router has been restarted. It now dispatches prefix info starting at life times of 1800 seconds. While the life time still decreases with every announcement, it only does so until 900 seconds life time and then starts over.