[FUG-BR] Freebsd + Quagga + BGP

Helio Loureiro helio em loureiro.eng.br
Terça Agosto 27 14:31:29 BRT 2013


Oi,

Anuncia os /24 em cada interface e o /22 em todas elas pra ter redundância
e ter certeza que os pacotes enviados por uma interface vai voltar pela
mesma.

Abs,
Helio Loureiro
http://helio.loureiro.eng.br
http://br.linkedin.com/in/helioloureiro
http://twitter.com/helioloureiro
http://gplus.to/helioloureiro


Em 27 de agosto de 2013 10:20, Marco Aurelio <marcoprodata em gmail.com>escreveu:

> Caro André,
>
> Muito obrigado mais uma vez e no aguardo.
>
>
>
> Marco Aurélio Ventura da Silva
> marcoprodata em gmail.com
> Prodata Informática e Cadastro LTDA
> (33)3322-4444
>
>
> Em 27 de agosto de 2013 13:11, André Gustavo Neves Lopes
> <andre em mrx.com.br>escreveu:
>
> > euvou montar um lab aqui com virtualbox e quagga e te envio
> > abraço.
> >
> > On Tue, Aug 27, 2013 at 08:54:46AM -0300, Marco Aurelio wrote:
> > > Caro André,
> > >
> > > Obrigado pela atenção, tem como vc me mandar um pequeno exemplo ou site
> > que
> > > explica como gerenciar pelo prefixo ?
> > >
> > > Mais uma vez agradeço a atenção recebida.
> > >
> > > Marco Aurélio Ventura da Silva
> > > marcoprodata em gmail.com
> > > Prodata Informática e Cadastro LTDA
> > > (33)3322-4444
> > >
> > >
> > > Em 26 de agosto de 2013 20:19, André Gustavo N. <andre em mrx.com.br>
> > escreveu:
> > >
> > > > Boa noite Renato,
> > > >
> > > > Eu conheço PBR, mas o que eu quis dizer, aproveitando o seu exemplo é
> > que
> > > > se vc pegar um /24 e anunciar com mais local-preference para o peer1
> > > > escolher outro /24 e anunciar com mais local-preference para o
> peer2, e
> > > > assim por diante, vai ter o mesmo resultado. Gerenciando o
> > local-preference
> > > > por prefixo, não "por link".
> > > >
> > > > Se o link3 ficar saturado, você pode manobrar o tráfego tirando o
> > > > local-preference dos prefixos que você tinha ajustado anteriormente.
> > > > O balanceamento de tráfego para rotas com o mesmo custo (ECMP),
> > depende de
> > > > suporte no S.O. e isso é uma outra novela.
> > > > No linux me disseram que funciona bem, no FreeBSD eu tive 1 milhão de
> > > > problemas habilitando RADIX_MPATH e full routing com quagga.
> > > > No OpenBSD eu já usei, e funciona bem.
> > > >
> > > > PBR é muito bacana, mas acho que não é pré requisito para funcionar o
> > que
> > > > o rapaz ali precisa =)
> > > >
> > > > Abraço!
> > > >
> > > > On Mon, Aug 26, 2013 at 06:39:18PM -0300, Renato Frederick wrote:
> > > > > On 8/26/2013 10:28 AM, André Gustavo N. Lopes wrote:
> > > > > > Bom dia Renato, eu não entendi muito bem a necessidade de PBR,
> não
> > é
> > > > só uma questão de ajustar os local-preference ?
> > > > > >
> > > > > > On Sun, Aug 25, 2013 at 04:44:12PM -0300, Renato Frederick wrote:
> > > > >
> > > > > André,
> > > > >
> > > > > Boa Noite!
> > > > >
> > > > > Sobre o PBR, imagine isto
> > > > >
> > > > > link1 = 10mb
> > > > > link2 = 10mb
> > > > > link3 = 10mb
> > > > >
> > > > > Imagine, pra simplificar que você tem 3 blocos /24.
> > > > >
> > > > > redeA 10.0.0.0/24
> > > > > redeB 10.0.1.0/24
> > > > > redeC 10.0.2.0/24
> > > > >
> > > > > PBR seria o seguinte: Você falar que todo o tráfego da redeA sai
> pelo
> > > > > link1, todo trafego da redeB sai pelo link2 e todo tráfego da redeC
> > pelo
> > > > > link3.
> > > > >
> > > > > Agora, imagine que o link3 está 100% usado, mas o link1 está 20%
> só.
> > > > >
> > > > > Se você for no BGP e falar que o link1 tem local-preference maior,
> > TODAS
> > > > > as 3 redes, redeA, redeB, redeC, começaram a siar pelo link1. Então
> > você
> > > > > não resolveu, apenas transferiu o problema do link3 pro link1.
> > > > >
> > > > > Com o PBR você faria o seguinte:
> > > > >
> > > > > Analisaria quais IP estão usando, por exemplo, 40% do link3.
> > > > >
> > > > > Daí, jogaria estes IP e SOMENTE eles para o link1.
> > > > >
> > > > > Então, o link1 que tinha 20%, vai ter agora 20 + 40 = 60% de uso.
> > > > > e o link3, que tinha 100%, vai ter só 60%.
> > > > >
> > > > > então ficou balanceado, 60% link1, 60% link3.
> > > > >
> > > > > Porém, imagina que o link1 caiu. sua regra está manual, você teria
> > que
> > > > > entrar no firewall e mudar a regra.
> > > > >
> > > > > Com o PF + OPENBGPD você faz o seguinte que resolve.
> > > > >
> > > > > pega todas as redes(full rouring) aprendidas pelo BGP do link1 e
> poe
> > na
> > > > > table do PF <link1>
> > > > >
> > > > > Faz o mesmo com o link2 e 3.
> > > > >
> > > > > E daí faz uma regra de fwd:
> > > > >
> > > > > pass out quick route-to ( em0 ip.remoto ) from { 10.0.0.0/24 } to
> > > > > <link1> keep state
> > > > >
> > > > > assim, se o link1 cair, a table <link1> estará vazia(já que o
> > openbgpd
> > > > > não vai popular ela).
> > > > >
> > > > > isto é o que o cisco faz no bgp dele, você usa o bgp + estado da
> > > > > interface(fisica ou loopback). Se a interface cai, aquela origem é
> > > > > roteada para outra, usando pesos.
> > > > >
> > > > > então, em resumo, local-prefence redireciona TODAS as redes de
> > origem,
> > > > > manipula só destino. Usando este esquema, você  manipula a origem
> > > > > também(com o route-to) e destino(com local-preference, weight,
> etc).
> > > > >
> > > > > No passado eu até perguntei isto aqui, acho que foi até o Patrick
> que
> > > > > falou algo sobre "BATMAN", olha o link abaixo:
> > > > >
> > > > > http://www.fug.com.br/historico/html/freebsd/2008-11/msg00477.html
> > > > >
> > > > > Esta ideia dele de usar o pf + openbgpd foi muito legal, e me
> ajudou
> > > > > demais!!
> > > > >
> > > > > -------------------------
> > > > > Histórico: http://www.fug.com.br/historico/html/freebsd/
> > > > > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> > > >
> > > > -------------------------
> > > > Histórico: http://www.fug.com.br/historico/html/freebsd/
> > > > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> > > >
> > > >
> > > -------------------------
> > > Histórico: http://www.fug.com.br/historico/html/freebsd/
> > > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >
> > -------------------------
> > Histórico: http://www.fug.com.br/historico/html/freebsd/
> > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >
> >
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>


Mais detalhes sobre a lista de discussão freebsd