The current configuration was making the whole routing table overly confused. You basically need to restrict a bit further (/32 and /128 respictively for IPv4 and IPv6) the mask to please the routing gods.
@@ -103,7 +103,7 @@ def update_wg_config (member_id, config_file, pubkey_path, psk_path):
[Peer]
PublicKey = pubksubs
PresharedKey = psksubs
- AllowedIPs = 10.0.0.{0}/24, fd00::{0}/64
+ AllowedIPs = 10.0.0.{0}/32, fd00::{0}/128
''').format(member_id)
with open(config_file, "a") as wg_conf_file:
wg_conf_file.write(wg_new_peer)