+-----------+ | | INTERNET ---------- (DHCP) eth0 -| SERVEUR |- eth1 (10.9.0.0/22) --- Réseau local pour les installs | | +-----------+
Activez le routage dans le kernel
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf sysctl -w
On va faire du nat de l'interface eth1 vers l'interface internet eth0. Ajoutez la ligne suivante à la fin de votre configuration réseau eth0 dans /etc/network/interfaces
post-up iptables -t nat -A POSTROUTING -s 10.9.0.0/22 ! -d 10.9.0.0/22 -o eth0 -j MASQUERADE
Rechargez le réseau ou faites iptables -t nat -A POSTROUTING -s 10.9.0.0/22 ! -d 10.9.0.0/22 -o eth0 -j MASQUERADE
Voilà, votre réseau local peut à présent pinguer une ip sur internet. (voir piguer un nom de domaine si votre serveur résout les noms).
Afin que cela soit permanent à chaque boot, vous pouvez ajouter cette ligne à la fin de votre config eth1 :
post-up iptables-restore < /etc/iptables.up.rules
Et placer les regles suivantes dans le fichier /etc/iptables.up.rules
# Generated by iptables-save v1.4.2 on Sat Oct 17 17:08:16 2009 *nat :PREROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] # Forward HTTP connections to Squid proxy #-A PREROUTING -p tcp -m tcp -s 10.9.0.0/22 ! -d 10.9.0.0/22 -i eth1 --dport 80 -j REDIRECT --to-ports 3130 # Translation d adresses -A POSTROUTING -s 10.9.0.0/22 ! -d 10.9.0.0/22 -o eth0 -j MASQUERADE COMMIT # Completed on Sat Oct 17 17:08:16 2009 # Generated by iptables-save v1.4.2 on Sat Oct 17 17:08:16 2009 *mangle :PREROUTING ACCEPT [18:1690] :INPUT ACCEPT [16:1578] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [17:4294] :POSTROUTING ACCEPT [17:4294] COMMIT # Completed on Sat Oct 17 17:08:16 2009 # Generated by iptables-save v1.4.2 on Sat Oct 17 17:08:16 2009 *filter :FORWARD ACCEPT [0:0] :INPUT ACCEPT [0:0] :OUTPUT ACCEPT [0:0] COMMIT # Completed on Sat Oct 17 17:08:16 2009