Solution was simple and an oversight on my part.
I had created a NAT outbound rule for LAN devices, but I had forgotten to make one for WireGuard devices. The reason the result was intermittent was because the firewall was allowing traffic until sessions died, at which point it would begin blocking attempts to renew sessions that were expired.
While Live View showed traffic being blocked by the default deny rule on the VPN interface, that stopped when the NAT outbound rule was made, meaning that kill switch etc. were not interfering, but just appearing as if part of the cause while they weren't actually. It also explains why the any any allow rule didn't do anything, - it wasn't a firewall rule causing the block.
Sleeping on an issue does wonders. :-)
I had created a NAT outbound rule for LAN devices, but I had forgotten to make one for WireGuard devices. The reason the result was intermittent was because the firewall was allowing traffic until sessions died, at which point it would begin blocking attempts to renew sessions that were expired.
While Live View showed traffic being blocked by the default deny rule on the VPN interface, that stopped when the NAT outbound rule was made, meaning that kill switch etc. were not interfering, but just appearing as if part of the cause while they weren't actually. It also explains why the any any allow rule didn't do anything, - it wasn't a firewall rule causing the block.
Sleeping on an issue does wonders. :-)
"