lunedì 4 luglio 2016

Doppio default Gateway su Linux

In alcune versioni di Linux non è possibile configurare direttamente default gateway multipli.

Seguendo questa guida:

https://www.thomas-krenn.com/en/wiki/Two_Default_Gateways_on_One_System

Ho proceduto così:

Verificare che sia possibile configurare tabelle di routing multiple:

more /etc/iproute2/rt_tables

aggiungere una riga alla fine per creare una nuova tabella:

#
# reserved values
#
255     local
254     main
253     default
0       unspec
#
# local
#
#1      inr.ruhep
1 rt2

Inserire a caldo le nuove regole:

ip route add 10.10.0.0/24 dev eth1 src 10.10.0.10 table rt2
ip route add default via 10.10.0.1 dev eth1 table rt2

(la prima è necessaria perchè dichiara che per la subnet locale si passa dalla eth1, per l'ip della macchina
la secondo dichiara effettivamente il default gateway)


Indicare in quali situazioni applicare le regole della rt2:

ip rule add from 10.10.0.10/32 table rt2
ip rule add to 10.10.0.10/32 table rt2

(la tabella rt2 deve essere usata per tutto il traffico da e per l'ip della seconda scheda di rete)


Verificare l'applicazione delle regole:

ip route list table rt2
ip rule show

Come ulteriore verifica potete provare a raggiungere la scheda di rete da una subnet differente...

Se tutto funziona potete rendere definitivo con:

iface eth1 inet static
    address 10.10.0.10
    netmask 255.255.255.0
    post-up ip route add 10.10.0.0/24 dev eth1 src 10.10.0.10 table rt2
    post-up ip route add default via 10.10.0.1 dev eth1 table rt2
    post-up ip rule add from 10.10.0.10/32 table rt2
    post-up ip rule add to 10.10.0.10/32 table rt2

Si noti che i default gw aggiuntivi vengono configurati in post-up, altrimenti la seconda dichiarazione andrebbe a sovrascrivere la prima...

Nessun commento:

Posta un commento