Você está na página 1de 119

BGP com

Mikrotik 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
Roteamento com
RouterOS

7
Roteamento com
RouterOS

8
Roteamento com
RouterOS

9
Internet
Sistemas Autônomos
Protocolo BGP

10
Sistemas Autônomos e a Internet

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.

AS-3
AS-1 ©md1302192041

AS-2 Seu
AS

11
Sistemas Autônomos, Internet
e o protocolo BGP

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

BGP
AS-3
AS-1
©md1302192041

BGP
BGP BGP

AS-2 Seu
BGP AS

12
Sistema Autônomo

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
Sistema encaminha à entidade
Autônomo (AS) regional que controla
os recursos de
©md1302192042
numeração da Internet
(no nosso caso a
LACNIC)
13
Sistemas Autônomos

Números para sistemas autônomos:

 Inicialmente foram reservados 16 bits


para os números AS (máximo de
65.535); Sistemas
Autônomos
 AS’s de 64512 a 65535 são números (AS)
reservados para AS’s privados;

 Com a previsão do esgotamento dos AS’s ©md1302192042


de 16 bits, criaram-se os AS’s de 32 bits;

 Na Internet convivem AS’s de 32 e 16 RouterOS


bits, mesmo com roteadores que não suporta AS
suportam AS’s de 16 bits, através de uma de 32 bits.
técnica de transição;

14
Protocolo
BGP

15
A Internet e o protocolo BGP

Para lidar com todo o tráfego da


Internet, o BGP deve:

 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
A Internet e o protocolo BGP

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
17
Protocolo BGP

Princípios básicos:

 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
Protocolo BGP

AS-1 AS-2
©md1302200234

 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.


19
Estados da sessão BGP

Tentando adquirir Esperando pela


um peer 3 - Active 2 - Connect conexão TCP

OPEN

Esperando
4-OpenSent 1-Idle pelo evento
start

KEEPALIVE
5-OpenConfirm KEEPALIVE
©md1302200235 UPDATE
KEEPALIVE
6-Established

Negociação de
vizinho completa
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
AS-1 AS-2
Enviada quando ocorre um erro
©md1302200234

Mensagem opcional:
 ROUTE REFRESH
Pede ao vizinho para enviar as rotas novamente

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

Prefixos de rede Atributo1, Atributo2, Atributo3, .....

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).
23
Tipos de atributos

Presentes em todas
Mandatórios mensagens de update

Bem conhecidos
(Well Known)

Podem ou não estar


Reconhecidos por todas
Discricionários presentes nas
implementações BGP
mensagens de update
Atributos

Reconhecidos Propagados para outros


opcionalmente Transitivos roteadores, mesmo se
não suportados

Opcionais

Não propagados para


©md1302201203 Intransitivos outros roteadores

24
Entendendo o atributo AS-Path

AS-100
AS-200
Rede AS-Path
1.1.0.0/20 100
AS-Path
200, 100
©md1302200202

AS-400 AS-300
AS-Path
300, 200, 100

REDE 1.1.0.0/20 AS-Path=300,200,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

AS-100
AS-200
Rede
1.1.0.0/20 AS-Path
100
AS-Path
200, 100
AS-Path ©md1302200202
400, 300, 200, 100

Ao ver seu próprio AS-400 AS-300


número AS, dentro do AS-Path
AS-Path, o BGP 300, 200, 100
descarta o anúncio
27
Next-Hop em rede compartilhada
10.1.1.1/24
REDE 1.1.0.0/20 AS-Path=10 Next-Hop=10.1.1.1
AS-10
Rede
1.1.0.0/20
sessão BGP
AS-20

sessão BGP
©md1302201755

AS-30 10.1.1.2/24

REDE 1.1.0.0/20 AS-Path=20,10 Next-Hop=10.1.1.1


10.1.1.3/24

Estando na mesma subnet, o next-hop se mantém


inalterado para otimizar o encaminhamento de pacotes.
 Onde acontece essa situação? 28
Algoritmo de decisão do BGP

Prefixos de rede Atributo1, Atributo2, Atributo3, .....

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.
29
Algoritmo de decisão do BGP

Rota é recebida

Copyright
md1610111614

O Gateway é alcançavel? Essa rota existe na FIB?

SIM
NÃO SIM

NÃO

SIM O AS-Path contem meu AS? Compara com a rota existente


com base nos critérios do BGP e
NÃO
escolhe a melhor

NÃO

A rota está descartada ou


Descarta a rota SIM rejeitada por filtros de
roteamento?
Instala a rota

30
Critérios de decisão do BGP

Rotas que sejam recebidas e que tenham passado pelos critérios de


descarte são comparadas seguindo a sequencia abaixo:

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.
31
BGP externo e BGP interno

iBGP:
Peerings entre roteadores
do mesmo AS

eBGP:
Peerings entre roteadores AS-20
de AS’s externos

eBGP
R2
eBGP AS-30
AS-10

R3
eBGP
R1 iBGP ©md1302201839

AS-40
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
Regras do Split Horizon para o BGP

1) Um BGP speaker pode anunciar


para seus vizinhos iBGP os prefixos
IP que aprendeu a partir de eBGP
speakers. AS-20

R2
AS-30
AS-10

R3
eBGP
R1 ©md1302201839

AS-40

34
Regras do Split Horizon para o BGP

2) Um BGP speaker pode anunciar


para seus vizinhos eBGP os
prefixos IP que aprendeu a partir
de iBGP speakers. AS-20

R2
AS-30
AS-10

R3
eBGP
R1 ©md1302201839

AS-40

35
Regras do Split Horizon para o BGP

3) Um iBGP speaker NÃO pode


anunciar para seus vizinhos iBGP
os prefixos IP que aprendeu a
partir de iBGP speakers. AS-20

R2
AS-30
AS-10

R3
eBGP
R1 ©md1302201839

AS-40

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

©md1302192043

SEU AS

38
Evolução dos cenários

• Cenário 2 – Single Homed + PTT

Internet PTT

Operadora
Transito 1

AS1
©md1302192044

AS1

SEU AS

39
Evolução dos cenários

• Cenário 3 – Dual Homed + PTT

Internet PTT

Operadora
Transito 1

AS2
©md1302192045 AS1

Operadora
Transito 2
SEU AS

40
Cenário I
Single-Homed

41
Preparação do cenário inicial

R00, ASN=65000
172.16.0.GR.1/30

Grupo 1 Grupo 2

R12, ASN=65012 R11, ASN=65011 R21, ASN=65021 R22, ASN=65022


PtP 172.16.12.2/30 PtP 172.16.11.2/30 PtP 172.16.21.2/30 PtP 172.16.22.2/30

RGR, ASN=650GR
PtP 172.16.GR.2/30

42
Configurando a instancia e o Router ID

R00, ASN=65000
Exemplo para o R21
PtP 172.16.21.2/30

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. 43


Configurando o peer BGP

R00, ASN=65000
Conf do R21 Conf do R00
PtP
172.16.21.2/30

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

44
Configurando e publicando a rede
do AS

Em networks indica-se quais redes o


BGP deve originar (anunciar) a partir
desse roteador;

Com Synchronization habilitada uma


rede é anunciada somente se a
correspondente rota esteja presente na 21.21.0.1/20
FIB;

Desabilitando o Synchronization, a rede 21.21.0.2/20


é anunciada independentemente de
estar na tabela;

Desabilitar a Sincronização ajuda o BGP


convergir mais rapidamente.
45
Configurando e publicando
a rede do AS

Rede “pública” de cada AS:


GR.GR.0.0/20

 Anunciar essa rede em Networks

21.21.0.1/20
 Cadastrar o primeiro /24 dessa rede
no Roteador (GR.GR.0.1/24)

21.21.0.2/20
 Cadastrar o segundo /24 dessa rede
no Laptop (GR.GR.0.2/24)

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

Seu AS Operadora
TR1

©md1302192046

Por default nada é filtrado e, uma vez que se estabeleça


um peer BGP, todos os anúncios desse peer serão
recebidos e irão para a RIB do BGP (e eventualmente a
FIB). Da mesma forma, todas as redes anunciadas em
networks serão publicadas para todos os peers ativos.

Os filtros de roteamento permitem que sejam controlados


tanto os anúncios que ingressam, como os que saem do
roteador.
48
Entendendo os filtros

Classificadores Ações
Classificadores por Ações a serem tomadas
características do prefixo, com a rota, no sentido de
protocolo, marcas de aceitar, descartar, etc.
roteamento, etc.

Classificadores por Ações a serem tomadas


características dos atributos para modificar os atributos
BGP existentes na rota. do BGP da rota.
49
Trabalhando com filtros

Seu AS Operadora
TR1

©md1302192046

Quais seriam os filtros apropriados para essa topologia


single-homed em questão?

 Implementar e checar os resultados;


 Propor uma medida para combater o sequestro de rotas.

50
Melhorando o setup

 Testar conectividade para a “Internet”


pingando o IP 99.99.0.1

 Fazer filtro descartando todas as rotas


recebidas

 Cadastrar uma rota default

 Testar novamente a conectividade para a


“Internet”

51
Melhorando o setup

Quando temos uma rota default roteamos


para todos os destinos, os “bons” e os
“maus”;

Muitos endereços IP no mundo são utilizados


para SPAM, Malwares e outros tipos de
ataques.

Podemos refinar nosso setup para evitarmos


rotear 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 entr


e 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 concentra
dores).

65
Evolução dos cenários

• Cenário 2 – Single Homed + PTT

Internet PTT

Operadora
Transito 1
AS1
©md1302192044
AS1

SEU AS

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 AS


65011, chegar na rede do AS 65021?

 Fazer uma análise dos AS-Path’s de cada rota. O


que precisa ser ajustado para que o PTT seja
sempre escolhido como a melhor rota?

 O que acontece se o AS 65011 corta seu transito


IP com a Internet mas mantém a conexão com o
PTT?
73
Analisando os resultados

 O que acontece se o AS 65011 corta seu transito


IP com a Internet mas mantém a conexão com o
PTT?

74
Trabalhando com filtros

Quais seriam os filtros


TR1 PTT apropriados que evitam
o efeito de transito
indesejado?

Seu AS  Implementar e checar


os resultados
©md1302192046

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

TR1

TR2

R13, ASN=65013 R12, ASN=65012 R11, ASN=65011


PtP 172.16.13.2/30 PtP 172.16.12.2/30 PtP 172.16.11.2/30

78
Cenário III – Dual Homed + PTT

Internet PTT

Operadora
Transito 1

AS2
©md1302192045 AS1

Operadora
Transito 2
SEU AS

79
Cenário III – Dual Homed + PTT

Internet PTT

TR1

©md1302192045 AS1 AS2


R12
(TR2)

R13 R11

80
Cenário III – Dual Homed + PTT

 Estabelecer os peers BGP

 Adaptar os filtros existentes

Grupo 1 Grupo 2

R12, ASN=65012 R11, ASN=65011 R21, ASN=65021 R22, ASN=65022


PtP 172.16.12.2/30 PtP 172.16.11.2/30 PtP 172.16.21.2/30 PtP 172.16.22.2/30

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

A manipulação de tráfego se dará pelo tratamento dos atributos do BGP


que são analisados na seguinte ordem:
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.
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ídas
de 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

©md130230052

• Weight
TR1 PTT

• Dá um “peso” determinado
para as rotas recebidas por
um determinado peer. Rotas
com maior peso, tem 1.1.0.0/20 1.1.0.0/20
preferência. O padrão é Weight=10 Weight=0
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. 88
Manipulação de uploads
Local-Preference

• Local-Preference ©md130230108

TR1 PTT
• 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 1.1.0.0/20 1.1.0.0/20
LP =150 LP = 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.

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 downloads
Atributo MED
 MED (Multi Exit Discriminator)
é uma sinalização de um AS ©md1302230153

para outro vizinho;


TR1 PTT
 Indica o caminho preferencial
para a entrada do tráfego em
MED=30
um AS;
MED=20

 O caminho sinalizado com a


menor MED será o escolhido
pelo AS vizinho para o envio do
tráfego. Default = 0;
AS-X
 Funciona somente quando há
duas ou mais conexões
entre dois AS’s.
92
Manipulação de downloads
Atributo MED

©md1302230153
• Funcionamento do atributo
MED
TR1 MED=10 PTT

• No exemplo ao lado o
Roteador do PTT compara os MED=30
valores de MED recebidos do MED=20
AS-X e escolhe para envio
do tráfego o de MED = 20

• O valor de MED = 10
anunciado por TR1 é
AS-X
ignorado pois MED é critério
de decisão somente quando
há 2 ou mais conexões entre
AS’s.
93
Manipulação de downloads
Anúncios mais ou menos específicos

• Seja o cenário abaixo no qual


o administrador do AS-X quer
©md130230052
“equilibrar” os downloads e
ainda ter redundância, TR1 TR2
utilizando política de
anúncios.

• Supondo que os endereços IP


estão igualmente distribuídos 1.1.0.0/21 1.1.8.0/21
no AS, ele faz os anúncios da 1.1.0.0/20 1.1.0.0/20
primeira metade do /20 por
um peer e da segunda pelo
outro.
AS-X
• Para que haja redundância, o
anúncio do /20 total é feito
pelos dois peers 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 downloads
Técnica de AS-Path prepend
• Técnica de AS-Path prepend – antes de fazer prepend

AS-20
©md1302230258

AS-10 1 Gbps

1.1.0.0/20 100 Mbps


AS-30

Direção do
tráfego
96
Manipulação de downloads
Técnica de AS-Path prepend
• Técnica de AS-Path prepend – “prependando” 2 vezes o
número AS

Direção do
tráfego AS-20

AS-10 1 Gbps

1.1.0.0/20 100 Mbps


AS-30

©md1302230258

97
Manipulação de downloads por
Técnica de AS-Path prepend
LAB

 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 roteadores


operadora 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

Grupo 1 Grupo 2

ASN = 65001 ASN = 65002

100
Cenário IV – conectividade IP

Grupo G
ASN = 6500G

RG2 2 192.168.G.0/30 1 RG1


5 14

192.168.G.4/30 192.168.G.12/30

6 13

RG3 9 192.168.G.8/30 10 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=loopback


102
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

TR1 PTT
Internet
AS2

©md1302192258

AS1

104
BGP externo e BGP interno

iBGP:
Peerings entre roteadores do
mesmo AS

eBGP: AS-20
Peerings entre roteadores de AS’s
externos
eBGP
R2
AS-30
eBGP
AS-10

R3
eBGP
R1 iBGP ©md1302201839

AS-40

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
Regras do Split Horizon para o BGP

1) Um BGP speaker pode anunciar


para seus vizinhos iBGP os prefixos
IP que aprendeu a partir de eBGP
speakers. AS-20

R2
AS-30
AS-10

R3
eBGP
R1 ©md1302201839

AS-40

108
Regras do Split Horizon para o BGP

2) Um BGP speaker pode anunciar


para seus vizinhos iBGP os prefixos
IP que aprendeu a partir de eBGP
speakers. AS-20

R2
AS-30
AS-10

R3
eBGP
R1 ©md1302201839

AS-40

109
Regras do Split Horizon para o BGP

3) Um iBGP speaker NÃO pode


anunciar para seus vizinhos iBGP
os prefixos IP que aprendeu a
partir de iBGP speakers. AS-20

R2
AS-30
AS-10

R3
eBGP
R1 ©md1302201839

AS-40

110
Cenário IV
Configuraçõ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

10.1.1.1 AS-200
AS-100
10.1.1.5
Next-Hop=10.1.1.1
Next-Hop=10.1.1.5

©md1302201736

10.1.1.9
AS-400 AS-300

Next-Hop=10.1.1.9
AS-
REDE 1.1.0.0/20 Path=300,20 Next-Hop=10.1.1.9
0,100 114
Atributo Next-Hop

Prefixo de rede Next-Hop = 10.10.10.10 Outros atributos

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.

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

/system reset configuration no-defaults=yes

118
Obrigado!!
Edson Veloso Sergio Souza Wardner Maia
edson@mikrotikbrasil.com.br sergio@mikrotikbrasil.com.br maia@mikrotikbrasil.com.br

119

Você também pode gostar