Strict reverse path filtering is a security measure that drops incoming packets unless they would be routed out of same the interface they came in from. This is currently not compatible with eduVPN's routing, because incoming WireGuard packets are received on the WAN interface but would be routed through the WireGuard interface if the endpoint is included in AllowedIPs. As a result, the docs mention (here and here) that one should loosen reverse path filtering in environments where it is strict by default.
It would be nice to support strict reverse path filtering. wg-quick does this by saving the fwmark for WireGuard connections as the connection mark and restoring it for incoming packets. It then enables net.ipv4.conf.all.src_valid_mark so that the mark is taken into account for reverse path filtering. If one uses the rpfilter netfilter module instead, one can use --validmark to the same effect (NixOS enables this by default).
Maybe this is something to be fixed in NetworkManager directly.
Strict reverse path filtering is a security measure that drops incoming packets unless they would be routed out of same the interface they came in from. This is currently not compatible with eduVPN's routing, because incoming WireGuard packets are received on the WAN interface but would be routed through the WireGuard interface if the endpoint is included in AllowedIPs. As a result, the docs mention ([here](https://docs.eduvpn.org/client/linux/support.html#connecting-to-wireguard-vpn-over-ipv6-blocked-by-firewalld) and [here](https://docs.eduvpn.org/client/linux/installation.html#nixos)) that one should loosen reverse path filtering in environments where it is strict by default.
It would be nice to support strict reverse path filtering. `wg-quick` [does this](https://github.com/WireGuard/wireguard-tools/blob/0b7d9821f2815973a2930ace28a3f73c205d0e5c/src/wg-quick/linux.bash#L238-L241) by saving the fwmark for WireGuard connections as the connection mark and restoring it for incoming packets. It then enables `net.ipv4.conf.all.src_valid_mark` so that the mark is taken into account for reverse path filtering. If one uses the rpfilter netfilter module instead, one can use `--validmark` to the same effect (NixOS enables this by default).
Maybe this is something to be fixed in NetworkManager directly.