bgp com mikrotik routeros
TRANSCRIPT
BGP comMikrotik RouterOS
versão 20161011
Enquanto não começa o Workshop
Temos 4 grupos de 3 roteadores cada. Assuma um deles
Caso não tenha Winbox, peça para o instrutor.
Faça um reset no roteador (sem configurações default)
Conecte o roteador ao SSID “BGP-Lab”. Senha PSK “mikrotikbrasil”
Em Wireless / Advanced Mode / configure o “radio name” com o número que está no seu roteador.
2
Mikrotik, RouterOS, Routerboards, etc.
3
Histórico
1993: Inicia como ISP Wireless em 915MHz em Riga, (Latvia)
1996: Fundada a empresa MikroTikls
1997: Criado o RouterOS
2002: Inicia desenvolvimento de Hardware próprio (Routerboards)
Atual: Desenvolvimento do software e principais hardwares em Riga. Produção de alguns hardwares na China.
©Copyright md brasil - direitos reservados 4
Mikrotik, RouterOS, SwitchOS e Routerboards
Mikrotik:Nome original da empresa (em letão “pequena rede”);
RouterOS:Sistema operacional, baseado em Linux, que pode ser instalado em arquitetura x86 e nas Routerboards;
SwitchOS:Sistema operacional de equipamentos Mikrotik que suportam somente switching;
Routerboard: Marca registrada do hardware fabricado pela Mikrotik.
©Copyright md brasil - direitos reservados 5
Roteamento dinâmico com Mikrotik RouterOS
6
7
Roteamento com RouterOS
8
Roteamento com RouterOS
9
Roteamento com RouterOS
InternetSistemas Autônomos
Protocolo BGP
10
A Internet é formada por várias redes distintas que se interligam. Cada uma destas redes tem uma administração técnica independente e são chamadas de Sistemas Autônomos.
Seu AS
Sistemas Autônomos e a Internet
©md1302192041AS-1
AS-2
AS-3
11
AS-1
O protocolo BGP é o “idioma” que AS, fala com AS, para que as redes troquem informações de roteamento e todos os destinos sejam alcançáveis
AS-2 Seu AS
AS-3BGP
BGP BGPBGP
BGP
Sistemas Autônomos, Internet e o protocolo BGP
©md1302192041
12
Sistema Autônomo (AS)
Uma definição formal para um Sistema Autônomo (AS) pode ser dada por:
“coleção de prefixos de roteamento conectados pelo Protocolo IP, sob o controle de um ou mais operadores de rede que apresenta uma política comum e claramente definida de roteamento para a Internet”
Na prática, você se torna um AS, através de um processo administrativo que encaminha à entidade regional que controla os recursos de numeração da Internet (no nosso caso a LACNIC)
Sistema Autônomo
©md1302192042
13
Sistemas Autônomos
(AS)
Números para sistemas autônomos:
Inicialmente foram reservados 16 bits para os números AS (máximo de 65.535);
AS’s de 64512 a 65535 são números reservados para AS’s privados;
Com a previsão do esgotamento dos AS’s de 16 bits, criaram-se os AS’s de 32 bits;
Na Internet convivem AS’s de 32 e 16 bits, mesmo com roteadores que não suportam AS’s de 16 bits, através de uma técnica de transição;
Sistemas Autônomos
©md1302192042
14
RouterOS suporta AS de 32 bits.
Protocolo BGP
15
Para lidar com todo o tráfego da Internet, o BGP deve:
A Internet e o protocolo BGP
Ser um protocolo escalável e capaz de lidar com uma quantidade enorme de rotas, sempre crescente;
Ter robustez e confiabilidade;
Prover ferramentas que possibilitem de certa influenciar em tráfegos externos que não estão sob o controle direto do administrador;
16
Características do BGP
Pode ser considerado um protocolo do tipo “vetor de distância”, nos quais cada AS representa um salto de roteamento;
O BGP não leva em conta a topologia interna de cada AS, existindo apenas a informação de como alcançar as redes;
A corrente versão do BGP é a versão 4, especificada na RFC-4271
A Internet e o protocolo BGP
17
Princípios básicos:
Protocolo BGP
Opera trocando informações sobre a alcançabilidade das redes por mensagens de NLRI (Network Layer Reachability Information)
As mensagens de NLRI possuem um ou mais prefixos de redes e atributos do BGP com os quais esses prefixos estão associados;
As informações são transportadas sobre uma conexão TCP (porta 179) que garante a integridade dos dados;
Peers são configurados de forma estática pelos seus administradores.
18
Administradores configuram ambos os lados;
A sessão TCP é estabelecida e depois dela a sessão BGP;
Informações de rotas são trocadas até a convergência total;
Após isso, somente informações de UPDATE para manutenção;
Mensagens de keepalive indicam a disponibilidade do peer.
AS-2AS-1
©md1302200234
Protocolo BGP
19
Estados da sessão BGP
3 - Active 2 - Connect
4-OpenSent 1-Idle
5-OpenConfirm
6-Established
KEEPALIVE
KEEPALIVE
OPEN
Esperando pela conexão TCP
Esperando pelo evento start
Tentando adquirir um peer
Negociação de vizinho completa
KEEPALIVE
UPDATE©md1302200235
20
Mensagens do BGP
OPEN
Primeira mensagem enviada após o estabelecimento da conexão TCP e confirmada com um KEEPALIVE;
KEEPALIVE
Mensagens trocadas de 60 em 60 segundos para verificar o estado do peer;
UPDATE
Informação de prefixos de rede em si;
NOTIFICATION
Enviada quando ocorre um erro
Mensagem opcional:
ROUTE REFRESH
Pede ao vizinho para enviar as rotas novamente
AS-2AS-1
©md1302200234
21
Componentes da mensagem OPEN
BGP Router ID: Configurado pelo administrador (formato de
IPv4). Se deixado branco, assume como Router ID o maior
endereço IP configurado no roteador.
My AS: Número AS do remetente
Hold Time: Tempo máximo entre mensagens sucessivas de
keepalive e update do remetente. Default = 180 segundos.
Caso Hold Time = 0 roteador não envia keepalive;
Version: Versão do BGP (corrente BGPv4)
Autenticação: Caso esteja sendo usada autenticação MD5
entre os peers
22
Componentes das mensagens de UPDATE
NLRI (Network Layer Reachability Information):
Lista dos prefixos de rede alcançáveis por esse caminho
Withdrawn Routes:
Lista dos prefixos de rede que estão sendo retiradas de serviço
Path Attributes:
Atributos dos prefixos anunciados (ou retirados).
Prefixos de rede Atributo1, Atributo2, Atributo3, .....
23
Tipos de atributos
Atributos
Bem conhecidos
(Well Known)
Mandatórios
Discricionários
Opcionais
Transitivos
Intransitivos
Reconhecidos por todas
implementações BGP
Reconhecidos
opcionalmente
Presentes em todas
mensagens de update
Podem ou não estar
presentes nas
mensagens de update
Propagados para outros
roteadores, mesmo se
não suportados
Não propagados para
outros roteadores©md1302201203
24
Entendendo o atributo AS-Path
©md1302200202
AS-100
AS-400
AS-200
AS-300
Rede 1.1.0.0/20
AS-Path 200, 100
AS-Path 300, 200, 100
REDE 1.1.0.0/20 AS-Path=300,200,100
AS-Path 100
25
Entendendo o atributo AS-Path
• Ao receber o a anúncio da rede 1.1.0.0/20, com o AS-Path 300, 200, 100, o AS-400 sabe que para chegar a essa rede tem que passar pelos AS’s 300, 200 e 100
26
Prevenção de loopings de roteamento
©md1302200202
AS-100
AS-400
AS-200
AS-300
Rede 1.1.0.0/20
AS-Path 200, 100
AS-Path 300, 200, 100
AS-Path 100
AS-Path 400, 300, 200, 100
Ao ver seu próprio número AS, dentro do AS-Path, o BGP descarta o anúncio
27
Next-Hop em rede compartilhada
©md1302201755
AS-10
AS-30
Rede 1.1.0.0/20
AS-20
10.1.1.1/24
10.1.1.2/24
10.1.1.3/24
REDE 1.1.0.0/20 AS-Path=10 Next-Hop=10.1.1.1
Estando na mesma subnet, o next-hop se mantém inalterado para otimizar o encaminhamento de pacotes.
Onde acontece essa situação?
REDE 1.1.0.0/20 AS-Path=20,10 Next-Hop=10.1.1.1
28
sessão BGP
sessão BGP
Algoritmo de decisão do BGP
Uma vez que uma rota seja recebida por um roteador BGP:
1) É feito o processo de next-hop lookup (roteamento módulo A) para se determinar o se o gateway é alcançável e válido
2) É verificado se o atributo AS-Path não contém o endereço de AS local (para evitar loopings)
3) A rota não está descartada ou rejeitada por filtros de roteamento
4) Se não houver outra rota na FIB igual à recebida, ela é instalada e considerada o melhor caminho.
Prefixos de rede Atributo1, Atributo2, Atributo3, .....
29
Algoritmo de decisão do BGP
30
O Gateway é alcançavel?
O AS-Path contem meu AS?
A rota está descartada ou rejeitada por filtros de
roteamento?
NÃO
SIM
Essa rota existe na FIB?
NÃO
NÃO
SIM
Rota é recebida
Instala a rota
Compara com a rota existente com base nos critérios do BGP e
escolhe a melhor
SIM
NÃO
Descarta a rota
SIM
Copyright md1610111614
Critérios de decisão do BGP
1) Prefere a rota com maior WEIGHT (default = 0);
2) Prefere a rota com maior LOCAL-PREFERENCE (default = 100);
3) Prefere a rota com o menor AS-Path;
4) Prefere a rota originada localmente por agregação de rota ou por anúncio do próprio BGP;
5) Prefere a rota com a menor ORIGIN (igp < egp < incomplete);
6) Prefere a rota com a menor MED (default = 0);
7) Prefere a rota aprendidas por eBGP do que por iBGP;
8) Prefere a rota que vem do roteador com menor Router ID;
9) Prefere a rota com a menor lista de cluster de refletor de rotas (default = 0);
10) Prefere a rota que vem do vizinho com menor endereço IP.
Rotas que sejam recebidas e que tenham passado pelos critérios de
descarte são comparadas seguindo a sequencia abaixo:
31
eBGP
eBGP
BGP externo e BGP interno
©md1302201839
AS-10
AS-40
AS-30
R2
R1
R3
eBGP
iBGP
iBGP:Peerings entre roteadores do mesmo AS
eBGP:Peerings entre roteadores de AS’s externos
AS-20
32
Técnica de Split Horizon para o BGP
Split Horizon é uma técnica utilizada em roteamento para evitar que um esquema de roteamento crie loops, tornando efetivamente roteamento mais eficiente.
Quando um roteador em uma rede recebe um pacote de informação de roteamento, ele não envia a mesma informação de volta pelo caminho no qual a informação foi recebida (ou seja, ao roteador adjacente que enviou a informação). Ele somente envia as informações para outros caminhos para que não haja a possibilidade do pacote ser roteado de volta ao caminho originador.
No BGP, o roteador tem dois “mundos” (dois horizontes) - o que é eBGP e o que iBGP
33
1) Um BGP speaker pode anunciar para seus vizinhos iBGP os prefixos IP que aprendeu a partir de eBGP speakers.
eBGP
Regras do Split Horizon para o BGP
©md1302201839
AS-10
AS-40
AS-30
AS-20
R2
R1
R3
34
2) Um BGP speaker pode anunciar para seus vizinhos eBGP os prefixos IP que aprendeu a partir de iBGP speakers.
eBGP
Regras do Split Horizon para o BGP
©md1302201839
AS-10
AS-40
AS-30
AS-20
R2
R1
R3
35
3) Um iBGP speaker NÃO pode anunciar para seus vizinhos iBGP os prefixos IP que aprendeu a partir de iBGP speakers.
eBGP
Regras do Split Horizon para o BGP
©md1302201839
AS-10
AS-40
AS-30
AS-20
R2
R1
R3
36
Cenários que iremos estudar (ou pelo menos tentar) nesse
workshop.
37
Evolução dos cenários
• Cenário 1 – Single Homed
Internet
Operadora Transito 1
SEU AS
©md1302192043
38
• Cenário 2 – Single Homed + PTT
Internet
Operadora Transito 1
SEU AS
PTT
AS1
AS1©md1302192044
Evolução dos cenários
39
• Cenário 3 – Dual Homed + PTT
Internet
Operadora Transito 1
SEU AS
PTT
AS1
AS2
Operadora Transito 2
©md1302192045
Evolução dos cenários
40
Cenário ISingle-Homed
41
Preparação do cenário inicial
R11, ASN=65011
PtP 172.16.11.2/30
R12, ASN=65012
PtP 172.16.12.2/30
R22, ASN=65022
PtP 172.16.22.2/30
R21, ASN=65021
PtP 172.16.21.2/30
RGR, ASN=650GR
PtP 172.16.GR.2/30
Grupo 1 Grupo 2
R00, ASN=65000
172.16.0.GR.1/30
42
Configurando a instancia e o Router ID
Grupo=G Router=R
ASN=650GR
Router ID=10.0.G.R
O RouterOS possibilita várias instancias do BGP no mesmo roteador;
Router ID é um identificador do roteador em forma de IP. Caso deixado em
branco será automaticamente computado escolhendo o menor IP
configurado no roteador;
Recomenda-se sua configuração.
R00, ASN=65000
PtP 172.16.21.2/30Exemplo para o R21
43
Configurando o peer BGP
Grupo=G Router=R
AS remoto = 65000
IP remoto = 172.16.GR.1
Informar o número do AS e o endereço IP remotos e checar se a
sessão e estabelecida
R00, ASN=65000
PtP 172.16.21.2/30
Conf do R21 Conf do R00
44
Configurando e publicando a rede do AS
21.21.0.2/20
21.21.0.1/20
Em networks indica-se quais redes oBGP deve originar (anunciar) a partirdesse roteador;
Com Synchronization habilitada umarede é anunciada somente se acorrespondente rota esteja presente naFIB;
Desabilitando o Synchronization, a redeé anunciada independentemente deestar na tabela;
Desabilitar a Sincronização ajuda o BGPconvergir mais rapidamente.
45
Configurando e publicando a rede do AS
21.21.0.2/20
21.21.0.1/20
Anunciar essa rede em Networks
Cadastrar o primeiro /24 dessa redeno Roteador (GR.GR.0.1/24)
Cadastrar o segundo /24 dessa redeno Laptop (GR.GR.0.2/24)
Rede “pública” de cada AS:
GR.GR.0.0/20
46
Testando os resultados
Testar a conectividade entre laptops;
Verificar a tabela de rotas recebidas;
Simular um sequestro de rotas e discutir o comportamento do BGP;
Escolher Full routing ou partial routing?
Propor medidas para melhorar o atual setup.
47
Filtrando os anúncios
Por default nada é filtrado e, uma vez que se estabeleçaum peer BGP, todos os anúncios desse peer serãorecebidos e irão para a RIB do BGP (e eventualmente aFIB). Da mesma forma, todas as redes anunciadas emnetworks serão publicadas para todos os peers ativos.
Os filtros de roteamento permitem que sejam controladostanto os anúncios que ingressam, como os que saem doroteador.
OperadoraTR1
Seu AS
©md1302192046
48
Entendendo os filtros
Classificadores por características do prefixo, protocolo, marcas de roteamento, etc.
Classificadores por características dos atributos BGP existentes na rota.
Ações a serem tomadas com a rota, no sentido de aceitar, descartar, etc.
Ações a serem tomadas para modificar os atributos do BGP da rota.
Classificadores Ações
49
Trabalhando com filtros
Quais seriam os filtros apropriados para essa topologiasingle-homed em questão?
Implementar e checar os resultados;
Propor uma medida para combater o sequestro de rotas.
OperadoraTR1
Seu AS
©md1302192046
50
Melhorando o setup
Testar conectividade para a “Internet”pingando o IP 99.99.0.1
Fazer filtro descartando todas as rotasrecebidas
Cadastrar uma rota default
Testar novamente a conectividade para a“Internet”
51
Melhorando o setup
Quando temos uma rota default roteamospara todos os destinos, os “bons” e os“maus”;
Muitos endereços IP no mundo são utilizadospara SPAM, Malwares e outros tipos deataques.
Podemos refinar nosso setup para evitarmosrotear para esses endereços.
52
Tratamento de endereços BOGONS
Endereços BOGONS são endereços públicos não reservados mas que ainda não foram alocados para tráfego.
Traditional bogons: Lista de prefixos ainda não alocados para os RIR’s;
Full bogons: lista de prefixos ainda não alocados pelos RIR’s para provedores/clientes finais
Daremos um tratamento especial aos prefixos BOGONS, não descartando-os, mas colocando-os em blackhole.
53
Tratamento de endereços BOGONS
• Para a obtenção de informações de prefixos bogons de forma automática, estabeleceremos uma sessão BGP com a Cymru –
http://www.team-cymru.org/
O roteador da cymru, passará as rotas bogons, com uma determinada COMMUNITY (65332:888)
54
Atributo Community
Uma community nada mais é que um rótulo, um número que serve como marcador para uma rota ou grupo de rotas e que identificará essa rota ou grupo de rotas para alguma ação específica.
Exemplo: O Cymru insere a Community 65332:888 nas rotas que ela publica como BOGONS. Todas rotas recebidas do Cymru, que estejam com essa Community são tratadas como BOGONS e a elas é dada uma ação específica.
Communities são números de 32 bits e por convenção, o formato é de dois números de 16 bits separados por “:”, da seguinte forma:
• AS_que_definiu_a_Community:Número_qualquer
55
Fechando a sessão com o Cymru
1) Tentar fechar uma sessão com o Cymru (todos roteadores)
AS: 65332
IP: 38.229.66.20
Quais os problemas encontrados para o fechamento?
Qual endereço IP VOCÊ passou para o Cymru para fechar a sessão BGP?
56
BGP Multihop
Quando a sessão BGP não é fechada na interface diretamente conectada é necessário informar ao BGP que a conexão é multihop e qual é o número de saltos para encontrar o peer.
57
Filtrando as rotas do Cymru
• Aceitando as rotas do Cymru e colocando-as em blackhole: Evitando outras
entradas e saídas:
58
Fechando a sessão com o Cymru
Verificar se recebeu as rotas do Cymru antes dos Filtros
Verificar se depois dos filtros as rotas estão sendo recebidas com a flag “B” de Blackhole
59
Conectividade IPv6 através de uma
estrutura somente IPv4
60
Conectividade IPv6 através de uma estrutura somente IPv4
Supondo que seu provedor de upstream não forneça IPv6 nativo, mas somente IPv4
Qual é a solução para conectividade IPv6?
61
Fechando a sessão com a HE
1) Configurar um túnel 6to4 com a HE (todos roteadores)
IP remoto: 216.218.229.118
IP local: o IP do seu AS que foi informado
2) Configurar IPv6 local
IPv6 local = 2001:db8:GR::GR/64 -
3) Fechar sessão BGP
AS: 6939
IPv6 = 2001:db8:GR::1
(Marcar a address Family IPv6)
62
Fechando a sessão com a HE
1) Verificar as rotas IPv6 recebidas
2) Publicar suas redes IPv6 2001:GR::0/32
3) Configurar um IPv6 no seu roteador 2001:GR::1/64
4) Checar conectividade V6 2001:a::1
63
Cenário II
Single-Homed + PTT
64
Definição de PTT
PTT – Ponto de Troca de Tráfego (em inglês IXP - Internet Exchange Point)
Solução de Rede com o objetivo de viabilizar a conexão direta entre as entidades que compõe a Internet – os Sistemas Autônomos (AS)
Um PTT otimiza a interconexão entre AS, possibilitando:
Melhor qualidade (menor latência) - evita intermediários externos;
Menor custo;
Maior organização da estrutura de rede regional (pontos concentradores).
65
Evolução dos cenários
• Cenário 2 – Single Homed + PTT
Internet
Operadora Transito 1
SEU AS
PTT
AS1
AS1©md1302192044
66
Configurando a conectividade física
Nosso provedor hipotético tem a conectividade física adquirida do operador TR1, de quem compra IP dedicado para acesso à Internet e irá adquirir desse mesmo fornecedor transporte de camada 2 até o PTT.
Desta forma, pelo mesmo enlace deverão circular os dois serviços separadamente.
Usaremos para tanto Vlan’s diferentes para as duas finalidades.
67
Dados para a configuração das Vlan’s
• Vlan de trânsito:
Nome*: VlanGR
VlanID: GR
IP = 172.16.GR.2 (o mesmo anterior passado para a Vlan)
• Vlan com o PTT:
Nome*: VlanPTT
VlanID: 100
IP = 172.30.0.GR/23
*opcional
68
Configurando as conexões com os participantes do PTT
No PTT temos vários tipos de acordo de troca de tráfego e o mais comum para provedores de acesso é o ATM – Acordo de Troca de Tráfego Multilateral.
Nosso provedor hipotético aderiu ao ATM, ou seja, trocará tráfego entre todos os participantes aderentes ao ATM. Em princípio isso pressupõe que cada AS feche uma sessão BGP com todos os outros.
Em nossa sala de aula, quantas conexões TCP teremos que estabelecer?
Imaginando que temos 500 participantes do ATM em um PTT de fato, quantas conexões TCP ao todo teriam que ser suportadas pela estrutura do PTT?
69
Refletores de Rotas e Servidores de Rotas
Basicamente ambos possuem a mesma função que é a distribuição de rotas, porém há uma diferença conceitual fundamental
Route Reflector
Um refletor de rotas é usado dentro do iBGP (mesmo AS) para distribuir rotas entre os roteadores que compõe o mesmo AS.
O comportamento normal dos roteadores no iBGP é não repassar internamente no mesmo AS, as rotas aprendidas de outros roteadores desse AS
Um roteador configurado como route reflector repassa esses anúncios. É utilizado para evitar que se tenha que fazer Full mesh.
70
Refletores de Rotas e Servidores de Rotas
Route Server
Um servidor de rotas normalmente existente em um ambiente de PTT distribui as rotas entre os participantes do ATM. Todos fecham sessão com os route servers que repassa as rotas para todos os outros.
O route server atua com um AS normal, porém não se insere como AS-Path no meio do caminho;
Ainda em fase de draft no IETF as especificações sobre interconexões multilaterais:
https://tools.ietf.org/html/rfc7947
71
Configurando a conectividade com o PTT
Desta forma, ao invés de estabelecermos conexões um a um, faremos todos conexões com um roteador do PTT que servirá para propagar as rotas de todos os outros.
Dados para a conectividade:
AS do PTT: 65555
IP do servidor de rotas do PTT: 172.30.0.1
72
Analisando os resultados
Verificar as tabelas de rotas;
Qual foi a rota preferida por exemplo para o AS65011, chegar na rede do AS 65021?
Fazer uma análise dos AS-Path’s de cada rota. Oque precisa ser ajustado para que o PTT sejasempre escolhido como a melhor rota?
O que acontece se o AS 65011 corta seu transitoIP com a Internet mas mantém a conexão com oPTT?
73
Analisando os resultados
O que acontece se o AS 65011 corta seu transitoIP com a Internet mas mantém a conexão com oPTT?
74
Trabalhando com filtros
Quais seriam os filtrosapropriados que evitamo efeito de transitoindesejado?
Implementar e checaros resultados
TR1
Seu AS
©md1302192046
PTT
75
Alguns filtros para os upstreams
Implementaremos como padrão alguns filtros de entradas comuns para upstreams de quem compramos conectividade
Descartar o recebimento do seu próprio prefixo (e sub redes);
Descartar redes privadas e reservadas previstas na RFC 5735;
Descartar a rota default (pois estamos recebendo full routing);
Descartar anúncios de redes menores que /24;
Descartar anúncios que tenham mais de X AS’s no AS-Path;
• Questão: É necessário descartar o recebimento do próprio número AS no AS-Path?
76
Cenário III
Dual-Homed + PTT
77
Cenário III – Dual Homed + PTT
Neste cenário os roteadores pares de cada grupo serão operadores de transito para os ímpares de cada grupol
R12, ASN=65012
PtP 172.16.12.2/30
R13, ASN=65013
PtP 172.16.13.2/30
R11, ASN=65011
PtP 172.16.11.2/30
TR1
TR2
78
Cenário III – Dual Homed + PTT
Internet
Operadora Transito 1
SEU AS
PTT
AS1
AS2
Operadora Transito 2
©md1302192045
79
Cenário III – Dual Homed + PTT
Internet
TR1
R11
PTT
AS1 AS2
R12 (TR2)
©md1302192045
80
R13
Cenário III – Dual Homed + PTT
Estabelecer os peers BGP
Adaptar os filtros existentes
R11, ASN=65011
PtP 172.16.11.2/30
R12, ASN=65012
PtP 172.16.12.2/30
R22, ASN=65022
PtP 172.16.22.2/30
R21, ASN=65021
PtP 172.16.21.2/30
Grupo 1 Grupo 2
81
Manipulação de tráfego de download e upload
82
Manipulação de tráfego
• Princípios básicos:
1) Nosso download é consequência de como o resto do mundo nos enxerga e portanto, resultado de como manipulamos nossos anúncios;
2) Nosso upload é consequência de como enxergamos o resto do mundo e portanto, resultado de como aceitamos as rotas que nos anunciam;
3) O tráfego de download e upload não tem qualquer relação entre si;
83
Manipulação de tráfego
1) Prefere a rota com maior WEIGHT (default = 0);
2) Prefere a rota com maior LOCAL-PREFERENCE (default = 100);
3) Prefere a rota com o menor AS-Path;
4) Prefere a rota originada localmente por agregação de rota ou por anúncio do próprio BGP;
5) Prefere a rota com a menor ORIGIN (igp < egp < incomplete);
6) Prefere a rota com a menor MED (default = 0);
7) Prefere a rota aprendidas por eBGP do que por iBGP;
8) Prefere a rota que vem do roteador com menor Router ID;
9) Prefere a rota com menor lista de cluster de refletor de rotas (default = 0);
10) Prefere a rota que vem do vizinho com menor endereço IP.
A manipulação de tráfego se dará pelo tratamento dos atributos do BGP
que são analisados na seguinte ordem:
84
Manipulação de tráfego
• No RouterOs os atributos são manipulados com a configuração de filtros de roteamento da seguinte forma:
1) Se downloads são consequências de como anunciamos nossas rotas para o mundo, filtros para controlar downloads tem que ser colocados nas saídasde nossos peers;
2) Se uploads são consequências de como recebemos as rotas do mundo, filtros para manipular uploads tem que ser colocados nas entradas de nossos peers;
85
Manipulação de tráfego
• Ferramentas para diagnóstico de resultados de uma política de roteamento:
• 1) Ferramentas (mais ou menos) mentirosas:
Ping, traceroute, torch, bandwidth test.
• 2) Onde consultar:
Resultados de políticas de upload: Nossa tabela de rotas
Resultados de políticas de download: Nossas rotas nos Looking glasses
86
Manipulação de uploads
• Para influenciar diretamente em um roteador, manipulando como este envia seu tráfego, temos basicamente dois atributos que podem ser manipulados:
Weight
Local-Preference
• Ambos terão o mesmo efeito prático quando se tratar de um roteador único, sendo que o Weight é o primeiro critério a ser analisado da lista dos atributos do BGP.
87
Manipulação de uploads - Weight
• Weight
• Dá um “peso” determinado para as rotas recebidas por um determinado peer. Rotas com maior peso, tem preferência. O padrão é Weight=0
• Weight de fato não é um atributo verdadeiro do BGP, pois não se propaga dentro do anúncio BGP. Vale apenas para o roteador onde foi configurado.
TR1
©md130230052
PTT
1.1.0.0/20Weight=10
1.1.0.0/20Weight=0
88
Manipulação de uploadsLocal-Preference
• Local-Preference
• Seta uma preferência para as rotas recebidas por um determinado peer. Rotas com maior Local-Preference, tem preferência. O padrão é Local-Preference=100
• Local-Preference é um atributo que se propaga dentro do AS em que foi definido, sendo informado a todos roteadores. Não se propaga para outros AS’s.
TR1
©md130230108
PTT
1.1.0.0/20LP =150
1.1.0.0/20LP = 100
89
Manipulação de uploads - LAB
• Weight e Local Preference
• Verifique por onde está fluindo o seu tráfego nesse momento.
• Utilizando Weight force com que esse tráfego saia pelo outro caminho.
• Repita o procedimento, só que usando Local Preference.
90
Manipulação de downloads
• Basicamente há 3 formas de se influenciar em como os downloads chegam em seu AS;
Controle de publicações de redes mais ou menos específicas;
Manipulações de envio do atributo AS-Path
Manipulação do atributo MED
91
Manipulação de downloadsAtributo MED
MED (Multi Exit Discriminator) é uma sinalização de um AS para outro vizinho;
Indica o caminho preferencial para a entrada do tráfego em um AS;
O caminho sinalizado com a menor MED será o escolhido pelo AS vizinho para o envio do tráfego. Default = 0;
Funciona somente quando há duas ou mais conexõesentre dois AS’s.
TR1
©md1302230153
PTT
MED=20
MED=30
AS-X
92
Manipulação de downloadsAtributo MED
• Funcionamento do atributo MED
• No exemplo ao lado o Roteador do PTT compara os valores de MED recebidos do AS-X e escolhe para envio do tráfego o de MED = 20
• O valor de MED = 10 anunciado por TR1 é ignorado pois MED é critério de decisão somente quando há 2 ou mais conexões entre AS’s.
TR1
©md1302230153
PTT
MED=20
MED=30
MED=10
AS-X
93
Manipulação de downloadsAnúncios mais ou menos específicos
• Seja o cenário abaixo no qual o administrador do AS-X quer “equilibrar” os downloads e ainda ter redundância, utilizando política de anúncios.
• Supondo que os endereços IP estão igualmente distribuídos no AS, ele faz os anúncios da primeira metade do /20 por um peer e da segunda pelo outro.
• Para que haja redundância, o anúncio do /20 total é feito pelos dois peers
TR1
©md130230052
TR2
1.1.0.0/211.1.0.0/20
1.1.8.0/211.1.0.0/20
AS-X
94
Manipulação de downloads por anúncios mais ou menos específicos - LAB
Faça o anúncio de metade dos seus prefixos para a operadora de transito-2 e a outra metade para a operadora de transito-1. Anuncie o /20 total pelas duas;
Cheque os resultados;
O que acontece com o PTT?;
Discutir os efeitos colaterais desse tipo de política
95
Manipulação de downloadsTécnica de AS-Path prepend
• Técnica de AS-Path prepend – antes de fazer prepend
AS-20
AS-10
©md1302230258
AS-30
1 Gbps
100 Mbps1.1.0.0/20
Direção do tráfego
96
Manipulação de downloadsTécnica de AS-Path prepend
• Técnica de AS-Path prepend – “prependando” 2 vezes o número AS
AS-20
AS-10
©md1302230258
AS-30
1 Gbps
100 Mbps1.1.0.0/20
Direção do tráfego
97
Manipulação de downloads porTécnica de AS-Path prependLAB
Desfaça os anúncios específicos do LAB anterior;
Verifique como suas rotas estão aparecendo nos looking glasses e constate que os participantes do PTT o encontram pelo PTT;
Utilizando a técnica de AS-Path prepend, faça com que todo o tráfego, inclusive dos participantes do PTT seja encaminhado pelo operador de transito 2.
98
Cenário IV
iBGP com 4 roteadoresoperadora de transito com 2
links e PTT
99
Cenário IV – iBGP com 4 roteadores, duas conexões de trânsito + PTT
Montar a estrutura física abaixo
Retirar todos os filtros existentes
ASN = 65002
Grupo 1Grupo 2
ASN = 65001
100
Cenário IV – conectividade IP
Grupo G
ASN = 6500G
192.168.G.0/30
192.168.G.8/30
192.168.G.4/30 192.168.G.12/30
12
5
6
9 10
13
14
RG1RG2
RG3 RG4
101
Interfaces de Loopback
• Em roteamento dinâmico é bastante comum o uso de interfaces de loopback, que são interfaces virtuais associadas a um roteador.
• Interfaces de loopback permanecem sempre ativas (up), mesmo que as interfaces físicas estejam inativas (down). Isso possibilita que um roteador, que seja referenciado por uma interface de loopback, seja alcançado por diferentes caminhos em caso de falhas de alguma(s) interface(s).
• O Mikrotik RouterOS possui uma interface de loopback nativa que não é acessível para configurações, mas podem ser criadas outras interfaces de loopback. Existem várias formas de se fazer isso, sendo a mais fácil a criação de uma bridge sem qualquer interface associada a ela.
• /interface bridge add name=loopback102
Cenário IV – Interfaces de loopback
• Criar as interfaces de loopback e configurar os IP’s da seguinte forma:
• Grupo = G
• Roteador = R
• IP = 10.0.G.R
103
Cenário IV – iBGP 4 roteadores + trânsito + PTT
InternetPTT
AS1
AS2
©md1302192258
TR1
104
iBGP:Peerings entre roteadores do mesmo AS
eBGP:Peerings entre roteadores de AS’s externos
eBGP
eBGP
BGP externo e BGP interno
©md1302201839
AS-10
AS-40
AS-30
AS-20
R2
R1
R3
eBGP
iBGP
105
eBGP e iBGP
• Questões para discussão:
1) Havendo protocolos específicos para roteamento interno como o OSPF, por exemplo, qual a razão pela qual necessitaríamos usar o iBGP?
2) Os protocolos de roteamento interno normalmente permitem que as rotas recebidas externamente por BGP sejam distribuídas internamente. Porque então não usar essa opção ao invés de iBGP?
3) O comportamento de um roteador falando iBGP é diferente em relação ao eBGP. Qual seria o detalhe de configuração que faz com que o roteador “saiba” que ele deve se comportar como iBGP ou eBGP?
106
Técnica de Split Horizon para o BGP
• Split Horizon é uma técnica utilizada em roteamento para evitar que um esquema de roteamento crie loops, tornando efetivamente roteamento mais eficiente.
• Quando um roteador em uma rede recebe um pacote de informação de roteamento, ele não envia a mesma informação de volta pelo caminho no qual a informação foi recebida (ou seja, ao roteador adjacente que enviou a informação). Ele somente envia as informações para outros caminhos para que não haja a possibilidade do pacote ser roteado de volta ao caminho originador.
• No BGP, o roteador tem dois “mundos” – o que é eBGP e o que iBGP
107
1) Um BGP speaker pode anunciar para seus vizinhos iBGP os prefixos IP que aprendeu a partir de eBGP speakers.
eBGP
Regras do Split Horizon para o BGP
©md1302201839
AS-10
AS-40
AS-30
AS-20
R2
R1
R3
108
2) Um BGP speaker pode anunciar para seus vizinhos iBGP os prefixos IP que aprendeu a partir de eBGP speakers.
eBGP©md1302201839
AS-10
AS-40
AS-30
AS-20
R2
R1
R3
Regras do Split Horizon para o BGP
109
3) Um iBGP speaker NÃO pode anunciar para seus vizinhos iBGP os prefixos IP que aprendeu a partir de iBGP speakers.
eBGP©md1302201839
AS-10
AS-40
AS-30
AS-20
R2
R1
R3
Regras do Split Horizon para o BGP
110
Cenário IVConfigurações de conectividade
• Devido às regras de Split Horizon do iBGP, é necessário que haja Full Mesh entre os roteadores participantes do iBGP. Ou seja, cada roteador fechará sessão BGP com todos os outros.
• Para garantir a redundância de caminhos as sessões deverão ser estabelecidas nas interfaces de loopback. Portanto deveremos:
1) Para que as interfaces de loopback se “enxerguem” um IGP deverá ser configurado – utilizar para tanto o OSPF (configurar um OSPF básico);
2) Testar o OSPF configurado pingando a partir do seu roteador, todas as interfaces de loopback dos vizinhos;
3) Estabelecer as sessões iBGP e reportar os resultados.111
Cenário IV – forçando a loopback
• O protocolo BGP é estabelecido sobre uma sessão TCP. O endereço IP de origem da sessão normalmente é o da interface de saída. Portanto deveremos forçar que o IP de origem seja o IP da interface de loopback.
ou
112
Cenário IV – distribuições de rotas
• Uma vez estabelecidas todas as sessões iBGP, verificar como estão instaladas as rotas.
• Comparar as rotas nos roteadores que tem conectividade externa direta (1 e 4 de cada grupo) com os que não tem conectividade externa direta (2 e 3)
Qual é a diferença básica?
Analisar o porque desse comportamento.
113
Atributo Next-Hop
©md1302201736
AS-100
AS-400
AS-200
AS-300
Next-Hop=10.1.1.5
REDE 1.1.0.0/20AS-
Path=300,200,100
10.1.1.1
10.1.1.5
Next-Hop=10.1.1.1
Next-Hop=10.1.1.9
10.1.1.9
Next-Hop=10.1.1.9114
Atributo Next-Hop
O atributo Next-Hop indica o endereço IP do roteador que serve para o gateway daquela rede anunciada;
Normalmente o Next-Hop é o endereço IP do último roteador que fez o anúncio do prefixo de rede (comportamento típico do BGP entre AS’s diferentes);
No caso do iBGP os anúncios não são alterados e portanto o next-hop recebido pelo roteador de borda permanece o mesmo quando este anuncia para dentro da rede.
Prefixo de rede Next-Hop = 10.10.10.10 Outros atributos
115
Cenário IV – forçando o next-hop
• Para que o next-hop anunciado para dentro da rede seja alcançável, os roteadores de borda devem colocar-se como next-hop.
Aplicar esta configuração e checar os resultados nas rotas instaladas em todos os roteadores.
116
Cenário IV – laboratórios adicionais
• Com base em tudo que foi visto até o momento, cada AS deverá configurar os filtros e anúncios apropriados, que garantam:
1) Desabilitar a conectividade com o PTT. Depois disso, fazer com que os uploads de todos roteadores do AS sejam feitos via o link ser feitos pelo link estabelecido com a operadora pelo roteador G1, exceto o do roteador G4
2) Testar o OSPF configurado pingando a partir do seu roteador, todas as interfaces de loopback dos vizinhos;
3) Estabelecer as sessões iBGP e reportar os resultados.
117
Laboratório Final
Abram um new terminal
118
/system reset configuration no-defaults=yes
Obrigado!!
Edson Veloso Sergio Souza Wardner Maia
[email protected] [email protected] [email protected]
119