[GTER] redundancia ADSL

Flavio Junior billpp at gmail.com
Wed Jul 23 13:42:29 -03 2008


Bruno,

Nesse caso é diferente.
ppp0 é uma interface que sobe apartir da conexão, ou seja, quando a
conexão cair ela pode desaparecer OU não. Depende de como foi a parada
do serviço (queda de conexão).

Se ela desaparecer, perfeito, o kernel vai gerar um event de netlink
down e a programação do iproute2 vai funcionar beleza.
Se ela não cair, o link continua up e não temos como dizer que a adsl caiu.

O caso mais atual nao é mais PPP, é uma ethernet da tua NIC em LAN com
uma NIC no modem adsl, e o modem adsl tem uma interface
telefonica/cable fazendo uma WAN com o teu ISP. Quando o ISP cair ou
parar de enviar dados, a NIC da LAN do modem não vai sofrer nenhuma
alteração e por consequencia a tua NIC falando com ele tambem não, e
assim tudo continua UP pro iproute.

O que fazemos pra resolver esse problema?
Criamos scripts gambiarras que testam (normalmente icmp/ping) os links
e se o script detectar que o link ta down ou ele baixa a interface
(ifconfig ethX down) ou ele remove a rota e deixa só a rota atual.
Ai entra o caso: De quanto em qto tempo o script deve agir? Quantos
testes ele deve fazer? Quanto tempo de delay é aceitavel no teste? e
tudo mais que vai, de qualquer maneira, gerar um atraso e/ou perda de
conexão no momento de troca das rotas.

Nota: normalmente apenas troca-se a rota e mantem o script verificando
quando o link voltar pra retornar as 2 rotas.. se baixar a interface,
não tem como detectar quando o link voltar.

--

Flávio do Carmo Júnior


2008/7/23 bruno at openline.com.br <bruno at openline.com.br>:
> --- "Flavio Junior" <billpp at gmail.com> escreveu:
>> Só adicionando (eu espero que sem falar besteiras) a resposta do amigo..
>>
>> Por que não funciona?
>>
>> Esse esquema do ip route trabalharia com metricas de rota e peso.
>> No teu caso, os 2 links trabalhariam ativo/ativo como um (ambos tem o
>> mesmo peso) e dividindo a carga em 50% pra cada.
>>
>> Por que não funciona quando a ADSL cai?
>> Por que o iproute não detecta o rompimento do link, já que o que caiu
>> foi a WAN do MODEM e ele ta linkado na LAN do mesmo. Ou seja, pra ele
>> o link ta OK (e realmente está).
>
> Ola
>
> Ja experimentou remover o IP/deixar somente a rota para
> a interface? No caso de down da interface a rota seria
> ignorada e mantida só a outra? Conta pra gente o resultado
> desse teste! ;-)
>
> Tipo assim (com os PPP no próprio linux ao invés de em
> roteadores ou máquinas externas da LAN. man adsl-connect)
>
>  ip route add default scope global nexthop dev ppp0 weight 1 \
>    nexthop dev ppp1 weight 1
>
> []s,
> !3runo
>
>> Se tu conseguisse progrmar um trap/trigger num modem adsl desses pra
>> quando a interface WAN caisse e/ou perdesse o IP válido ele derrubasse
>> a interface LAN tambem, o teu comando iproute funcionaria muito bem.
>> Assim que o iproute detectar a queda do link na ethX, ele para de
>> encaminhar os pacotes por ela e usa somente a ethY.
>> Seria necessário talvez só mais algumas linhas definindo tables e as
>> rotas de cada table.
> --
> gter list    https://eng.registro.br/mailman/listinfo/gter
>



More information about the gter mailing list