#! /sbin/nft -f table inet firewall { # Définition de la zone Adhérents set z_admin { type ipv4_addr; flags interval elements = { # Si l'on souhaite ajouter des ranges d'ip c'est ici 10.7.0.0/24, } } chain to_admin { # On devrait toujours pouvoir contacter un admin :) accept; } chain from_admin { } } table nat { # On nate les admins derrière les IPs 193.48.225.215 à 193.48.225.224 en # attribuant les plages de ports 11135-65535 par tranche de 1700 ports. # On a donc 32 Ips de 10.7.0.0/24 derrière chaque Ip. map admin_nat_address { type ipv4_addr: ipv4_addr flags interval elements = { # exemple: 10.7.0.1-10.7.0.31 : 193.48.225.215 # On peut aussi ajouter dynamiquement des éléments : # nft add element nat federez_nat_address {10.7.0.1-10.7.0.31 : 193.48.225.215} } } map admin_nat_port { type ipv4_addr: inet_service flags interval elements = { # exemple: 10.7.0.1 : 11135-12834 # On peut aussi ajouter dynamiquement des éléments : # nft add element nat federez_nat_port {10.7.0.1 : 11135-12834} } } }