[FUG-BR] Freebsd + Quagga + BGP

Helio Loureiro helio em loureiro.eng.br
Terça Setembro 3 14:38:45 BRT 2013


Eu andei procurando um exemplo nas apresentações do GTER, já que faz um bom
tempo que não mexo com BGP.

Mas o anúncio de rota parcial é pra link multihoming, com diferente ISPs no
uplink (no mínimo 2), criando uma regra de anúncio pra cada AS.  Como no
caso é o mesmo AS, talvez através do route-map, mas não sei se funcionaria
da mesma forma.  Entretanto, isso não vai importar, pois o ISP em que troca
tráfego é sempre o mesmo.  Vc pode tentar colocar peso até com route-path
que deve funcionar.

Não seria melhor rodar OSPF com o ISP?

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


Em 28 de agosto de 2013 15:16, Marco Aurelio <marcoprodata em gmail.com>escreveu:

> Caro Helio,
>
> Teria como vc postar um exemplo ?
>
> 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 14:31, Helio Loureiro <helio em loureiro.eng.br
> >escreveu:
>
> > 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
> > >
> > -------------------------
> > 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