feat(tower): route le LAN dans wg1 (routeur + NAT)

tower fait routeur pour son LAN : ip_forward et NAT wg1 -> wlan0 (sortie avec l'IP LAN 192.168.1.44), et le pair tower cote VPS declare desormais 192.168.1.0/24 dans ses allowedIPs. Le Steam Deck et le reste du LAN deviennent joignables depuis rack sans dependre d'un forward de la box.
This commit is contained in:
Hermes Agent
2026-10-24 15:08:11 -04:00
parent 69dd5cae6c
commit 030332d4a3
2 changed files with 20 additions and 1 deletions
+17
View File
@@ -469,6 +469,23 @@ in {
};
# Aucun port UDP à ouvrir : wg-quick en mode client n'écoute pas de port fixe.
# ========================================================================
# SOUS-RESEAU : tower route le LAN 192.168.1.0/24 dans wg1
# ========================================================================
# Sans ça, le VPS (10.100.0.1) ne peut joindre que tower dans le tunnel :
# le Steam Deck et le reste du LAN restent invisibles depuis rack. tower
# fait donc routeur pour son LAN, avec MASQUERADE wg1 -> wlan0 (les hôtes du
# LAN n'ont aucune route retour vers 10.100.0.0/24, donc on sort avec l'IP
# LAN de tower, 192.168.1.44). Le pair tower côté VPS doit déclarer
# 192.168.1.0/24 dans ses allowedIPs pour que le VPS lui route le LAN.
# Effet de bord assumé : tout pair wg1 (le Mac, le VPS) peut joindre le LAN.
boot.kernel.sysctl."net.ipv4.ip_forward" = 1;
networking.nat = {
enable = true;
internalInterfaces = [ "wg1" ];
externalInterface = "wlan0";
};
# ========================================================================
# MINEUR MONERO - planning sommeil / travail Nextcloud
# ========================================================================
+3 -1
View File
@@ -21,8 +21,10 @@
# tower (NixOS, NAT residentiel) : pair client, sert au SSH/ET entrant
# depuis ce VPS et depuis le Mac. Cle publique issue de
# secrets/wireguard.yml (recipient tower) sur tower.
# 192.168.1.0/24 : tower est routeur de son LAN (NAT wg1 -> wlan0),
# ce qui rend le Steam Deck et le reste du LAN joignables depuis rack.
publicKey = "Qd0IGtduY3Jq5jxAqx4s2B4QlWEvGG4ACeGmrM9V2W0=";
allowedIPs = [ "10.100.0.3/32" ];
allowedIPs = [ "10.100.0.3/32" "192.168.1.0/24" ];
}
];
postSetup = ''