Eu faria isso como Tero sugeriu na parte 1 (a configuração com IP público pode não ser necessária, mas eu configurei as NICs com os endereços públicos.) Com relação à parte 2, acho que deve haver uma maneira melhor de fazer isso, mas Não tenho certeza como. O que eu quero adicionar é sobre o roteamento de políticas, já que o link dado não é especificamente para essa situação, e também sobre o mascaramento que eu não acho que tenha sido mencionado.
Adicione as linhas
1 isp1
2 isp2
para / etc / iproute2 / rt_tables.
Então:
ip addr add 192.168.100.250 dev eth0
ip addr add 192.168.0.250 dev eth1
ip addr add 192.168.1.250 dev eth2
(se estes já não estiverem configurados), então
iptables-save > IptablesSaveFile
edite esse arquivo para parecer algo como
*nat
:PREROUTING ACCEPT
:INPUT ACCEPT
:OUTPUT ACCEPT
:POSTROUTING ACCEPT
-A POSTROUTING ! -d 192.168.100.0/24 -o eth1 -j SNAT --to-source 192.168.0.250
-A POSTROUTING ! -d 192.168.100.0/24 -o eth2 -j SNAT --to-source 192.168.1.250
-A POSTROUTING -o eth1 -j MASQUERADE
-A POSTROUTING -o eth2 -j MASQUERADE
COMMIT
*filter
... your iptables filtering rules here ...
-A FORWARD -i eth1 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth2 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -o eth1 -j ACCEPT
-A FORWARD -i eth0 -o eth2 -j ACCEPT
COMMIT
então
iptables-restore < IptablesSaveFile
para ativar as regras do firewall (mascaramento). Então
ip route add 192.168.100.0/24 dev eth0 table isp1
ip route add 192.168.100.0/24 dev eth0 table isp2
ip route add 192.168.0.0/24 dev eth1 table isp1
ip route add default via 192.168.0.1 dev eth1 table isp1
ip route add 192.168.1.0/24 dev eth2 table isp2
ip route add default via 192.168.1.1 dev eth2 table isp2
ip rule add from 192.168.0.250 table isp1
ip rule add from 192.168.1.250 table isp2
O acima é para que as conexões que chegam em uma interface sejam retornadas na mesma interface. Eu tinha um servidor DNS em execução na máquina que estava configurado para que os usuários pudessem se conectar a 192.168.100.250 - se você não tiver certeza da melhor maneira de fazer isso - você poderia configurar um resolvedor stub que alterna entre os 2 endereços DNS para encaminhar solicitações ou configurar metade das máquinas dos usuários para usar um endereço DNS e a outra metade para o outro. Alguém mais saberá disso melhor, tenho certeza. Espero que isso ajude.