Configurazione iniziale

L’esempio è basato su Debian, ma può essere facilmente modificato per funzionare anche con altre disto.

Supponiamo di avere tre interfacce chiamate eth0 (per la wan1), eth1 (per la wan2) e eth2 (per la lan) e di configurarle in questo modo:

auto eth0
iface eth0 inet static
    address 10.10.10.10
    netmask 255.255.255.0
    gateway 10.10.10.1
    metric 10

auto eth1
iface eth1 inet static

    address 10.10.11.10
    netmask 255.255.255.0
    gateway 10.10.11.1
    metric 20

auto eth2
iface eth2 inet static

    address 192.168.1.1
    netmask 255.255.255.0

Ricordo inoltre di abilitare il forwarding ipv4 in sysctrl.conf.

# /etc/sysctl.conf
# Togliere l'hashtag all'inizio della riga
net.ipv4.ip_forward=1

e il nat in iptables:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -d 192.168.1.0/24 -m state --state RELATED,ESTABLISHED -j ACCEPT

Nella prossima pagina passiamo allo script.