@alissonx Poderia me dar um exemplo?
@alissonx Poderia me dar um exemplo?
Andrio voce possui GVT e Titania Correto?
Bloco: 192.168.0.0/23
Anuncios:
GVT: 192.168.0.0/24
192.168.0.0/23
Titania: 192.168.1.0/24
192.168.0.0/23
Gvt: Localpref 400 (sem preped)
Titania: Localpref 400 (sem prepend)
Se o upload não balancear, coloque ECMP para seus 2 GW.
Galera, tenho algumas duvidas sobre o uso de links com bgp.
Vamos supor que eu tenha 3 links com 3 operadoras diferente,
Op01 = 300mb
Op02 = 200mb
Op03 = 200mb
Agora em minha suposta situação vou anunciar meu AS nas tres operadoras, como funcionaria a junção destes tres links? Eles seriam utilizados por igual ?
Supomos ainda que eu venda link para mais 3 provedores, que também vão subir seus AS comigo, passando pela rb qeu faz este BGP, eles so faram uso de um dos links ou vão ficar se alternando entre os tres? Tipo poderei vender um link de 400 ou 500mb?
imagina assim onde você anunciar seu bloco é onde será o consumo ou seja se você conseguir anunciar tudo por igual você terá o consumo igual de link, mais isso é muito difícil de conseguir mais você consegue chegar próximo dividindo seu bloco corretamente a não ser que tive um rota mais especifica que fará voltar por outro link. me corrijam se estiver errado.
Voce pode anunciar seus blocos maiores nas 3 operadoras por exemplo /20 e logo abaixo do anuncio quebrar o /20 em alguns /24, ai voce divide os blocos quebrados nos filtros do bgp separando quais blocos voce quer que saia por qual link, caso o /24 caixa em um dos links ele vai procurar a próxima rota que de acesso a saida, no seu caso o /20 que voce anunciou, pois o bgp trabalha priorizando as rotas mais especificas, mas como o /24 caiu a proxima mais especifica pra ele é o /20.
Fazendo isso automaticamente voce tem um balanceamento dos links, ainda estou estudando sobre multihoming e limito a essas informações.
Juliano,
Você pode até vender link maior do que você tenha, só que em caso de indisponibilidade de circuitos, não conseguirá cumprir o SLA. Basta fazer o balanceamento de prefixos do seu cliente de acordo com os circuitos que você tem. Se ele aferir velocidade em um IP só, não vai bater os 500Mb, mas se usar vários IP's gerando tráfego, os 500Mb vão bater sim.
Att,
@netuai, como dito anteriormente, você somente faz o balanceamento de download via quebra de prefixos.
então para você vender 500 mb, voce tem que entregar varios IPs dos prefixos quebrados que serão anunciados em diferentes operadoras.
exemplo:
Bloco: 192.168.0.0/22
Op01 = 300mb sera anunciado > 192.168.0.0/24
Op02 = 200mb sera anunciado > 192.168.1.0/24
Op03 = 200mb sera anunciado > 192.168.2.0/24
Op04 = 100mb sera anunciado > 192.168.3.0/24
O balanceamento está feito entre as 4 operadoras, caso voce queira entregar 500mb ou mais para um cliente voce teria que entregar ips de cada faixa acima no exemplo, para utilizar um pouco de cada operadora.
então se eu entrego apenas um /30 para um cliente e vendo os 500mb pela logica ele nunca vai dar esta velocidade.
Não, pois nenhuma das 4 operadoras no exemplo possui 500 MB, e este /30 vai sair somente pelo link que o bloco está anunciado.
Esqueça balance PCC e etc...BGP balanceamento de download é só pela quebra de prefixos.
Entao voce entregaria varios /30 parao cliente e ele utilizaria em varios pontos da Rede.
assim voce conseguiria entregar os 500 mb.
porém nenhum dos IPs sozinho dará 500 mb entende?
Netuai,
Se você entregar um único /30 para o cliente e ele fazer um NAT pra dentro de sua rede com esse /30, dai não vai balancear como o pessoal disse ai em cima, mas se esse seu cliente tiver ASN, e usar ips validos nos clientes dele, ai sim vai balancear, pois seriam vários ips saindo e não só o único do /30.
Gente
Possuo os seguintes links:
- GVT
- Titania (que por sua vez possui Embratel e GVT)
- PTT
Pela titânia, após conversa com eles... nosso AS passou a ser anunciado preferencialmente pela Embratel.
Então podemos dizer que temos GVT, Embratel e PTT.
Todos os peers estão devidamente configurado.
Dividimos nosso bloco de IP e anunciamos parte dele por um link e parte pelo outro link.
a principio está funcionando, mas temos os seguintes problemas:
- o Link GVT está consumindo 90% do upload da rede.
- Se de dentro da rede eu faço um tracert para o site ubnt, ele sai pela Embratel (Titania), se faço para uol ele sai pela GVT.
Resumindo, aparentemente não está seguindo a divisão dos blocos que queríamos... o qual era que um bloco saísse por um link e outro pelo outro link.
O que eu poderia estar fazendo errado?
Onde posso melhora-lo?
Segue meus filtros:
Código :add action=discard chain=AS26252-IN-PTT comment="Entrada AS26252" prefix=177.xx.xxx.0/21 prefix-length=21-32 add action=discard chain=AS26252-IN-PTT comment="Entrada AS26252" prefix=201.49.160.0/21 prefix-length=21-32 add action=accept chain=AS26252-OUT-PTT comment="Anuncios AS26252" prefix=177.xx.xxx.0/21 add action=discard chain=AS26252-OUT-PTT comment="Anuncios AS26252" add action=jump chain=AS26252-IN-GVT comment="Entrada AS26252" jump-target=rfc_5735 add action=jump chain=AS26252-IN-GVT comment="Entrada AS26252" jump-target=descarta_meus_prefixos add action=jump chain=AS26252-IN-TiT comment="Entrada AS26252" jump-target=rfc_5735 add action=jump chain=AS26252-IN-TiT comment="Entrada AS26252" jump-target=descarta_meus_prefixos add action=accept chain=anuncios_AS26252-GVT comment="Anuncios AS26252" prefix=177.xx.x08.0/24 add action=accept chain=anuncios_AS26252-GVT comment="Anuncios AS26252" prefix=177.xx.x09.0/24 add action=accept chain=anuncios_AS26252-GVT comment="Anuncios AS26252" prefix=177.xx.x12.0/24 add action=accept chain=anuncios_AS26252-GVT comment="Anuncios AS26252" prefix=177.xx.x13.0/24 add action=accept chain=anuncios_AS26252-GVT comment="Anuncios AS26252" prefix=177.xx.x15.0/24 add action=accept chain=anuncios_AS26252-GVT comment="Anuncios AS26252" prefix=177.xx.x10.0/24 set-bgp-prepend=3 add action=accept chain=anuncios_AS26252-GVT comment="Anuncios AS26252" prefix=177.xx.x11.0/24 set-bgp-prepend=3 add action=accept chain=anuncios_AS26252-GVT comment="Anuncios AS26252" prefix=177.xx.x14.0/24 set-bgp-prepend=3 add action=discard chain=anuncios_AS26252-GVT comment="Anuncios AS26252" add action=accept chain=anuncios_AS26252-TiT comment="Anuncios AS26252" prefix=177.xx.x10.0/24 add action=accept chain=anuncios_AS26252-TiT comment="Anuncios AS26252" prefix=177.xx.x11.0/24 add action=accept chain=anuncios_AS26252-TiT comment="Anuncios AS26252" prefix=177.xx.x14.0/24 add action=accept chain=anuncios_AS26252-TiT comment="Anuncios AS26252" prefix=177.xx.x08.0/24 set-bgp-prepend=3 add action=accept chain=anuncios_AS26252-TiT comment="Anuncios AS26252" prefix=177.xx.x09.0/24 set-bgp-prepend=3 add action=accept chain=anuncios_AS26252-TiT comment="Anuncios AS26252" prefix=177.xx.x12.0/24 set-bgp-prepend=3 add action=accept chain=anuncios_AS26252-TiT comment="Anuncios AS26252" prefix=177.xx.x13.0/24 set-bgp-prepend=3 add action=accept chain=anuncios_AS26252-TiT comment="Anuncios AS26252" prefix=177.xx.x15.0/24 set-bgp-prepend=3 add action=discard chain=anuncios_AS26252-TiT comment="Anuncios AS26252" add action=jump chain=AS26252-OUT-V6 jump-target=anuncios_V6_AS26252 add action=discard chain=AS26252-OUT-V6 add action=accept chain=anuncios_V6_AS26252 prefix=2804:59c::/32 add action=discard chain=descarta_meus_prefixos comment="Descarta meus Prefixos" prefix=177.xx.xxx.0/21 prefix-length=21-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=10.0.0.0/8 prefix-length=8-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=0.0.0.0/8 prefix-length=8-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=127.0.0.0/8 prefix-length=8-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=169.254.0.0/16 prefix-length=16-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=172.16.0.0/12 prefix-length=12-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=192.0.0.0/24 prefix-length=24-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=240.0.0.0/4 prefix-length=4-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=192.0.2.0/24 prefix-length=24-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=192.168.0.0/16 prefix-length=16-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=192.88.99.0/24 prefix-length=24-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=192.18.0.0/15 prefix-length=15-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=198.51.100.0/24 prefix-length=24-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=203.0.113.0/24 prefix-length=24-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=224.0.0.0/4 prefix-length=4-32 add action=discard chain=rfc_5735 comment=RFC_5735 prefix=255.255.255.255
Upload não tem balanceamento, tem preference. Se não definiu o preference, o BGP vai usar o algoritimo de best path para escolher o melhor caminho para upload. Sair alguns blocos por cada link (upload) não é possível diretamente. Isso é possível com download.
Pra ter uma ideia, nesse momento está sendo consumido 13Mega de upload na GVT e miseros 200k de Upload na Embratel.
PS: esse bloco está defindo para o Download vir pela GVT.
No caso para definir o Upload, eu deveria configurar o preference para algo mais ou menos assim:
add action=jump chain=AS26252-IN-GVT comment="Entrada AS26252" disabled=no jump-target=operadora_preferencial-GVT
add chain=operadora_preferencial-GVT prefix=177.xx.x10.0/24 set-bgp-local-pref=200
???
ou eu teria que usar o firewall para forçar o upload a sair por determinado link?
Gente... o local-preference vai setar a preferência do tráfego de saída. Infelizmente, ele é fixo. Se você setar EBT por exemplo, ele sairá por lá o tempo todo, só sai por outro lugar se não existir a rota lá. Andrio, a GVT está consumindo mais por que as rotas dela são melhores (caminhos mais específicos, com AS-PATH menor), e o que está saindo via EBT são rotas que estão melhores por lá. Há alguns macetes de upload que eu costumo ensinar em meus treinamentos pra melhorar essa questão do upload aí. Local-prerefence não tem nada a ver com os seus prefixos, e sim, com a tabela global, já que estamos falando de upload. E tipo, os filtros do seu prefixo no in, servem unica e exclusivamente pra bloquear caso alguém tenha feito um anúncio indevido do seu bloco, pois o protocolo BGP é um protocolo de prevenção de loops e não vai entregar pra você nenhum prefixo que tenha o seu ASN no AS-PATH, ou seja, tudo o que foi anunciado por você, não volta por você por outro lugar graças ao algoritmo do BGP.
E só um acréscimo: não tem como dizer que o "upload de um bloco sairá por um link", pois upload trata de rotas da tabela global, e não tem vínculo nenhum com seus prefixos. Vejam, que coloquei entre aspas a citação acima. Em BGP não rola, mas em firewall dá, através de marcação de pacotes.
Andrio, se fizer por Firewall não terás problemas não. E Arthur, ECMP trabalha legal, vc perde a decisão de saída pelo melhor caminho, mas vai balancear bem a saída.
Tente primeiramente LOCALPREF, senão der certo ECMP e por último FIREWALL.