vou tentar te ajudar da forma q eu fiz aqui.
Eu tava com um problema querendo colocar dois links... vou te enviar o script que por sinal, peguei em um site q nem me lembro mais onde foi...
_________________________________________________________________
#!/bin/bash
# Network Interna
# Interface de rede
IFI=eth0
# IP da rede local
IPI=192.168.0.1
# Endereco de rede
NWI=192.168.0.0
# Bit de netmask da rede
NMI=24
# Interface Externa #1
# Interface de rede
IFE1=eth1
# IP da rede
IPE1=201.20.193.50
# Gateway de Internet
GWE1=201.20.192.1
# Endereco de rede
NWE1=201.20.193.0
# Bit de netmask da rede
NME1=21
# Broadcast da rede
BRD1=255.255.255.255
# Interface Externa #2
# Interface de rede
IFE2=eth2
# IP de rede
IPE2=200.206.217.169
# Gateway de rede
GWE2=200.206.217.129
# Endereco da rede
NWE2=200.206.217.0
# Bit de netmask da rede
NME2=26
# Broadcast da rede
BRD2=255.255.255.255
# Fim das configuracoes #
# Regras de NAT firewall
iptables -t nat -A POSTROUTING -o ${IFE1} -s ${NWI}/${NMI} -j SNAT --to ${IPE1}
iptables -t nat -A POSTROUTING -o ${IFE2} -s ${NWI}/${NMI} -j SNAT --to ${IPE2}
# Firewall Stateful
iptables -t filter -N KEEP_STATE
iptables -t filter -A KEEP_STATE -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t filter -A KEEP_STATE -j RETURN
iptables -t nat -N KEEP_STATE
iptables -t nat -A KEEP_STATE -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A KEEP_STATE -j RETURN
iptables -t nat -A PREROUTING -j KEEP_STATE
iptables -t nat -A POSTROUTING -j KEEP_STATE
iptables -t nat -A OUTPUT -j KEEP_STATE
iptables -t filter -A INPUT -j KEEP_STATE
iptables -t filter -A FORWARD -j KEEP_STATE
iptables -t filter -A OUTPUT -j KEEP_STATE
# Roteamento
ip rule add prio 50 table main
ip route del default table main
ip addr flush ${IFI}
ip addr add ${IPI}/${NMI} brd + dev ${IFI}
ip addr flush ${IFE1}
ip addr add ${IPE1}/${NME1} brd ${BRD1} dev ${IFE1}
ip addr flush ${IFE2}
ip addr add ${IPE2}/${NME2} brd ${BRD2} dev ${IFE2}
ip rule add prio 222 table 222
ip route add default table 222 proto static nexthop via ${GWE1} dev ${IFE1} weight 1 nexthop via ${GWE2} dev ${IFE2} weight 1
ip rule add prio 201 from ${NWE1}/${NME1} table 201
ip route add default via ${GWE1} dev ${IFE1} src ${IPE1} proto static table 201
ip route append prohibit default table 201 metric 1 proto static
ip rule add prio 202 from ${NWE2}/${NME2} table 202
ip route add default via ${GWE2} dev ${IFE2} src ${IPE2} proto static table 202
ip route append prohibit default table 202 metric 1 proto static
_______________________________________________________________
Depois q fiz isso... ficou bom... Agora eu queria a ajuda dos mais entendidos... para descifrar este codigo... tipo a parte em iptables alguém comentar o este código faz...
e a parte do IP router... tem um detalhe... no meu caso quando um link falha... o outro ñ funciona bem.
aí os clientes começaram a cair o msn... eu fiz o seguinte, dividi manualmente meus clientes uns para um lado e outros para o outro lado.
ip rule add from 192.168.0.10 lookup 201
ip rule add from 192.168.0.11 lookup 201
ip rule add from 192.168.0.12 lookup 201
ip rule add from 192.168.0.13 lookup 202
ou seja, o ip 10 e 11 sai pelo link 201 e o 12 e 13 pelo 202 na tabela de roteamento do script acima. Favor, se funcionar dê feedback.