Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
PRÓXIMO TREINAMENTO:
...
Informações:
https://sites.google.com/site/treinamentobgpmplsv412016/home
treinamento.bgp@gmail.com
2
Versão do material: 4.1 v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
Última publicação: 26/01/2015
1.0
• 1.1 Introdução
• 1.2 Requisitos para se tornar um sistema autônomo
• 1.3 Preenchendo o formulário do Registro.br
• 1.4 Quando utilizar IGP e EGP
• 1.5 Atributos BGP
• 1.6 Entendendo o processo de escolha de rotas
3
Versão do material: 4.1 v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
Última publicação: 08/04/2016
1.1 Introdução
Algumas Características:
1. É um protocolo do tipo “vetor de caminho”
2. As tabelas completas de roteamento são trocadas
entre os dois routers no início da sessão
3. Atualizações adicionais são enviadas imediatamente
através de mensagens de update *
4. Utiliza por padrão a porta TCP 179
*Quando uma nova rota é instalada o router “avisa” imediatamente para seus outros
peers BGP, porém há possibilidade de estabelecer um tempo mínimo (Minimum
Route Advertisement Interval ou MRAI) entre cada rodízio de atualizações,
forçando-o a segurar alguns updates e envia-los de uma só vez em um intervalo
pre-definido. Por exemplo:
4
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.1 Introdução
Diferenças entre FIB e RIB:
Fowarding Information Base (FIB)
Quando um router recebe 2 rotas diferentes para o mesmo
prefixo os critérios de escolha de rota são analisados. A
rota que foi considerada melhor de acordo com os critérios
BGP fica na FIB.
(caso não haja uma rota de melhor metrica estática ou
recebida por outro protocolo de roteamento)
Router Information Base (RIB)
As rotas que não foram consideradas melhores ficarão
guardadas na RIB e serão utilizadas caso a rota principal
fique indisponível.
Por padrão, o BGP jamais anuncia uma prefixo que não
esteja na FIB!
5
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.1 Introdução
Distâncias administrativas:
Outro ponto importante é a distância administrativa, caso 2
prefixos sejam idênticos, o router analisa essa distância, a
menor sempre "ganha". Caso sejam iguais, os critérios
particulares do protocolo de roteamento correspondente
serão analisados:
7
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.1 Introdução
Algumas Características:
1. É um protocolo do tipo “vetor de caminho”
2. As tabelas completas de roteamento são trocadas
entre os dois routers no início da sessão
3. Atualizações adicionais são enviadas imediatamente
através de mensagens de update *
4. Utiliza por padrão a porta TCP 179
*Quando uma nova rota é instalada o router “avisa” imediatamente para seus outros
peers BGP, porém há possibilidade de estabelecer um tempo mínimo (Minimum
Route Advertisement Interval ou MRAI) entre cada rodízio de atualizações,
forçando-o a segurar alguns updates e envia-los de uma só vez em um intervalo
pre-definido. Por exemplo:
8
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.1 Introdução
Mensagens BGP:
– Open (abertura) - É a primeira mensagem enviada por um router que
deseja estabelecer uma sessão com outro, esse por sua vez também
envia uma mensagem open. Após recebidas e checadas*, cada router
envia a primeira mensagem de keep alive e a sessão é estabelecida.
*Mensagens de OPEN contém várias informações sobre o remetente como versão do BGP configurada, número do AS,
routerID, valores de timers configurados entre outros
9
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.1 Introdução
Mensagens BGP:
– Update (atualização) - É dentro dessas mensagens que vão informações
sobre cada prefixo que está sendo anunciado, uma mensagem de update
também pode conter informações sobre redes que ficaram indisponíveis
e devem ser removidas
10
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.1 Introdução
Mensagens BGP:
– Notificação (notification message) – É enviada quando uma condição de
erro é detectada; elas são usadas para encerrar uma sessão ativa e
informar a quaisquer roteadores conectados do porque do encerramento
da sessão.
– Sempre que um router envia uma mensagem do tipo notification esse
finaliza imediatamente a sessão BGP correspondente
11
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.1 Introdução
Mensagens BGP:
– Keep-alive (ainda estou aqui) - De tempo em tempo cada router envia
uma mensagem de keep-alive para que o vizinho saiba que há
conectividade IP. Caso o keep-alive atrase, o router começa a contagem
de hold-time e, se nesse período não for recebido nenhum keep-alive, a
sessão é finalizada. Tanto o tempo de keep-alive como o de hold-time
podem ser configurados para mais ou menos tempo de acordo com o
tipo de link.
– Os valores padrão são 60 segundos de intervalo para keepalive e 180
segundo de tolerância (hold time) que podem ser alterados com o
seguinte comando:
!
router bgp 65001
neighbor 192.168.2.1 timers 20 60
!
– Com esse comando, o tempos de keepalive e hold time ficariam setados
em 20 e 60 segundos respectivamente
12
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.2
13
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.2 - Requisitos para se tornar um sistema
autônomo
Uma organização justifica a designação de
um ASN quando apresenta uma das
seguintes necessidades:
– Multi Provedor: Quando a organização está conectada a dois ou
mais provedores de transito Internet distintos e independentes e
necessita, portanto, fazer uso de protocolos de roteamento
dinâmico
– Política única de roteamento: Quando a organização possui uma
política de roteamento que é distinta daquela aplicada pelo(s)
provedor(es) de transito Internet.
14
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.3
Preenchendo o Formulário do
registro.br
15
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.3 - Preenchendo o Formulário do
registro.br
Há um formulário simples que pode ser baixado
no seguinte endereço:
http://registro.br/provedor/numeracao/pedido-form.txt
16
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.4
Quando utilizar
IGP e EGP
17
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.4 - Quando utilizar IGP e EGP
18
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.4 - Quando utilizar IGP e EGP
19
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.5
Atributos BGP
20
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.5 - Atributos BGP
21
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.5 - Atributos BGP
22
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.5 - Atributos BGP
23
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.6
Entendendo o Processo de
Escolha de Rotas
24
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.6 - Entendendo o processo de escolha de
rotas
25
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.6 - Entendendo o processo de escolha de
rotas
26
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.6 - Entendendo o processo de escolha de
rotas
Como o BGP escolhe uma rota:
8. Rota com a menor métrica IGP para o nexthop BGP
Ex: O next-hop aprendido via OSPF vai ”vencer” um next-hop
aprendido via ISIS
9. Rota externa mais antiga
10. Rota recebida de um router com menor Router ID
11. Rota com o menor tamanho de cluster list. (Ambientes com Route
Reflector apenas)
12. Rota com o menor endereço de neighbor
A análise segue para o próximo critério apenas quando há
empate no critério atual, assim, o tamanho do AS PATH só
será analisado caso o valor de weight e local preference
sejam os mesmos para as duas rotas.
27
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
1.6
PERGUNTAS?
28
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.0
Primeiros Passos
para Aparecer na Internet
2. Primeiros Passos para Aparecer na Internet
• 2.1-Configurando BGP com apenas um link
• 2.2-Analisando as rotas recebidas
• 2.3-Configurando BGP com 2 links
• 2.4-Utilizando um Looking Glass
• 2.5-Fail-Over automático
• 2.6-Escolhendo o melhor link
• 2.7-Balanceamento de links
• 2.8-Implementando alta disponibilidade com VRRP
• 2.9-BGP Timers
29
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1
30
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
Antes de começar, vamos entender o cenário no ponto de
vista geral, onde cada aluno é dono de um AS:
CENARIO 1-1
AS1
AS1
AS1 AS1
AS2
AS4
AS3
LAB 1-1-1 31
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
Nesse LAB, receberemos mais um link (AS 200) através da
interface s1/0:
!-- lembrando que X é o número do AS do aluno
LAB 1-2-1 32
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
Nesse LAB, cada aluno possui um Cisco 3660 com uma
placa serial modelo NM-4T conectado ao AS 100 na
interface s1/1 e uma fast ethernet conectada ao switch da
sala do curso.
O “X” deve ser entendido como o AS do aluno (1 até 16).
AS-100
.1
100.X.1.0/30
E1/0 .2
AS-X-R1
F0/0 .254
X.128.0.0/9
.1
LAB 1-1-1 33
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
LAB 1-1-1 34
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
Password: 123
AS-X-R1#
AS-X-R1#configure terminal
AS-X-R1(config)#
LAB 1-1-1 35
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
AS-X-R1(config-router)#
Jan 20 15:32:02.915: %BGP-5-ADJCHANGE: neighbor 100.X.1.1 Up
LAB 1-1-1 37
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
LAB 1-1-1 38
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
router> configure
router# set routing-options autonomous-system X
router# set protocols bgp group AS100 type external
router# set protocols bgp group AS100 export Interno
router# set protocols bgp group AS100 peer-as 100
router# set protocols bgp group AS100 neighbor 100.X.1.1
LAB 1-1-1 39
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
LAB 1-1-1 40
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
AS-X-R1>ping 123.123.123.1
Agora um Traceroute...
LAB 1-1-1 41
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
Agora um Traceroute...
AS-X-R1>traceroute 123.123.123.1
LAB 1-1-1 42
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
LAB 1-1-1 45
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
AS-X-R1#configure terminal
AS-X-R1(config)# router bgp X
!--- entra no modo de configuração BGP
AS-X-R1(config-router)#network X.0.0.0 mask 255.0.0.0
!--- adiciona a rede x.0.0.0 para ser anunciada a partir desse router
AS-X-R1(config-router) auto-summary
!--- permite que o BGP anuncie x.0.0.0/8 bastando com que haja qualquer
!--- IP/rotaFIB dentro das redes declaradas em networks
AS-X-R1(config-router)#end
!--- volta ao modo privilegiado
AS-X-R1# clear ip bgp 100.X.1.1
!--- reinicia a sessão BGP ==> OPCIONAL
LAB 1-1-1 46
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
Auto-Summary:
LAB 1-1-1 47
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
LAB 1-1-1 48
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
SUCESSO!!
LAB 1-1-1 49
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
LAB 1-1-1 50
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1
PERGUNTAS?
51
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2
Analisando as rotas
recebidas
52
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
53
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
Neighbor = 100.X.1.1
Esse é o IP do router remoto (configurado em router BGP X).
54
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
V=4
Versão do BGP utilizada nessa sessão.
55
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
AS = 100
AS do neighbor remoto (configurado em neighbor 100.X.1.1
remote-as X).
56
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
MsgRcvd = 112
MsgSent = 83
Quantidade total de mensagens BGP recebidas e enviadas
incluindo ”keepalives” e ”updates”.
57
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
TblVer = 22
Versão atual da tabela de rotas BGP, sempre que uma nova rota é
inserida ou removida o TblVer é incrementado.
58
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
InQ = 0
OutQ = 0
Updates na fila de entrada e de saída.
59
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
Up/Down = 01:06:03
Contador das horas minutos e segundos desde de que a sessão
foi estabelecida ou que a sessão ficou down, após 24 horas o
contador muda para 1d00h00m (dias/horas/minutos) após
uma semana 01w0d00h (semanas/dias/horas).
Antes de uma sessão estabelecer ao menos uma vez o
contador fica em ”never”.
60
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
State/PfxRcd = 3
Esse campo merece uma atenção especial pois será o mais
frequentemente observado. Indica o estado da conexão BGP.
● Nesse caso está contando 3 prefixos, mas existem 5
estados possíveis, IDLE, CONECT, ACTIVE, OPENSENT,
OPENCONFIRM e ESTABLISHED, iremos entender melhor
cada um desses estados nos próximos slides.
61
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
É o estado em que a sessão fica quando é interrompida por uma mensagem de notificação ou
intervenção do administrador, esse estado, quando se prolonga por muito tempo, aponta
algum possível problema de conectividade IP ou ainda que o BGP não foi configurado
corretamente do lado remoto.
62
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
63
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
64
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
65
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
66
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
67
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
68
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
Fonte: http://upload.wikimedia.org/wikipedia/commons/thumb/a/a8/BGP_FSM.svg/549px-BGP_FSM.svg.png
69
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
71
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
...
Essa linha mostra a versão da routing table descrita nos
slides anteriores.
72
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
73
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
74
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
...
Essa mensagem significa que esse prefixo 123.0.0.0/8 não está
sendo anunciada via BGP para nenhum neighbor. Na verdade
qualquer rota nesse laboratório aparecerá com essa
mensagem.
Esse campo será detalhado posteriormente na sessão ”AS de
trânsito”.
75
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
...
AS-PATH: mostra da direita para a esquerda o AS que originou essa rota
e todos os ASs no caminho.
Ou seja, o AS 123 originou o anúncio para o AS 55 que recebeu,
considerou como melhor rota e exportou para o AS 111, depois para o
AS 100, o qual também considerou como melhor e repassou para meu
AS.
Um ponto importante a se observar é que mesmo que um AS tenha mil
caminhos para um determinado prefixo, é apenas UM que ele vai
escolher como ”BEST #” e passar adiante (por padrão).
76
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2-Analisando as rotas recebidas
...
O primeiro IP dessa linha significa o ”next-hop”(próximo salto)
para esse prefixo, caso o next-hop não esteja contido em uma
rota válida da FIB, esse jamais será eleito como ”BEST”.
O segundo IP dessa linha me diz o endereço do ”neighbor” que
me enviou essa rota via BGP.
O IP (X.X.X.X) é na verdade o ”router-ID” desse neigbor descrito
acima.
77
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.2
PERGUNTAS?
78
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3
79
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
Os próximos Laboratórios (1-2-1 e 1-2-2) utilizarão esse
cenário, e dessa vez, temos link também com o AS 200:
LAB 1-2-1 80
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
Nesse LAB, receberemos mais um link (AS 200) através da
interface G1/0:
!-- lembrando que X é o número do AS do aluno
AS-100 AS-200
.1 .1
100.X.1.0/30 . 0/30
0. X .1
G1/0 .2 .2 20
G2/0
AS-X-R1
F0/0 .254
X.128.0.0/9
.1
LAB 1-2-1 81
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
LAB 1-2-1 82
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
LAB 1-2-1 83
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
LAB 1-2-1 85
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
NEM SEMPRE!
LAB 1-2-1 86
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.1-Configurando BGP com apenas um link
LAB 1-1-1 87
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
LAB 1-2-1 88
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
222.0.0.0/8
AS222
AS111
AS-100-BKB
AS100 AS200
AS-100-RX
ASX
LAB 1-2-1 89
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
222.0.0.0/8
AS222
AS111
AS-100-BKB
AS100 AS200
AS-100-RX
ASX
LAB 1-2-1 90
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
AS111
AS-100-BKB
AS100 AS200
Prefixo ASPATH
AS-100-RX *>222.0.0.0/8 222
ASX
LAB 1-2-1 91
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
AS111
AS-100-BKB
AS100 AS200
Prefixo ASPATH
AS-100-RX *>222.0.0.0/8 222
ASX
LAB 1-2-1 92
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
AS111
AS-100-BKB
AS100 AS200
Prefixo ASPATH
AS-100-RX *>222.0.0.0/8 222
ASX
LAB 1-2-1 93
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
Prefixo ASPATH
*>222.0.0.0/8 123 222 AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
AS111
AS-100-BKB
AS100 AS200
Prefixo ASPATH
AS-100-RX *>222.0.0.0/8 222
AS123
Prefixo ASPATH
*>222.0.0.0/8 123 222 AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
AS111
AS-100-BKB
AS100 AS200
Prefixo ASPATH
AS-100-RX *>222.0.0.0/8 222
AS123
Prefixo ASPATH
*>222.0.0.0/8 123 222 AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
Prefixo ASPATH
*>222.0.0.0/8 55 123 222 AS111
AS-100-BKB
AS100 AS200
Prefixo ASPATH
*>222.0.0.0/8 X 200 222 Prefixo ASPATH
AS-100-RX *>222.0.0.0/8 222
AS123
Prefixo ASPATH
*>222.0.0.0/8 123 222 AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
Prefixo ASPATH
*>222.0.0.0/8 55 123 222 AS111
* 222.0.0.0/8 100 X 200 222
AS-100-BKB
AS100 AS200
Prefixo ASPATH
*>222.0.0.0/8 X 200 222 Prefixo ASPATH
* 222.0.0.0/8 111 55 123 222 AS-100-RX *>222.0.0.0/8 222
...
LAB 1-2-1 98
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
LAB 1-2-1 99
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
222.0.0.0/8
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 101
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
222.0.0.0/8
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 102
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
AS111
AS100 AS200
Prefixo ASPATH
*>222.0.0.0/8 222
ASX
LAB 1-2-1 103
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
AS111
AS100 AS200
Prefixo ASPATH
*>222.0.0.0/8 222
ASX
LAB 1-2-1 104
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
Prefixo ASPATH
*>222.0.0.0/8 123 222 AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
AS111
AS100 AS200
Prefixo ASPATH
*>222.0.0.0/8 222
AS123
Prefixo ASPATH
*>222.0.0.0/8 123 222 AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
AS111
AS100 AS200
Prefixo ASPATH
*>222.0.0.0/8 222
Filtros de saída
AS123
Prefixo ASPATH
*>222.0.0.0/8 123 222 AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
Prefixo ASPATH
*>222.0.0.0/8 55 123 222 AS111
AS100 AS200
Prefixo ASPATH
*>222.0.0.0/8 222
AS123
Prefixo ASPATH
*>222.0.0.0/8 123 222 AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
Prefixo ASPATH
*>222.0.0.0/8 55 123 222 AS111
AS100 AS200
Prefixo ASPATH
Prefixo ASPATH
*> 222.0.0.0/8 111 55 123 222
*>222.0.0.0/8 222
AS123
Prefixo ASPATH
*>222.0.0.0/8 123 222 AS55
Prefixo ASPATH
*>222.0.0.0/8 222 222.0.0.0/8
AS222
Prefixo ASPATH
*>222.0.0.0/8 55 123 222 AS111
AS100 AS200
Prefixo ASPATH
Prefixo ASPATH
*> 222.0.0.0/8 111 55 123 222
*>222.0.0.0/8 222
PERGUNTAS?
110
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.4
Utilizando um
Looking Glass
111
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.4 Utilizando um Looking Glass
http://lg.he.net
112
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.4 Utilizando um Looking Glass
113
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.4 Utilizando um Looking Glass
114
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.4 Utilizando um Looking Glass
115
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.4 Utilizando um Looking Glass
AS-123-R1>traceroute X.128.0.1
Type escape sequence to abort.
Tracing the route to X.128.0.1
1 123.222.2.2 8 msec 8 msec 12 msec
2 222.222.1.2 [AS 222] 12 msec 40 msec 12 msec
3 222.200.1.2 [AS 222] 24 msec 28 msec 12 msec
5 200.X.1.2 [AS 200] 56 msec 24 msec 28 msec
6 X.128.0.1 [AS X] 64 msec 64 msec 28 msec
117
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 118
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.4 Utilizando um Looking Glass
119
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.4
PERGUNTAS?
120
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.5
Fail-Over
Automático
121
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.5 Fail-Over automático
.1 .1
100.X.1.0/30 . 0/30
0. X .1
E1/0 .2 .2 20
Vamos simular um problema E2/0
AS123
AS55
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 124
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.5 Fail-Over automático
Password: 123
AS-123-R1>traceroute X.128.0.1
AS123
AS55
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 127
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.5 Fail-Over automático
AS123
AS55
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 129
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.5 Fail-Over automático
O novo caminho fica bem mais “longo”, mas não fica fora
Conclusões:
Porém não tem como entender certas variáveis que fazem o link A
ser mais viável que o link B, ou mesmo quando precisamos somar
2 links.
PERGUNTAS?
134
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.6
Escolhendo o
Melhor Link
135
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 136
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 137
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS123
AS55
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 138
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.6 Escolhendo o melhor link
139
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.6 Escolhendo o melhor link
GX-R1#configure terminal
GX-R1(config)#router bgp X
GX-R1(config-router)#neighbor 100.X.1.1 weight 10
GX-R1(config-router)#end
!--- agora vamos efetuar um clear na sessão BGP
GX-R1#clear ip bgp 100.X.1.1
Testando...
Ping extendido:
GX-R1#ping
Protocol [ip]:
Target IP address: 123.123.123.1
Repeat count [5]: 2
Datagram size [100]:
Timeout in seconds [2]:
Extended commands [n]: y
Source address or interface: X.128.0.254
Type of service [0]:
Set DF bit in IP header? [no]:
Validate reply data? [no]:
Data pattern [0xABCD]:
Loose, Strict, Record, Timestamp, Verbose[none]: record
Number of hops [ 9 ]:
Loose, Strict, Record, Timestamp, Verbose[RV]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 2, 100-byte ICMP Echos to 192.168.100.1, timeout is 2 seconds:
Packet sent with a source address of 172.16.32.1
Packet has IP options: Total option bytes= 39, padded length=40
Record route: <*>
(0.0.0.0)
(0.0.0.0)
(0.0.0.0)
(0.0.0.0)
Ping extendido:
(...continuação...)
(0.0.0.0)
End of list
<Omited>
AS-123-R1>traceroute X.128.0.1
AS123
AS55
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 147
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.6 Escolhendo o melhor link
AS123
AS55
X.0.0.0/8
X.0.0.0/9
X.128.0.0/9 AS222
AS111
AS100 AS200
X.0.0.0/9 X.0.0.0/8
X.128.0.0/9
ASX
LAB 1-2-1 149
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.6 Escolhendo o melhor link
AS-123-R1>traceroute X.128.0.1
AS123
AS55
AS222
AS111
AS100 AS200
ASX
LAB 1-2-1 157
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.6
PERGUNTAS?
158
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.7
Balanceando os
Links
159
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.7-Balanceando os links
AS-X-R1#configure terminal
AS-X-R1(config)#router bgp X
AS-X-R1(config-router)#no neighbor 100.X.1.1 weight 10
AS-X-R1(config-router)#end
!--- agora vamos efetuar um clear na sessão BGP
AS-X-R1#clear ip bgp 100.X.1.1
161
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.7-Balanceando os links
Vamos criar duas novas prefix-lists e adiciona-las como filtro
de SAÍDA para cada AS de trânsito:
AS-X-R1#conf terminal
AS-X-R1(config)#ip prefix-list LAB-1-4-1-ANUNCIAR-AS-100 permit X.0.0.0/8
AS-X-R1(config)#ip prefix-list LAB-1-4-1-ANUNCIAR-AS-100 permit X.0.0.0/9
!--- adiciona 2 prefixos /9 dentro da lista ”ANUNCIAR-AS-100”
AS-X-R1(config)#ip prefix-list LAB-1-4-1-ANUNCIAR-AS-200 permit X.0.0.0/8
AS-X-R1(config)#ip prefix-list LAB-1-4-1-ANUNCIAR-AS-200 permit X.128.0.0/9
!--- adiciona o classe A inteiro dentro da lista ”ANUNCIAR-AS-100”
AS-X-R1(config)#router bgp X
!--- adiciona 2 prefixos /9 dentro da lista ”ANUNCIAR-AS-100”
AS-X-R1(config-router)#neighbor 200.X.1.1 prefix-list LAB-1-4-1-ANUNCIAR-AS-200 out
!--- declara que esse anuncios de saida (out) para esse neighbor serao filtrados
AS-X-R1(config-router)#neighbor 100.X.1.1 prefix-list LAB-1-4-1-ANUNCIAR-AS-100 out
!--- declara que esse anuncios de saida (out) para esse neighbor serao filtrados
AS-X-R1(config-router)#end
AS-X-R1#clear ip bgp *
AS123
AS55
X.0.0.0/8
X.0.0.0/8 AS222
X.0.0.0/9
AS111 X.128.0.0/9
AS100 AS200
X.0.0.0/9 X.128.0.0/9
X.0.0.0/8 ASX X.0.0.0/8
LAB 1-2-1 164
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.7-Balanceando os links
Caminho 55,111,100
AS55
X.0.0.0/8
X.0.0.0/8 AS222
X.0.0.0/9
AS111 X.128.0.0/9
AS100 AS200
X.0.0.0/9 X.128.0.0/9
X.0.0.0/8 ASX X.0.0.0/8
LAB 1-2-1 167
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.7-Balanceando os links
Caminho 222,200
AS55
X.0.0.0/8
X.0.0.0/8 AS222
X.0.0.0/9
AS111 X.128.0.0/9
AS100 AS200
X.0.0.0/9 X.128.0.0/9
X.0.0.0/8 ASX X.0.0.0/8
LAB 1-2-1 169
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.7-Balanceando os links
AS55
X.0.0.0/8
X.0.0.0/8 AS222
X.0.0.0/9
AS111 X.128.0.0/9
AS100 AS200
X.0.0.0/9 X.128.0.0/9
X.0.0.0/8 ASX X.0.0.0/8
LAB 1-2-1 171
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS55
X.0.0.0/8
X.0.0.0/8 AS222
X.0.0.0/9
AS111 X.128.0.0/9
AS100 AS200
X.0.0.0/9 X.128.0.0/9
X.0.0.0/8 ASX X.0.0.0/8
LAB 1-2-1 172
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.3 Configurando BGP com 2 links
AS55
X.0.0.0/8
X.0.0.0/8 AS222
X.0.0.0/9
AS111 X.128.0.0/9
AS100 AS200
X.0.0.0/9 X.128.0.0/9
X.0.0.0/8 ASX X.0.0.0/8
LAB 1-2-1 173
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
2.7-Balanceando os links
175
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.1
Peering x Trânsito
176
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.1 Peering x Trânsito
177
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.1 Peering x Trânsito
178
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.1 Peering x Trânsito
LAB: Observem o cenário...
179
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.1 Peering x Trânsito
AS IP AS IP
1 1.2.1.1/30 x 2 1.2.1.2/30
3 3.4.1.1/30 x 4 3.4.1.2/30
5 5.6.1.1/30 x 6 5.6.1.2/30
7 7.8.1.1/30 x 8 7.8.1.2/30
9 9.10.1.1/30 x 10 9.10.1.2/30
11 11.12.1.1/30 x 12 11.12.1.2/30
13 13.14.1.1/30 x 14 13.14.1.2/30
AS-100
AS-200
.1
.1
100.X.1.0/30 / 3 0
1.0 AS IP AS IP
.2 E2/0 0 .X.
E1/0 20 1 1.2.1.1/30 x 2 1.2.1.2/30
.2
AS-X-R1 PEERING 3 3.4.1.1/30 x 4 3.4.1.2/30
F0/0 IP.DO.PEERING
5 5.6.1.1/30 x 6 5.6.1.2/30
.254
7 7.8.1.1/30 x 8 7.8.1.2/30
11 11.12.1.1/30 x 12 11.12.1.2/30
.1 13 13.14.1.1/30 x 14 13.14.1.2/30
AS-XR1#conf t
AS-X-R1(config)#interface g4/0
AS-X-R1(config-if)#ip address X.Y.1.1 255.255.255.252
AS-X-R1(config-if)#no shutdown
AS-X-R1(config-if)#end
AS-X-R1#ping X.Y.1.2
AS-XR1#conf t
AS-X-R1(config)#interface g4/0
AS-X-R1(config-if)#ip address Y.X.1.2 255.255.255.252
AS-X-R1(config-if)#no shutdown
AS-X-R1(config-if)#end
AS-X-R1#ping Y.X.1.1
AS-X-R1#conf t
AS-X-R1(config)#no router bgp X
AS-X-R1(config)#no ip route X.0.0.0 255.0.0.0 Null0
AS-X-R1(config)#no ip route X.0.0.0 255.128.0.0 Null0
X
AS-100
.1
X
AS-200
.1
100.X.1.0/30
. 0/ 30
X. 1
.
E1/0 .2 E2/0
200
.2
AS-X-R1 PEERING
F0/0 IP.DO.PEERING
.254
X.128.0.0/9
.1
Entendendo o
Funcionamento
de Um PIX do PTTMetro
192
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.2 Entendendo o Funcionamento de um
PIX do PTTMetro
Para quem ainda não assistiu:
http://zappiens.br:80/videos/cgiE9WjKruzQGmPy-VDyEDDAK
PUNxmfYneBOql0VJJOuIg.FLV
193
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.2 Entendendo o Funcionamento de
um PIX do PTTMetro
194
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.2 Entendendo o Funcionamento de
um PIX do PTTMetro
195
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.2 Entendendo o Funcionamento de
um PIX do PTTMetro
Os Route Servers cumprem um papel fundamental
dispensando a necessidade de que todos os participantes
façam peering individualmente.
Imaginem centenas de participantes estabelecendo peering
(todos com todos).
187.16.216.0/22
ROUTE
SERVER
.1
.2
.3
.4
196
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.3
Formulários de Adesão
197
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.3 - Formulários de Adesão
Para se conectar do PTT-SP por exemplo, acesse o endereço:
http://sp.ptt.br/adesao.html
198
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.3 - Formulários de Adesão
199
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.4
Diferenças entre Acordo
Bilateral
e Multilateral
200
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.4 - Diferenças entre Acordos
Bilaterais e Multilaterais
Estar no PTT por si só não significa trocar tráfego!
Existem participantes que optaram em não trocar tráfego
multilateral (todos com todos).
E esse é um direito do participante...
201
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.4 - Diferenças entre Acordos
Bilaterais e Multilaterais
Acordo de troca Multilateral (ATM)
203
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.5
Participantes Locais e
Remotos
204
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.5 - Participantes Locais e Remotos
205
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.5 - Participantes Locais e Remotos
Ou...
2# - Contratando transporte layer2 (lan2lan, clear channel)
de algum participante conectado fisicamente.
Não há diferenças no ponto de vista técnico entre as duas
modalidades, exceto pelas consequẽncias do aumento de
latência, que é proporcional à distância geográfica.
206
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.6
Entendendo o Conceito de
Lan2Lan
207
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.6 Entendendo o Conceito de Lan2Lan
208
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.6 Entendendo o Conceito de Lan2Lan
209
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.7
ATM-Tratando as Rotas
Recebidas
210
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.7 - ATM-Tratando as Rotas Recebidas
LAB: Estabelecer sessões BGP com o PTT Route-server e com o
PTT Looking Glass:
AS-X-R1#conf t
AS-X-R1(config)#router bgp X
AS-X-R1(config-router)#no bgp enforce-first-as
AS-X-R1(config-router)#neighbor 187.16.216.253 remote-as 555
AS-X-R1(config-router)#neighbor 187.16.216.253 description PTT-SP Route_Server 1
AS-X-R1(config-router)#neighbor 187.16.216.253 weight 15
!--- o valor 15 de weight deve ser menor que o aplicado no peering "20”
AS-X-R1(config-router)#neighbor 187.16.216.253 prefix-list MEUS-BLOCOS out
!--- vamos anunciar apenas o bloco /8 para o PTT e todos os outros neighbors
AS-X-R1(config-router)#neighbor 187.16.216.254 remote-as 555
AS-X-R1(config-router)#neighbor 187.16.216.254 description PTT-SP Route_Server 2
AS-X-R1(config-router)#neighbor 187.16.216.254 weight 15
AS-X-R1(config-router)#neighbor 187.16.216.254 prefix-list MEUS-BLOCOS out
!--- a configuração deve ser idêncita com o route server de backbup
AS-X-R1(config-router)#neighbor 187.16.216.252 remote-as 555
AS-X-R1(config-router)#neighbor 187.16.216.252 description PTT-SP Looking Glass
!--- para o looking glass do PTT enviaremos todas as rotas da FIB, portando nao usaremos
nenhum filtro de out e também nenhum filtro de IN pois o mesmo não anuncia rotas para
ninguém
X
AS-100
.1
X
AS-200
PTT-SP Route Server 1:
100.X.1.0/30 / 30 .1 187.16.216.253
.1 .0
.2 E2/0 0.X PTT-SP Route Server 2:
20
E1/0
.2 187.16.216.254
AS-X-R1 PEERING
F0/1
F0/0 PTT-SP Looking Glass:
.254 .X 187
.16 187.16.216.252
.21
6.0
X.128.0.0/9 / 22 PTT-SP
.1
ATM-Anunciando
Corretamente
216
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.8- ATM- Anunciando Corretamente
Utilizamos anúncios da maneira mais simples possível, porém, no mundo
real, o mais recomendado é anunciar blocos mais específicos para os
pontos de troca.
Um dos principais motivos são os participantes indiretos.
Digamos que o administrador do AS 44 coloca baixa prioridade para rotas
recebidas pelo AS 30, ou mesmo que o BGP tenha escolhido sozinho o
AS 100 como melhor rota por ser a mais antiga por exemplo
217
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.8- ATM- Anunciando Corretamente
218
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.9
219
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.9 - O Looking Glass do PTT Metro
220
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.9 - O Looking Glass do PTT Metro
Conectando-se ao Looking Glass do PTT-SP:
AS-X-R1>telnet 187.16.216.252
Trying 187.16.216.252 ... Open
Ubuntu 14.10
PTT-SP-LG login: lg.ptt.sp
Password: 123456
$
$ telnet 127.0.0.1 bgpd
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Password: 123456
PTT-SP-LG>
Pronto! Agora estamos conectados ao Looking Glass e
poderemos fazer consultas...
221
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.9 - O Looking Glass do PTT Metro
Digamos que quero verificar a tabela de roteamento do
participante do PTT que possui o AS 1.
PTT-SP-LG> show ip bgp regexp ^1
BGP table version is 0, local router ID is 187.16.216.252
Status codes: s suppressed, d damped, h history, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Origin codes: i - IGP, e - EGP, ? - incomplete
Aplicações de Um Acordo
Bilateral
223
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.10 Aplicações de Um Acordo Bilateral
224
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
3.11 Comprando e vendendo trânsito no
PTT
LAB acordo bilateral:
Router#conf t
Router(config)#interface fastEthernet 0/1.XXX NÃO APLIQUE ESSA CONFIG!
Router(config-subif)#encapsulation dot1Q XXX NÃO FAZ PARTE DO LAB
Router(config-subif)#ip address z.z.z.z
Router(config-subif)#end
Router# ping Z.Z.Z.Z
AS-X-R1#ping Z.Z.Z.Z
AS-X-R1#conf t
AS-X-R1(config)#router bgp X
AS-X-R1(config-router)#neighbor Z.Z.Z.Z remote-as Y
AS-X-R1(config-router)#neighbor Z.Z.Z.Z description Acordo bilateral-transito IP
AS-X-R1(config-router)#neighbor Z.Z.Z.Z prefix-list MEUS-BLOCOS out
!--- como cliente devemos anunciar da mesma maneira que fizemos com os ASs de trânsito
!--- e já que o classe A local já está nessa lista não preciso configurar mais nada
AS-X-R1(config-router)#end
AS-X-R1#clear ip bgp *
AS-X-R1#conf t
AS-X-R1(config)#router bgp X
AS-X-R1(config-router)#neighbor Z.Z.Z.Z remote-as Y
AS-X-R1(config-router)#neighbor Z.Z.Z.Z description Acordo bilateral-transito IP
AS-X-R1(config-router)#neighbor Z.Z.Z.Z prefix-list MEUS-BLOCOS out
!--- como cliente devemos anunciar da mesma maneira que fizemos com os ASs de trânsito
!--- e já que o classe A local já está nessa lista não preciso configurar mais nada
AS-X-R1(config-router)#end
AS-X-R1#clear ip bgp *
(...)
AS-123-R1>ping Y.0.0.1
PERGUNTAS?
242
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.0
Filtros Básicos para um AS
de Trânsito
4. Filtros básicos para um AS de trânsito
243
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.1
244
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.1 – eBGP com Upstreams e Downstreams
Daqui por diante faremos referência à 3 tipos de sessões
BGP:
245
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.1 – eBGP com Upstreams e Downstreams
IBGP
● Sessões entre roteadores que fazem parte do mesmo
sistema autônomo
246
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.1 – eBGP com Upstreams e Downstreams
247
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.1 – eBGP com Upstreams e Downstreams
248
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2
Configurando Filtros de
Upstreams
249
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
250
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
251
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
252
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
254
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
O que é o ”seq” ?
● A razão para o incremento de ”5 em 5” é a possibilidade de
inserir uma regra ”no meio” especificando um ”número de
seq”:
Router(config)#ip prefix-list MINHA-LISTA seq 4 permit 10.0.30.0/24
255
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
256
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
Ranges de subredes - (ge):
● Diferente do le, o ge especifica o tamanho mínimo da máscara,
seu uso é mais apropriado em redes maiores.
Router(config)#ip prefix-list MINHA-LISTA permit 192.0.0.0/8 ge 18 le 26
● O /8 indica os bits que serão ”fixos”.
257
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
258
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
259
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
Inserindo os prefixos na lista:
AS-X-R1(config)#ip prefix-list NAO-RECEBER seq 10 deny X.0.0.0/8 le 32
!--- blocos do meu próprio AS
NAO INSERIR
AS-X-R1(config)#ip prefix-list NAO-RECEBER seq 20 deny 10.0.0.0/8 le 32 ESSA LINHA
!--- uso privado (neste lab estamos utilizando para grupo 10, favor nao bloquear este)
AS-X-R1(config)#ip prefix-list NAO-RECEBER seq 30 deny 172.16.0.0/12 le 32
!--- uso privado
AS-X-R1(config)#ip prefix-list NAO-RECEBER seq 40 deny 169.254.0.0/16 le 32
!--- link-local (APIPA)
AS-X-R1(config)#ip prefix-list NAO-RECEBER seq 50 deny 127.0.0.0/8 le 32
!--- loopbacks
AS-X-R1(config)#ip prefix-list NAO-RECEBER seq 60 deny 192.0.2.0/24 le 32
!--- Documentação
AS-X-R1(config)#ip prefix-list NAO-RECEBER seq 70 deny 192.168.0.0/16 le 32
!--- uso privado
AS-X-R1(config)#ip prefix-list NAO-RECEBER seq 80 deny 224.0.0.0/4 le 32
!--- multicast
AS-X-R1(config)#ip prefix-list NAO-RECEBER seq 90 deny 240.0.0.0/4 le 32
!--- reservado para uso futuro (para o fim do IPv6?)
AS-X-R1(config)#ip prefix-list NAO-RECEBER seq 500 permit 0.0.0.0/0 le 24
!--- Permitir todo o resto e ao mesmo tempo descartar qualquer prefixo
!--- mais específico que /24 como /25, /26, /27, etc
Apenas criar a lista NAO-RECEBER não terá efeito se a mesma não for
declarada como filtro de ENTRADA dos UPSTREAMS, PEERING e PTT.
AS-X-R1(config)#router bgp X
AS-X-R1(config-router)#neighbor 100.X.1.1 prefix-list NAO-RECEBER in
AS-X-R1(config-router)#neighbor 200.X.1.1 prefix-list NAO-RECEBER in
AS-X-R1(config-router)#neighbor 187.16.216.253 prefix-list NAO-RECEBER in
AS-X-R1(config-router)#neighbor 187.16.216.254 prefix-list NAO-RECEBER in
AS-X-R1(config-router)#neighbor (IP de peering) prefix-list NAO-RECEBER in
AS-X-R1(config-router)#neighbor (acordo bilateral) prefix-list NAO-RECEBER in
!--- Nesse caso apenas para quem é CLIENTE no acordo bilateral
!--- O AS que vende trânsito já tem uma prefix-list chamada BLOCOS-CLIENTE-AS-Y no IN
AS-X-R1(config-router)#end
AS-X-R1#clear ip bgp *
263
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
HARD reset:
É a maneira menos recomendada de fazer um refresh nas rotas.
A conexão TCP volta para o estado ”idle”.
Há um pequeno intervalo antes da conexão iniciar novamente.
Router#clear ip bgp { * | A.B.C.D | peergroupname ASN }
SOFT reset:
Realiza o route refresh mantendo a sessão ativa .
Pode ser dividido em ”outbound refresh” e ”inbound refresh”.
Router#clear ip bgp { * | A.B.C.D | peergroupname | ASN } soft { out | in }
Porém isso ainda não explica a função do ”soft reconfiguration inbound” ...
264
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
265
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
GX-R1(config)#router bgp X
GX-R1(config-router)#neighbor 100.X.1.1 soft-reconfiguration inbound
GX-R1(config-router)#neighbor 200.X.1.1 soft-reconfiguration inbound
GX-R1(config-router)#neighbor 187.16.216.253 soft-reconfiguration inbound
GX-R1(config-router)#neighbor 187.16.216.254 soft-reconfiguration inbound
GX-R1(config-router)#neighbor (IP de peering) soft-reconfiguration inbound
GX-R1(config-router)#neighbor (acordo bilateral) soft-reconfiguration inbound
GX-R1(config-router)#end
GX-R1#clear ip bgp * soft
Ou...
Outros BOGONS
● Existe outro range de IPs que não são privados, mas ainda
assim devem ser bloqueados.
269
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
● Número de AS;
● Ip(s) que o cymru fará peering com você;
● Se o equipamento suporta autenticação
MD5 para BGP;
● Chave pública GPG/PGP (opcional);
270
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
271
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
Router(config)#router bgp X
Router(config-router)#neighbor x.x.x.x remote-as 65333
Router(config-router)#neighbor x.x.x.x ebgp-multihop 255
Router(config-router)#neighbor x.x.x.x weight 100
Router(config-router)#neighbor x.x.x.x description BOGONS CYMRU
Router(config-router)#neighbor x.x.x.x prefix-list SAIDA-CYMRU out
Router(config-router)#neighbor x.x.x.x route-map FILTRO-CYMRUBOGONS in
Router(config-router)#neighbor x.x.x.x password <senha cymru>
Router(config-router)#exit
272
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.2 - Configurando Filtros de Upstreams
273
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.3
Configurando Filtros de
Downstreams
274
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.3 - Configurando Filtros de Downstreams
275
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.3 - Configurando Filtros de Downstreams
LAB: Um cliente de trânsito (downstream) deverá ser
ativado com as seguintes informações:
PEERING
AS-200 PTT-SP
E1/0
● Bloco CIDR: 187.X.0.0/22
● IP de WAN: X.101.1.2
G5/0 CLIENTE
AS-X-R1 AS-1XX ● Interface G5/0
.1 .2
F0/0
X.101.1.0/30
.254
X.128.0.0/9
.1
AS-X-R1#conf t
AS-X-R1(config)#ip prefix-list BLOCOS-AS-1XX permit 187.X.0.0/22 le 24
!--- criando uma nova prefix-list e inserindo o bloco CIDR do cliente na mesma
AS-X-R1(config)#ip prefix-list MEUS-BLOCOS permit 187.X.0.0/22 le 24
!--- atualizando a prefix-list existente com mais um prefixo
AS-X-R1(config)#router bgp X
AS-X-R1(config-router)#neighbor X.101.1.2 remote-as 1XX
AS-X-R1(config-router)#neighbor X.101.1.2 weight 30
AS-X-R1(config-router)#neighbor X.101.1.2 prefix-list BLOCOS-AS-1XX in
AS-X-R1(config-router)#neighbor X.101.1.2 default-originate
!--- filtro de ENTRADA para o DOWNSTREAM AS 10X + envio de rota padrao
AS-X-R1(config-router)#end
AS-X-R1#clear ip bgp *
LAB 1-10-1
277
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.3 - Configurando Filtros de Downstreams
Configuração no cliente Mikrotik
Antes vamos verificar a conectividade IP com o AS 10X e depois
se conectar à esse router via telnet:
AS-X-R1>ping X.101.1.2
MikroTik v5.26
Login: admin
Não precisa
Password: sem senha de senha
[admin@AS-1XX-R1] >
OU SIMPLESMENTE...
OU SIMPLESMENTE...
AS-123-R1>traceroute 187.X.0.1
Entendendo o
”BGP REGEXP”
286
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
Por exemplo:
287
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
288
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
“_” - Underline
✗ Substitui uma lista de expressões, que pode ser uma vírgula (,), chave esquerda ({), chave direita (}), o
início da seqüência de entrada (^), o fim da seqüência de entrada ($), ou um espaço.
✗ ^444$
✗ ^444espaço
✗ espaço444
✗ {444,
✗ ,444,
✗ {444}
✗ ,444,
Para praticar segue um link interessante:
http://tools.lymas.com.br/regexp_br.php
289
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
Antes vamos entender a função dos principais caracteres nas
expressões regulares:
✗ "1" Um número isolado satisfaz a condição para qualquer expressão que contenha esse número.
✗ exemplo1: 1 "a condição de match é qualquer AS no Path (podem haver vários AS's) que contenha o
número 1 em qualquer parte, em pelo menos um dos AS's.
Satisfaz: "891 12333 3445 9999", "555 123 432", "1111 2222 4444".
✗
”.” Satisfaz a condição para qualquer número no lugar do ponto
✗ exemplo: _4.5_ "a condição de match é qualquer AS PATH que contenha um AS de 3 dígitos onde 4 seja o
primeiro e 5 seja o último com qualquer número no meio e que contenha ou nao outros AS's (antes e
depois)
Satisfaz: "12 415 43", "2 425 3", "435" , "321 456 445 345"
✗ Exemplo: 4.5 "a condição de match é qualquer número de 3 ou mais dígitos que tenha 4 e 5 em qualquer
parte do AS PATH e com um dígito qualquer entre eles
Satisfaz: "23415", "43425", "435 3333", "445", "45587", "321 44459 345"
291
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
✗ ”$” Satisfaz a condição para o tudo que o que for terminado com o caracter (ou expressão) ao
lado esquerdo de "$"
✗ exemplo1: 12$ "a condição de match é qualquer AS PATH em que os dois últimos dígitos sejam 1 e 2
respectivamente"
Satisfaz: ”4912”, "65012", "12312", "11112", "9932 9976 64912", "28135 17379 54312" ...
✗ exemplo3: 1.2$ "a condição de match é qualquer AS PATH em que seus últimos 3 dígitos do último AS
sejam: 1, qualquer coisa e 2 respectivamente"
Satisfaz: "123 45666 33 112", "444 122", "132", "1111 132", "444 65192", "60192"
292
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
✗ ”^” Satisfaz a condição para caracteres que comecem com o caracter (ou exprssão) após o ^
✗ exemplo1: ^1 "a condição de match é qualquer AS PATH que tenha o dígito 1 no início do primeiro AS do
PATH
Satisfaz: "124 4321", "12444", "1449", "19455 12333", "10466 55443 9900"
293
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
”*” Satisfaz a condição para qualquer caractere à esquerda do "*", inclusive nenhum, por isso
é preciso utilizar o caracter um espaço "_" branco em conjunto, pois sem espaço a
expressão perde o sentido, por exemplo, 1* satisfaria condição para qualquer coisa, e o
padrão intuitivo para "qualquer coisa/tudo" é ".*"
✗ exemplo1: 1_* "a condição de match é qualquer coisa que contenha o dígito 1 em qualquer
parte do AS"
satisfaz: "43431 9999 777 9999 8888(infinito...)”,” … 99 9991 345 666 654 5556...”
✗ Exemplo2: .* "a condição de math é qualquer AS PATH de qualquer tamanho, com qualquer
combinação"
Satisfaz: TUDO
294
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
”\” Este caracter é usado quando os caracteres de condição também são caracteres de
expressão regular, por exemplo, se precisássemos de uma expressão para dinheiro, onde
a condição fosse "R$ 10,00" até "R$ 10,99", teríamos um grande problema, já que a
expressão necessária é "R$_10,..$" Notem que o "$" precisa aparacer como "condição" ao
mesmo tempo que é um caracter de expressão regular. Sendo assim, não funcionaria. O
caracter "\" é usado para declarar que o próximo caracter deverá ser interpretado como
"condição", ao invés de sua função normal. Assim, a expressão corretá ficaria "R\$_10,..$"
”Felizmente” não utilizaremos esse caracter para BGP
295
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
✗ ”[ ]” Satifaz a condição para qualquer um dos caracters dentro dos colchetes, mas apenas UM
deles. Há a possibilidade de utilizar intervalos entre os colchetes seguidos de hífem "-"
✗ Dentro dos colchetes o caracter "^" tem função de negação, O intervalo funciona da mesma
forma para as negações.
✗ exemplo1: ^9[249]5$ "a condição é um AS que contenha qualquer combinação de 3 dígitos sendo o
primeiro 9, o terceiro 5 e o do meio 2, 4 ou 9
296
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
297
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
✗ ”+” Satisfaz a condição para uma(pelo menos) ou mais ocorrências do caracter (ou expressão)
anterior em qualquer parte
✗ exemplo1: ^([^ ]+)$ satisfaz: qualquer ASPATH que contenha apenas 1 AS
Aplicação prática: Filtrar para meu cliente apenas rotas que tenham um AS no path e nada mais
✗ “?” Satisfaz a condição para uma ou nenhuma ou uma ocorrencia do caracter (ou expressão) anterior
✗ exemplo1: ^([^ ]+)?$ satisfaz: qualquer rota que tenha no máximo um AS no PATH ou NENHUM
Aplicação prática: Filtrar para meu cliente apenas rotas que tenham um AS no path e também rotas
que não contenham NENHUM AS no PATH (rotas originadas localmente)
AS-X-R1(config)#router bgp X
!--- Vamos adicionar o mesmo prefix-list na entrada do AS 100
AS-X-R1(config-router)#neighbor 100.X.1.1 filter-list 1 in
AS-X-R1(config-router)#neighbor 200.X.1.1 filter-list 1 in
AS-X-R1(config-router)#end
AS-X-R1#clear ip bgp *
Prefixos privados
305
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
Exemplo 2:
Quais rotas foram recebidas pela Intelig através do peering com
Embratel?
Router# sh ip bgp regexp _17379 4230_
...
Network Next Hop Metric LocPrf Weight Path
*> 186.205.244.0/22 201.20.36.158 0 16397 17379 4230 28573 i
Exemplo 3:
Quais ASs estão diretamente conectados (sem prepend) com o AS
4230 (EMBRATEL)?
Router# sh ip bgp regexp _4230 ([0-9]+)$
…
Network Next Hop Metric LocPrf Weight Path
*> 23.61.118.0/23 201.20.36.158 0 16397 17379 4230 28573 i
*> 23.61.120.0/22 201.20.36.158 0 16397 17379 4230 28573 i
...
306
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.4 - Entendendo o “BGP REGEXP”
307
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.5
Enviando e Recebendo
“Partial” e “Full-Routing”
308
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.5 – Enviando e Recebendo “Partial” e
“Full-routing”
Enviando parcial para o meu DOWNSTREAM
● O cliente deseja receber rotas do meu AS e meus outros
DOWNSTREAMS (no momento ainda não temos outros ;)
A lógica é mesma, vamos utilizar a as-path acl "10".
AS-X-R1(config)#ip as-path access-list 10 permit ^([0-9]+)$
AS-X-R1(config-router)#neighbor X.101.1.2 filter-list 10 out
AS-1-R1(config-router)#end
AS-1-R1#clear ip bgp X.101.1.2
AS-1-R1#show ip bgp neighbors X.101.1.2 advertised-routes
Dessa forma consigo ver tudo e ao mesmo tempo criar uma regra que
"vale por 3"
(...continua)
317
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.5 – Enviando e Recebendo “Partial” e
“Full-routing”
Porém ainda posso simplificar mais...
de ^([0-9]+ [0-9]+)$|^([0-9]+)$|^$
para ^(([0-9]+ [0-9]+)|([0-9]+)|())$
(...continua)
318
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.5 – Enviando e Recebendo “Partial” e
“Full-routing”
Porém ainda posso simplificar mais...
de ^([0-9]+ [0-9]+)$|^([0-9]+)$|^$
para ^(([0-9]+ [0-9]+)|([0-9]+)|())$
(...continua)
319
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.5 – Enviando e Recebendo “Partial” e
“Full-routing”
(...continua) 320
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.5 – Enviando e Recebendo “Partial” e
“Full-routing”
Então as chaves ajudam a eliminar as repetições inserindo um
intervalo de repetições dentro das chaves {}...
Consigo diminuir essa expressão de:
^(([^ ]+)|([^ ]+ [^ ]+)|([^ ]+ [^ ]+ [^ ])|([^ ]+ [^ ]+ [^ ]+ [^ ]+)|())$
para:
^([^ ]+_{0,1}){0,4}$
Ou seja, a palavra ([^ ]+_{0,1}) à esquerda de {0,4} pode se
repetir 0 vezes, 1
vez, 2 vezes, 3 vezes ou 4 vezes.
Infelizmente, nas versões de IOS que otilizamos nesse curso as
chaves simplesmente não funcionam
PS: No Quagga funciona 100%.
321
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.6
Route-Map x Prefix-List
322
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.6 – Route-Map X Prefix-List
323
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.6 – Route-Map X Prefix-List
324
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.6 – Route-Map X Prefix-List
325
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.6 – Route-Map X Prefix-List
326
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.6 – Route-Map X Prefix-List
AS-Path Prepend
329
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.7 - AS-Path Prepend
330
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.7 - AS-Path Prepend
Exemplo1:
✔ Inserindo prepends do MEU AS na saída
(Router-E1)
router bgp 65000
no synchronization
bgp log-neighbor-changes
network 10.7.1.0 mask 255.255.255.0
neighbor 10.0.1.2 remote-as 64800
neighbor 10.0.1.6 remote-as 64800
neighbor 10.0.1.6 route-map prepend out
!
route-map prepend permit 10
set as-path prepend 65000 65000 65000
(Router-R2)
R2#show ip bgp
BGP table version is 3, local router ID is 10.2.0.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*>i10.7.1.0/24 10.0.1.1 0 100 0 65000 i
* 10.0.1.5 0 0 65000 65000 65000 65000 i
Fonte:http://wiki.nil.com/AS-path_prepending_(technical_details)
331
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.7 - AS-Path Prepend
Exemplo2:
✔ Inserindo prepends do AS REMOTO na entrada
(Router-R1)
router bgp 64800
no synchronization
bgp log-neighbor-changes
neighbor 10.0.1.1 remote-as 65000
neighbor 10.0.1.1 route-map prependIn in
neighbor 10.2.0.2 remote-as 64800
!
route-map prependIn permit 10
set as-path prepend last-as 2
(Router-R1)
R1#show ip bgp
BGP table version is 2, local router ID is 10.0.0.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Fonte:http://wiki.nil.com/AS-path_prepending_(technical_details)
332
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.8
Engenharia de Tráfego
I
333
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
4.8 – Engenharia de Tráfego I
✔ Apenas o DOWNLOAD do
AS-55
CLIENTE (AS10X) deverá AS-222
chegar pelo AS 100, de forma
que o DOWNLOAD do AS AS-111
LOCAL continuará chegando
pelo AS 200.
AS-100 AS-200
AS-X
DOWNLOAD CLIENTE:
DOWNLOAD AS LOCAL: AS-10X
✔ Apenas o DOWNLOAD do
AS-55
CLIENTE (AS10X) deverá AS-222
chegar pelo AS 100, de forma
que o DOWNLOAD do AS AS-111
LOCAL continuará chegando
pelo AS 200.
AS-100 AS-200
AS-X
DOWNLOAD CLIENTE:
DOWNLOAD AS LOCAL: AS-10X
AS222
AS111
AS200
AS100
ASX
AS10X
DOWNLOAD CLIENTE AS 10X:
DOWNLOAD AS LOCAL X:
AS200
AS100
ASX
AS10X
DOWNLOAD CLIENTE AS 10X:
DOWNLOAD AS LOCAL X:
(...)continua...
AS123
AS-123-R1>show ip bgp 187.X.0.0
BGP routing table entry for 187.X.0.0/22, version 57
AS55
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Flag: 0x820
Advertised to update-groups: AS222
1 AS111
55 111 100 X 10X
123.55.1.2 from 123.55.1.2 (123.55.1.2)
Origin IGP, localpref 100, valid, external, best AS200
AS100
222 200 X X X 10X
123.222.1.2 from 123.222.1.2 (222.222.1.1)
Origin IGP, localpref 100, valid, external
ASX
AS10X
AS123
AS-123-R1>traceroute 187.X.0.1
AS55
Type escape sequence to abort.
Tracing the route to 187.X.0.1
AS222
1 123.55.1.2 24 msec 12 msec 16 msec AS111
2 55.55.1.2 [AS 55] 16 msec 36 msec 36 msec
3 55.111.1.2 [AS 55] 64 msec 48 msec 44 msec
4 111.111.1.2 [AS 111] 48 msec 68 msec 64 msec AS200
AS100
5 111.100.1.2 [AS 111] 97 msec 84 msec 88 msec
6 100.X.1.2 [AS 100] 88 msec 76 msec 76 msec
7 187.X.0.1 [AS 10X] 76 msec 84 msec 88 msec
ASX
AS10X
AS123
AS-123-R1>show ip bgp X.0.0.1
BGP routing table entry for X.0.0.0/8, version 55
AS55
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Advertised to update-groups:
2 AS222
222 200 X AS111
123.222.1.2 from 123.222.1.2 (222.222.1.1)
Origin IGP, localpref 100, valid, external, best
55 111 100 X AS200
AS100
123.55.1.2 from 123.55.1.2 (123.55.1.2)
Origin IGP, localpref 100, valid, external
ASX
AS10X
AS123
AS-123-R1>traceroute X.0.0.1
AS55
Type escape sequence to abort.
Tracing the route to X.0.0.1
AS222
1 123.222.1.2 24 msec 16 msec 16 msec AS111
2 222.222.1.2 [AS 222] 16 msec 36 msec 36 msec
3 222.200.1.2 [AS 222] 68 msec 48 msec 44 msec
4 200.X.1.2 [AS 200] 48 msec 42 msec 44 msec AS200
AS100
ASX
AS10X
AS123
AS-123-R1>traceroute X.0.0.1
AS55
Type escape sequence to abort.
Tracing the route to X.0.0.1
AS222
1 123.222.1.2 24 msec 16 msec 16 msec AS111
2 222.222.1.2 [AS 222] 16 msec 36 msec 36 msec
3 222.200.1.2 [AS 222] 68 msec 48 msec 44 msec
4 200.X.1.2 [AS 200] 48 msec 42 msec 44 msec AS200
AS100
ASX
AS10X
PERGUNTAS?
345
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.0
Roteamento
dentro do AS (iBGP)
346
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.0
Roteamento
dentro do AS (iBGP)
5. Roteamento dentro do AS (iBGP)
347
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.1
Implementando Múltiplas
Saídas para Clientes de
Trânsito
348
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.1 - Implementando Múltiplas Saídas para
Clientes de Trânsito
Conforme discutido anteriormente, o BGP é um protocolo
desenvolvido para troca de rotas entre AS's distintos.
Deve ser evitado dentro do AS, a menos que as extremidades
precisem trocar rotas de AS's externos.
Em outras palavras, se houver realmente a necessidade de
entregar para um DOWNSTREAM rotas recebidas de um
UPSTREAM.
No exemplo abaixo não há necessidade de injetar rotas externas
dentro do AS:
349
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.1 - Implementando Múltiplas Saídas para
Clientes de Trânsito
Injetar rotas externas se faz necessário apenas quando essas
precisam ”atravessar” o AS.
Em outras palavras, se houver realmente a necessidade de
entregar para um DOWNSTREAM rotas recebidas de um
UPSTREAM.
No exemplo as rotas recebidas do AS 20 e 30 precisam chegar ao
AS 50 e vice-versa.
350
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.1 - Implementando Múltiplas Saídas para
Clientes de Trânsito
Alguns pontos importantes:
1. Um protocolo de roteamento IGP precisa garantir conectividade IP
entre TODOS os routers do AS.
2. Mas se não houver múltiplos caminhos, não há necessidade de IGP,
apenas rotas estáticas.
351
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.1 - Implementando Múltiplas Saídas para
Clientes de Trânsito
Em nosso LAB há múltiplos caminhos, e todos os routers (exceto
AS's externos) já estão configurados com OSPF:
PTT-RJ
PTT-SP 40X
50X 50Z
100
R2 R5 50X
200
AS-X
R3
610XX
R1 R4 40X
peering
10X
IP's e interfaces detalhados em:
goo.gl/kIcIbX
352
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
40Z
50X
50Z
100
R2 R5 50X
200
AS-X
R3
610XX
R1 R4 40X
10X
353
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.1 - Implementando Múltiplas Saídas
para Clientes de Trânsito
LAB: Considerando que as cidades onde ficam R4 e R5 atendem
clientes de trânsito (DOWNSTREAMS), e as cidades onde ficam
R1 e R2 tem saída de trânsito IP (UPSTREAMS) e PTT,
precisaremos que R4 e R5 recebam e enviem rotas para o AS 100
(através de R1), e para o AS 200 através de R2.
BGP ENTRE
AS-X-R4 E AS-40X-R1
R4
AS-X-R4
40X-R1
AS-40X-R1
AS-X-R4>ping X.104.1.2
AS-40X-R1 (ttyp0)
login: juniper
Password: juniper.123
[edit]
juniper@AS-401-R1#
set routing-options autonomous-system 40X
set protocols bgp group eBGP-upstream-AS-X type external
set protocols bgp group eBGP-upstream-AS-X export AS-X-OUT
set protocols bgp group eBGP-upstream-AS-X peer-as X
set protocols bgp group eBGP-upstream-AS-X neighbor X.104.1.1
[edit]
juniper@AS-40X-R1#
[edit]
juniper@AS-40X-R1#
É preciso declarar essa policy para
conseguir aplicar as configurações
LAB 2-1-1 363
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.1 - Implementando Múltiplas Saídas
para Clientes de Trânsito
[edit]
juniper@AS-40X-R1#
set policy-options policy-statement AS-X-OUT term 1 from route-filter 154.X.0.0/16 exact
set policy-options policy-statement AS-X-OUT term 1 then accept
set policy-options policy-statement AS-X-OUT then reject
set interfaces lo0 unit 0 family inet address 154.X.0.1/32
set routing-options static route 154.X.0.0/16 discard
[edit]
juniper@AS-40X-R1#
[edit]
juniper@AS-40X-R1# commit
commit complete
[edit]
juniper@AS-401-R1#
BGP ENTRE
AS-X-R5 E AS-50X-R1
R5
AS-X-R5
R1
AS-50X-R1
vyatta@AS-50X-R1:~$ configure R1
vyatta@AS-50X-R1# run show ip bgp summary
BGP router identifier 155.X.0.1, local AS number 50X
RIB entries 1, using 96 bytes of memory
Peers 1, using 4560 bytes of memory
R1
AS-X-R1
AS-X-R1#configure terminal
AS-X-R1(config)# ip prefix-list BLOCOS-AS-40X permit 154.X.0.0/16 le 24
AS-X-R1(config)# ip prefix-list BLOCOS-AS-50X permit 155.X.0.0/16 le 24
!--- Criando as prefix-lists dos clientes AS 40X e 50X R1
AS-X-R1(config)#route-map AS-10X-IN permit 10
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-10X
AS-X-R1(config-route-map)#set local-preference 300
AS-X-R1(config-route-map)#exit
!--- Configurando o route-map que o IN do cliente AS-10X
(...)
R2
AS-X-R2
AS-X-R2#configure terminal
AS-X-R2(config)# ip prefix-list MEUS-BLOCOS permit X.0.0.0/8 R2
AS-X-R2(config)# ip prefix-list BLOCOS-AS-10X permit 187.X.0.0/22 le 24
AS-X-R2(config)# ip prefix-list BLOCOS-AS-40X permit 154.X.0.0/16 le 24
AS-X-R2(config)# ip prefix-list BLOCOS-AS-50X permit 155.X.0.0/16 le 24
!--- Criando as prefix-lists dos clientes AS 10X, 40X, 50X e blocos do AS local
AS-X-R2(config)#ip as-path access-list 1 deny _(6451[2-9]|645[2-9][0-9]|64[6-9]..|65...)_
!--- deny de 64512 a 65535
AS-X-R2(config)#ip as-path access-list 1 permit .*
!--- aceita todo o resto
(...)
(...)
AS-X-R2(config)#route-map AS-100-IN deny 10
AS-X-R2(config-route-map)#match ip address prefix-list BLOQUEADOS
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-100-IN permit 999 R2
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-100-OUT permit 10
AS-X-R2(config-route-map)#match ip address prefix-list MEUS-BLOCOS
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-100-OUT permit 20
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-10X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-100-OUT permit 30
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-40X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-100-OUT permit 40
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-50X
AS-X-R2(config-route-map)#exit
(...)
(...)
AS-X-R2(config)#route-map AS-200-IN deny 10
AS-X-R2(config-route-map)#match ip address prefix-list BLOQUEADOS
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-200-IN permit 999 R2
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-200-OUT permit 10
AS-X-R2(config-route-map)#match ip address prefix-list MEUS-BLOCOS
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-200-OUT permit 20
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-10X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-200-OUT permit 30
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-40X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-200-OUT permit 40
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-50X
AS-X-R2(config-route-map)#exit
(...)
(...)
AS-X-R2(config)#route-map PTT-RJ-IN deny 10
AS-X-R2(config-route-map)#match ip address prefix-list BLOQUEADOS
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map PTT-RJ-IN permit 999 R2
AS-X-R2(config-route-map)#set local-preference 120
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map PTT-RJ-OUT permit 10
AS-X-R2(config-route-map)#match ip address prefix-list MEUS-BLOCOS
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map PTT-RJ-OUT permit 20
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-10X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map PTT-RJ-OUT permit 30
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-40X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map PTT-RJ-OUT permit 40
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-50X
AS-X-R2(config-route-map)#exit
R1
AS-X-R1
AS-X-R1#conf t
AS-X-R1(config)#router bgp X R1
AS-X-R1(config-router)#neighbor X.0.0.5 remote-as X
AS-X-R1(config-router)#neighbor X.0.0.5 description iBGP AS-X-R5
AS-X-R1#conf t
AS-X-R1(config)#router bgp X
R1
AS-X-R1(config-router)#neighbor X.0.0.4 remote-as X
AS-X-R1(config-router)#neighbor X.0.0.4 description iBGP AS-X-R4
R4
AS-X-R4
AS-X-R4#conf t
AS-X-R4(config)#router bgp X R4
AS-X-R4(config-router)#neighbor X.0.0.1 remote-as X
AS-X-R4(config-router)#neighbor X.0.0.1 description iBGP AS-X-R1
AS-X-R4#conf t
AS-X-R4(config)#router bgp X
R4
AS-X-R4(config-router)#neighbor X.0.0.2 remote-as X
AS-X-R4(config-router)#neighbor X.0.0.2 description iBGP AS-X-R2
R5
AS-X-R5
AS-X-R5#conf t
AS-X-R5(config)#router bgp X R5
AS-X-R5(config-router)#neighbor X.0.0.1 remote-as X
AS-X-R5(config-router)#neighbor X.0.0.1 description iBGP AS-X-R1
AS-X-R5#conf t
AS-X-R5(config)#router bgp X
R5
AS-X-R5(config-router)#neighbor X.0.0.2 remote-as X
AS-X-R5(config-router)#neighbor X.0.0.2 description iBGP AS-X-R2
R2
AS-X-R2
AS-X-R2#conf t
AS-X-R2(config)#router bgp X R2
AS-X-R2(config-router)#neighbor X.0.0.4 remote-as X
AS-X-R2(config-router)#neighbor X.0.0.4 description iBGP AS-X-R4
AS-X-R2#conf t
AS-X-R2(config)#router bgp X
R2
AS-X-R2(config-router)#neighbor X.0.0.5 remote-as X
AS-X-R2(config-router)#neighbor X.0.0.5 description iBGP AS-X-R5
PERGUNTAS?
402
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.2
Update-Source
403
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.2 - Update-source
– Provavelmente não!
404
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.2 - Update-source
405
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.2 - Update-source
406
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.2 - Update-source
Vejamos:
407
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.2 - Update-source
408
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.2 - Update-source
AS-X-R4(config)#router bgp X
AS-X-R4(config-router)#neighbor X.0.0.1 update-source loopback 0
AS-X-R4(config-router)#neighbor X.0.0.2 update-source loopback 0
!--- loopback 0 é a interface que possui o IP X.0.0.4 no R4
!--- mas também podemos declarar um IP ao invés de uma interface
AS-X-R5(config)#router bgp X
AS-X-R5(config-router)#neighbor X.0.0.1 update-source loopback 0
AS-X-R5(config-router)#neighbor X.0.0.2 update-source loopback 0
!--- loopback 0 é a interface que possui o IP X.0.0.5 no R5
412
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.2 - Update-source
AS-X-R2#conf t
AS-X-R2(config)#router bgp X
AS-X-R2(config-router)#neighbor X.0.0.4 update-source loopback 0
AS-X-R2(config-router)#neighbor X.0.0.5 update-source loopback 0
AS-X-R1#conf t
AS-X-R1(config)#router bgp X
AS-X-R1(config-router)#neighbor X.0.0.4 next-hop-self
AS-X-R1(config-router)#neighbor X.0.0.5 next-hop-self
AS-X-R2#conf t
AS-X-R2(config)#router bgp X
AS-X-R2(config-router)#neighbor X.0.0.4 next-hop-self
AS-X-R2(config-router)#neighbor X.0.0.5 next-hop-self
Continuando em R4 e R5...
AS-X-R4#conf t
AS-X-R4(config)#router bgp X
AS-X-R4(config-router)#neighbor X.0.0.1 next-hop-self
AS-X-R4(config-router)#neighbor X.0.0.2 next-hop-self
AS-X-R5#conf t
AS-X-R5(config)#router bgp X
AS-X-R5(config-router)#neighbor X.0.0.1 next-hop-self
AS-X-R5(config-router)#neighbor X.0.0.2 next-hop-self
AS-X-R1#conf t
AS-X-R1(config)#router bgp X
AS-X-R1(config-router)#no synchronization
AS-X-R1(config-router)#end
AS-X-R1#clear ip bgp *
AS-X-R2#conf t
AS-X-R2(config)#router bgp X
AS-X-R2(config-router)#no synchronization
AS-X-R2(config-router)#end
AS-X-R2#clear ip bgp *
Continuando em R4 e R5...
AS-X-R4#conf t
AS-X-R4(config)#router bgp X
AS-X-R4(config-router)#no synchronization
AS-X-R4(config-router)#end
AS-X-R4#clear ip bgp *
AS-X-R5#conf t
AS-X-R5(config)#router bgp X
AS-X-R5(config-router)#no synchronization
AS-X-R5(config-router)#end
AS-X-R5#clear ip bgp *
AS-X-R1#sh ip bgp
...
Network Next Hop Metric LocPrf Weight Path
*> X.0.0.0 0.0.0.0 0 32768 i
*> 100.0.0.0 100.X.1.1 0 0 100 i
*>i14X.0.0.0 X.0.0.4 0 100 0 146 i
*>i15X.0.0.0 X.0.0.5 0 100 0 156 i
AS-123-R1>traceroute 154.X.0.1
Entendendo o "syncronization"...
425
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
Entendendo o ”syncronization”...
426
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
427
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
428
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
429
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
430
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
431
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
432
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
433
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
434
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
435
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
436
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
437
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
438
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
AS-X-R1#sh ip bgp
Agora podemos ver pelo ">" que a rota para 154.X.0.0 está
na FIB.
Outro detalhe é o "i" à esquerda identifica a rota como
"internal".
LAB 2-1-5 443
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
445
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.4 - BGP Synchronization
R2
AS-X-R2#conf t
AS-X-R2(config)#router ospf 1
AS-X-R2(config-router)#no redistribute bgp X
AS-X-R2(config-router)#end
AS-X-R2#clear ip ospf process
!--- reinicia o processo OSPF
Reset ALL OSPF processes? [no]: yes
AS-X-R2#
R4
AS-X-R4#conf t
AS-X-R4(config)#router ospf 1
AS-X-R4(config-router)#no redistribute bgp X
AS-X-R4(config-router)#end
AS-X-R4#clear ip ospf process
!--- reinicia o processo OSPF
Reset ALL OSPF processes? [no]: yes
AS-X-R4#
R5
AS-X-R5#conf t
AS-X-R5(config)#router ospf 1
AS-X-R5(config-router)#no redistribute bgp X
AS-X-R5(config-router)#end
AS-X-R5#clear ip ospf process
!--- reinicia o processo OSPF
Reset ALL OSPF processes? [no]: yes
AS-X-R5#
AS-X-R1#conf t
AS-X-R1(config)#router bgp X
AS-X-R1(config-router)#neighbor X.0.0.3 remote-as X
AS-X-R1(config-router)#neighbor X.0.0.3 description iBGP R3
AS-X-R1(config-router)#neighbor X.0.0.3 next-hop-self
AS-X-R1(config-router)#neighbor X.0.0.3 update-source loopback 0
AS-X-R1(config-router)#neighbor X.0.0.3 soft-reconfiguration inbound
AS-X-R1(config-router)#exit
!--- não vamos utilizar nenhum filtro de in-out para a sessão com R3
AS-X-R2#conf t
AS-X-R2(config)#router bgp X
AS-X-R2(config-router)#neighbor X.0.0.3 remote-as X
AS-X-R2(config-router)#neighbor X.0.0.3 description iBGP R3
AS-X-R2(config-router)#neighbor X.0.0.3 next-hop-self
AS-X-R2(config-router)#neighbor X.0.0.3 update-source loopback 0
AS-X-R2(config-router)#neighbor X.0.0.3 soft-reconfiguration inbound
AS-X-R2(config-router)#exit
!--- não vamos utilizar nenhum filtro de in-out
AS-X-R4#conf t
AS-X-R4(config)#router bgp X
AS-X-R4(config-router)#neighbor X.0.0.3 remote-as X
AS-X-R4(config-router)#neighbor X.0.0.3 description iBGP R3
AS-X-R4(config-router)#neighbor X.0.0.3 next-hop-self
AS-X-R4(config-router)#neighbor X.0.0.3 update-source loopback 0
AS-X-R4(config-router)#neighbor X.0.0.3 soft-reconfiguration inbound
AS-X-R4(config-router)#exit
AS-X-R5#conf t
AS-X-R5(config)#router bgp X
AS-X-R5(config-router)#neighbor X.0.0.3 remote-as X
AS-X-R5(config-router)#neighbor X.0.0.3 description iBGP R3
AS-X-R5(config-router)#neighbor X.0.0.3 next-hop-self
AS-X-R5(config-router)#neighbor X.0.0.3 update-source loopback 0
AS-X-R5(config-router)#neighbor X.0.0.3 soft-reconfiguration inbound
AS-X-R5(config-router)#exit
AS-X-R1#sh ip bgp
BGP table version is 2, local router ID is X.0.0.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
458
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.5
Route-Reflector
459
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.5 - Route-Reflector
modelos:
461
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.5 - Route-Reflector
462
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.5 - Route-Reflector
463
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.5 - Route-Reflector
AS-X-R3#conf t
AS-X-R3(config)#router bgp X
AS-X-R3(config-router)#neighbor X.0.0.1 route-reflector-client
!--- iBGP com R1
AS-X-R3(config-router)#neighbor X.0.0.2 route-reflector-client
!--- iBGP com R2
AS-X-R3(config-router)#neighbor X.0.0.4 route-reflector-client
!--- iBGP com R4
AS-X-R3(config-router)#neighbor X.0.0.5 route-reflector-client
!--- iBGP com R5
465
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.6
Peer Groups
466
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.6 - Peer Groups
467
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.6 - Peer Groups
469
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.6 - Peer Groups
Finalizando o LAB:
Acessar o Looking Glass e verificar se esse alcança o AS do grupo
e todos os seus respectivos DOWNSTREAMS
471
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.7 - Local Preference x Weight no iBGP
Características:
Weight:
✔ Proprietário Cisco (embora implementado por Mikrotik, Vyatta, Quagga, OpenBGPD)
✔ Primeiro critério na escolha de rotas (maior weight)
✔ Não é considerado um atributo e seu valor pode ser de 0 a 65535
✔ Os valores de weight não são transitivos (mesmo dentro do AS)
Local Preference:
✔ Conhecido em todas as implementações de BGP
✔ Segundo critério depois do weight (maior local pref)
✔ Seu valor padrão é 100 e pode variar de 0 a 4294967295
✔ Os valores alterados são propagados por todo o iBGP
472
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.7 - Local Preference x Weight no iBGP
Como vimos nos labs anteriores, posso atribuir um valor de weight 10 no comando "neighbor
x.x.x.x weight 10" para todas as rotas recebidas, ou manualmente apenas para
determinados prefixos utilizando o route-map. Vamos alterar o weight apenas de um
determinado prefixo (99.0.0.0/8) e todos os seus sub-prefixos
AS-X-R1#conf t
AS-X-R1(config)#ip prefix-list BLOCOS-AS-123 permit 123.0.0.0/8 le 24
!--- adiciona o classe A e sub-redes 123.0.0.0 na prefix-list BLOCOS-AS-123
AS-X-R1(config)#route-map AS-100-IN permit 20
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-123
AS-X-R1(config-route-map)#set weight 10
!--- estabelece os prefixos da lista BLOCOS-AS-123 como condição para receber a ação permir
!--- e a modificação opcional que atribui um valor 10 de weight
AS-X-R1(config-route-map)#end
AS-X-R1#clear ip bgp 100.X.1.1 soft
Conferindo a modificação:
AS-X-R1#sh ip bgp
...
Network Next Hop Metric LocPrf Weight Path
475
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
5.7 - Local Preference x Weight no iBGP
476
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
LAB:
utilizando os recursos vistos no curso vamos configurar os
routers do AS de maneira que atenda todos os seguintes
requisitos:
✔ Todo o tráfego de saída (upload) deve utilizar o link do AS 100, exceto com destino ao AS 200
via R1
✔ Simulando que o link do AS 200 está sobrecarregado, o tráfego de entrada (download) do
DOWNSTREAM AS 50X (apenas) deve chegar pelo AS 100
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
479
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
480
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
481
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
482
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
ATENÇÃO!! 10X
483
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
ATENÇÃO!! 10X
484
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
485
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
486
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Todo o tráfego de saída (upload) deve utilizar o link do AS 100, exceto com destino ao AS 200 via
R1
Verificando status inicial em R4:
AS-X-R4#traceroute 123.123.123.1
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
488
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
489
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Todo o tráfego de saída (upload) deve utilizar o link do AS 100, exceto com destino ao AS 200 via
R1
Testando rota para 123.123.123.1 novamente em R4 após configurações em R1
AS-X-R4#traceroute 123.123.123.1
Type escape sequence to abort.
Tracing the route to 123.123.123.1
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
491
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
492
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Todo o tráfego de saída (upload) deve utilizar o link do AS 100, exceto com destino ao AS 200 via
R1
Para alcançar o AS 200 a rota escolhida não foi a rota correta...
AS-X-R4#traceroute 200.0.0.1
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
494
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
495
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Todo o tráfego de saída (upload) deve utilizar o link do AS 100, exceto com destino ao AS 200 via
R1
Precisamos fazer ajustes em R2:
AS-X-R2#configure terminal
AS-X-R2(config)#ip as-path access-list 200 permit ^(200 ?)+$
AS-X-R2(config)#route-map AS-200-IN permit 5
AS-X-R2(config-route-map)#match as-path 200
AS-X-R2(config-route-map)#set local-preference 106
AS-X-R2(config-route-map)#end
AS-X-R2#clear ip bgp 200.X.2.1 soft
AS-X-R4#traceroute 200.0.0.100
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
498
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
499
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Todo o tráfego de saída (upload) deve utilizar o link do AS 100, exceto com destino ao AS 200 via
R1
Porém um dos requisitos não foi atendido, R2 alcança o AS 123 via R3->R1 e não pelo link direto
como deveria...
AS-X-R2#traceroute 123.123.123.1
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
501
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
502
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Todo o tráfego de saída (upload) deve utilizar o link do AS 100, exceto com destino ao AS 200 via
R1
Para corrigir esse problema precisamos manipular um atributo mais forte que o local preference...
AS-X-R2#configure terminal
AS-X-R2(config)#router bgp X
AS-X-R2(config-router)#neighbor 100.X.2.1 weight 10
AS-X-R2(config-router)#end
AS-X-R2#clear ip bgp 100.X.2.1
AS-X-R2#traceroute 123.123.123.1
SUCESSO!!
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
506
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
507
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Todo o tráfego de saída (upload) deve utilizar o link do AS 100, exceto com destino ao AS 200 via
R1
… E outro para o AS 200, afinal se o destino for o AS 200 precisa usar o link direto...
AS-X-R2#traceroute 200.0.0.100
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
509
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
510
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Todo o tráfego de saída (upload) deve utilizar o link do AS 100, exceto com destino ao AS 200 via
R1
E o ajuste final...
AS-X-R2#configure terminal
AS-X-R2(config)#route-map AS-200-IN permit 5
AS-X-R2(config-route-map)#set weight 11
AS-X-R2(config-route-map)#end
AS-X-R2#traceroute 200.0.0.100
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
514
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
515
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Simulando que o link do AS 200 está sobrecarregado, o tráfego de entrada (download) do
DOWNSTREAM AS 50X (apenas) deve chegar pelo AS 100
AS-123-R1>traceroute 155.X.0.1
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
517
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
518
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Simulando que o link do AS 200 está sobrecarregado, o tráfego de entrada (download) do
DOWNSTREAM AS 50X (apenas) deve chegar pelo AS 100
AS-X-R1#configure terminal
AS-X-R1(config)#route-map AS-200-OUT permit 40
AS-X-R1(config-route-map)#set as-path prepend X X X X
AS-X-R1(config-route-map)#end
AS-X-R1#clear ip bgp 200.X.1.1 out
AS-X-R2#configure terminal
AS-X-R2(config)#route-map AS-200-OUT permit 40
AS-X-R2(config-route-map)#set as-path prepend X X X X
AS-X-R2(config-route-map)#end
AS-X-R2#clear ip bgp 200.X.2.1 out
AS-123-R1>traceroute 155.X.0.1
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
524
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
525
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Simulando que o link do AS 200 está sobrecarregado, o tráfego de entrada (download) do
DOWNSTREAM AS 50X (apenas) deve chegar pelo AS 100
Pela quantidade de prepends, até mesmo o AS 222 alcnça o AS 50X pelo link do AS 100...
AS-222-R1>traceroute 155.X.0.1
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
528
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
50Z
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
529
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
• 5.8 Engenharia de Tráfego II
Simulando que o link do AS 200 está sobrecarregado, o tráfego de entrada (download) do
DOWNSTREAM AS 50X (apenas) deve chegar pelo AS 100
AS-X-R1#show run
Building configuration...
AS-X-R1#configure terminal
AS-X-R1(config)#route-map AS-100-OUT permit 40
AS-X-R1(config-route-map)#set metric 10
AS-X-R1(config-route-map)#end
AS-X-R1#clear ip bgp 100.X.1.1 out
AS-X-R1#show run
Building configuration...
AS-123-R1#traceroute 155.X.0.1
111
55
100 R2 R5 50X
AS-X
123
R3
610XX
222 200
R1 R4 40X
10X
536
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
537
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
DESFAZENDO A ENGENHARIA DE
TRRÁFEGO II
#############R1###########################
AS-X-R1(config)#route-map AS-100-IN permit 999
AS-X-R1(config-route-map)#no set local-preference 105
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map AS-100-OUT permit 40
AS-X-R1(config-route-map)#no set metric 10
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map AS-200-OUT permit 40
AS-X-R1(config-route-map)#no set as-path prepend X X X X
#############R2###########################
PERGUNTAS?
539
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.0
BGP Communities
540
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.0
BGP Communities
6. BGP Communities
541
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1
Communities Padrão
542
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1 – Communities Padrão
543
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1 – Communities Padrão
544
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1 – Communities Padrão
545
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1 – Communities Padrão
546
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1 – Communities Padrão
547
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1 – Communities Padrão
548
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1 – Communities Padrão
549
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1 – Communities Padrão
AS-X-R1#conf t
AS-X-R1(config)#route-map AS-200-OUT permit 20
AS-X-R1(config-route-map)#no set as-path prepend X X
550
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1 – Communities Padrão
AS-X-R2#conf t
AS-X-R2(config)#route-map AS-200-OUT permit 20
AS-X-R2(config-route-map)#no set as-path prepend X X
551
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.1 – Communities Padrão
(...)
[edit]
set policy-options policy-statement AS-X-OUT term 1 then community set no-export
set policy-options community no-export members no-export
commit
LAB 2 :
✔ Utilizar communities PADRÃO e fazer com que o
DOWNLOAD dos AS's 40X e 50X cheguem pelo link do
AS 100 quando a origem for o AS 123 (internet).
✔ Os routers do AS 200 deverão alcançar os DOWNSTREAMS
do grupo pelo link direto sem ter que ”dar a volta” pelo
AS 123.
LAB 2 :
LAB 2 :
Communities Numéricas
562
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.2 - Communities Numéricas
563
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.2 - Communities Numéricas
564
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.2 - Communities Numéricas
565
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.2 - Communities Numéricas
router#conf t
router(config)#ip bgp-community new-format
566
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.3
Identificando e Tratando
Rotas de Peers Específicos
567
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.3 - Identificando e Tratando Rotas de
Peers Específicos
Quando utilizamos o comando:
568
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.3 - Identificando e Tratando Rotas de
Peers Específicos
Com o comando "additive" qualquer community existente é
preservada:
AS-X-R4(config-route-map)#set community 123:123 additive
✗ OBS: Digitar o comando "set community" tem efeito "cumulativo"
exemplo: se digitarmos a seguinte sequência de comandos:
router#conf t
router(config)#route-map teste permit 10
router(config-route-map)#set community 123:123
router(config-route-map)#exit
router(config)#route-map teste permit 10
router(config-route-map)#set community 111:222
router(config-route-map)#set community 333:214
router(config-route-map)#end
router#
router#conf t
router(config)#route-map teste permit 10
router(config-route-map)#set community 555:82
569
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.3 - Identificando e Tratando Rotas de
Peers Específicos
570
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.3 - Identificando e Tratando Rotas de
Peers Específicos
571
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.3 - Identificando e Tratando Rotas de
Peers Específicos
✔ Estabelecer uma community (X:20) numérica para identificar que o prefixo foi
recebido de um cliente de trânsito:
✔ Aplicar um “set community X:20” nos filtros de entrada de todos os clientes
✔ Mudar os filtros da saida de UPSTREAMS para filtros baseados apenas em
community
572
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.3 - Identificando e Tratando Rotas de
Peers Específicos
AS-X-R4#conf t
AS-X-R5(config)#ip bgp-community new-format
AS-X-R4(config)#router bgp X
AS-X-R4(config-router)#no neighbor X.104.1.2 prefix-list BLOCOS-AS-40X in
!--- Desconfigura o filtro de entrada baseado em prefix-list
AS-X-R4(config-router)#neighbor X.104.1.2 route-map AS-40X-IN in
!--- Configura um filtro de entrada baseado em route-map
AS-X-R4(config-router)#exit
AS-X-R4(config)#route-map AS-40X-IN permit 10
AS-X-R4(config-route-map)#match ip address prefix-list BLOCOS-AS-40X
AS-X-R4(config-route-map)#set community X:20 additive
AS-X-R4(config-route-map)#end
AS-X-R4#clear ip bgp *
AS-X-R5#conf t
AS-X-R5(config)#ip bgp-community new-format
AS-X-R5(config)#router bgp X
AS-X-R5(config-router)#no neighbor X.105.1.2 prefix-list BLOCOS-AS-50X in
!--- Desconfigura o filtro de entrada baseado em prefix-list
AS-X-R5(config-router)#neighbor X.105.1.2 route-map AS-50X-IN in
!--- Configura um filtro de entrada baseado em route-map
AS-X-R5(config-router)#exit
AS-X-R5(config)#route-map AS-50X-IN permit 10
AS-X-R5(config-route-map)#match ip address prefix-list BLOCOS-AS-50X
AS-X-R5(config-route-map)#set community X:20 additive
AS-X-R5(config-route-map)#end
AS-X-R5#clear ip bgp *
LAB 2 :
R1
R2
LAB 2 :
AS-X-R2#conf t
AS-X-R2(config)#ip community-list standard CLIENTES permit X:20
!--- Cria uma community-list e adiciona a community X:20 nessa lista R2
AS-X-R2(config)#route-map AS-100-OUT permit 15
AS-X-R2(config-route-map)#match community CLIENTES
AS-X-R2(config)#route-map AS-200-OUT permit 15
AS-X-R2(config-route-map)#match community CLIENTES
AS-X-R2(config-route-map)#end
AS-X-R2#clear ip bgp *
*Com apenas 2 route-maps anunciarmos todos os clientes, mesmo que fossem dezenas
LAB 2-2-2 578
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.3 - Identificando e Tratando Rotas de
Peers Específicos
AS-X-R1#sh running-config | begin AS-100-OUT Temos além do route-map “permit 10” (que
route-map AS-100-OUT permit 10 permite anúncio dos prefixos “locais”) mais dois,
match ip address prefix-list MEUS-BLOCOS
!
que permitem o anúncio de cada um dos
route-map AS-100-OUT permit 20 clientes.
match ip address prefix-list BLOCOS-AS-10X
!
route-map AS-100-OUT permit 30
Após a marcação da community em R4 e R5, é
match ip address prefix-list BLOCOS-AS-40X possível fazer um route-map para anunciar
! todos os prefixos de clientes de transito que
...
foram anteriormente marcados com X:20
*Com apenas 2 route-maps anunciarmos todos os clientes, mesmo que fossem dezenas
LAB 2-2-2 579
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.3 - Identificando e Tratando Rotas de
Peers Específicos
AS-X-R2#conf t
AS-X-R2(config)#no route-map AS-200-OUT permit 20
AS-X-R2(config)#no route-map AS-200-OUT permit 30
AS-X-R2(config)#no route-map AS-200-OUT permit 40
R2
AS-X-R2(config)#no route-map AS-100-OUT permit 20
AS-X-R2(config)#no route-map AS-100-OUT permit 30
AS-X-R2(config)#no route-map AS-100-OUT permit 40
Manipulando Trânsito
(Nacional/Internacional) com
Communities
581
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.4 – Manipulando Trânsito
(Nacional/Internacional) com Communities
Brasil Telecom
8167:90 Set Local Preference 90
8167:100 Set Local Preference 100
8167:110 Set Local Preference 110
* (default é Local Preference 200)
582
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.4 – Manipulando Trânsito
(Nacional/Internacional) com Communities
Embratel
583
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.4 – Manipulando Trânsito
(Nacional/Internacional) com Communities
GVT
584
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.4 – Manipulando Trânsito
(Nacional/Internacional) com Communities
Global Crossing
585
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.4 – Manipulando Trânsito
(Nacional/Internacional) com Communities
Uma série de communities complexas possibilitam o
tratamento do prepend para cada um dos peers da GLBX
3549:8...
ASN Peer No Export Prepend+1 Prepend+2 Prepend+3
Qwest (AS 209) receberá o prefixo com o AS PATH: "3549 3549 4111"
➔
MCI (AS 701) receberá o prefixo com o AS PATH: "3549 3549 3549 3549 4111"
➔
587
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.4 – Manipulando Trânsito
(Nacional/Internacional) com Communities
Intelig
588
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.4 – Manipulando Trânsito
(Nacional/Internacional) com Communities
CTBC e outras
http://drpeering.net/white-papers/Ecosystems/Evolution-of-the-U.S.-Peering-
Ecosystem.html
589
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.5
590
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
6.5 - Engenharia de Tráfego III
Solução LAB 2:
(...)
[edit]
del policy-options policy-statement AS-X-OUT then community set no-export
commit
Solução LAB 2:
PERGUNTAS?
594
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.0
Filtros Avançados
para Um AS de Trânsito
O trabalho Curso de BGP Design com Roteadores Cisco de Rinaldo Vaz foi licenciado com
uma Licença Creative Commons - Atribuição 3.0 Não Adaptada.
Podem estar disponíveis autorizações adicionais ao âmbito desta licença em
rinaldopvaz@gmail.com.
595
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.0
Filtros Avançados
para Um AS de
Trânsito
7. Filtros avançados para um AS de trânsito
596
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.1
597
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.1 – Manipulando Rotas com Múltiplos Ptts
598
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.1 – Manipulando Rotas com Múltiplos Ptts
AS-X-R1#conf t
AS-X-R1(config)#route-map PTT-SP-IN permit 999
AS-X-R1(config-route-map)#set community X:1111 additive
...
599
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.1 – Manipulando Rotas com Múltiplos Ptts
Se meu AS participa de mais de um PTT posso filtrar rotas
de ambos e exportar para o meu cliente:
AS-X-R2#conf t
AS-X-R2(config)#route-map PTT-RJ-IN permit 999
AS-X-R2(config-route-map)#set community X:2222 additive
Downstreams com
Multihoming
601
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.2 – Downtreams com Multihoming
AS-X-R1(config)#no route-map AS-100-OUT
AS-X-R1(config)#route-map AS-100-OUT permit 10
AS-X-R1(config-route-map)#match ip address prefix-list MEUS-BLOCOS
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map AS-100-OUT permit 20
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-10X
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map AS-100-OUT permit 30
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-40X
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map AS-100-OUT permit 40
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-50X
AS-X-R1(config)#no route-map AS-200-OUT
AS-X-R1(config)#route-map AS-200-OUT permit 10
AS-X-R1(config-route-map)#match ip address prefix-list MEUS-BLOCOS
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map AS-200-OUT permit 20
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-10X
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map AS-200-OUT permit 30
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-40X
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map AS-200-OUT permit 40
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-50X
AS-X-R1(config-route-map)#exit
602
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.2 – Downtreams com Multihoming
AS-X-R2(config)#no route-map AS-100-OUT
AS-X-R2(config)#route-map AS-100-OUT permit 10
AS-X-R2(config-route-map)#match ip address prefix-list MEUS-BLOCOS
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-100-OUT permit 20
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-10X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-100-OUT permit 30
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-40X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-100-OUT permit 40
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-50X
AS-X-R2(config)#no route-map AS-200-OUT
AS-X-R2(config)#route-map AS-200-OUT permit 10
AS-X-R2(config-route-map)#match ip address prefix-list MEUS-BLOCOS
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-200-OUT permit 20
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-10X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-200-OUT permit 30
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-40X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map AS-200-OUT permit 40
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-50X
AS-X-R2(config-route-map)#exit
603
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.2 – Downtreams com Multihoming
604
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.2 – Downtreams com Multihoming
40X-R1
AS-40X-R1
[edit]
juniper@AS-40X-R1#
set protocols bgp group eBGP-downstream-AS-611XX type external 40X-R1
set protocols bgp group eBGP-downstream-AS-611XX import AS-611XX-IN
set protocols bgp group eBGP-downstream-AS-611XX peer-as 611XX
set protocols bgp group eBGP-downstream-AS-611XX neighbor 154.X.100.2
set policy-options policy-statement AS-611XX-IN term 1 from route-filter 161.X.0.0/22 prefix-length-range /22-/24
set policy-options policy-statement AS-611XX-IN term 1 then accept
set policy-options policy-statement AS-611XX-IN then reject
set policy-options policy-statement AS-X-OUT term 2 from route-filter 161.X.0.0/22 prefix-length-range /22-/24
set policy-options policy-statement AS-X-OUT term 2 then accept
juniper@AS-40X-R1# commit
commit complete
[edit]
juniper@AS-40X-R1#
juniper@AS-40X-R1>telnet 154.X.100.2
Trying 154.X.100.2 ... Open
Ubuntu 14.10
AS-611XX-R1 login: routerpc
Password: 123456
$
$ telnet 127.0.0.1 bgpd
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Password: 123456
AS-611XX-R1>
R1
AS-50X-R1
vyatta@AS-50X-R1:~$ configure R1
[edit]
vyatta@AS-50X-R1#
set protocols bgp 50X neighbor 155.X.100.2 remote-as 6110Z
set protocols bgp 50X neighbor 155.X.100.2 prefix-list import BLOCOS-AS-6110Z
set protocols bgp 50X neighbor 155.X.100.2 soft-reconfiguration inbound
set policy prefix-list BLOCOS-AS-6110Z rule 10 prefix 161.Z.0.0/22
set policy prefix-list BLOCOS-AS-6110Z rule 10 le 24
set policy prefix-list BLOCOS-AS-6110Z rule 10 action permit
set policy prefix-list MEUS-BLOCOS rule 20 prefix 161.Z.0.0/22
set policy prefix-list MEUS-BLOCOS rule 20 le 24
set policy prefix-list MEUS-BLOCOS rule 20 action permit
vyatta@AS-50X-R1# commit
[edit]
vyatta@AS-50X-R1#
R4
AS-X-R4
R5
AS-X-R5
R1
AS-X-R1
Liberando os prefixos...
AS-X-R1#conf t R1
AS-X-R1(config)#ip prefix-list BLOCOS-AS-40X permit 161.X.0.0/22 le 24
AS-X-R1(config)#ip prefix-list BLOCOS-AS-50X permit 161.Z.0.0/22 le 24
AS-X-R1(config)#exit
AS-X-R1#clear ip bgp * out
R2
AS-X-R2
Liberando os prefixos...
AS-X-R2#conf t R2
AS-X-R2(config)#ip prefix-list BLOCOS-AS-40X permit 161.X.0.0/22 le 24
AS-X-R2(config)#ip prefix-list BLOCOS-AS-50X permit 161.Z.0.0/22 le 24
AS-X-R2(config-router)#end
AS-X-R2#clear ip bgp * out
619
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.2 – Downtreams com Multihoming
621
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.2 – Downtreams com Multihoming
Já
AS-X-R1(config)#ip as-path access-list 30 permit ^(40X ?)+$
ex
AS-X-R1(config)#ip prefix-list BLOCOS-AS-50X permit 161.Z.0.0/22 le 24
iste
AS-X-R1(config)#ip as-path access-list 40 permit ^(50X ?)+( 6110Z ?)+$
AS-X-R1(config)#ip as-path access-list 40 permit ^(50X ?)+$
Já
AS-X-R1(config)#route-map AS-100-OUT permit 30
ex
is
AS-X-R1(config-route-map)# match as-path 30
te
AS-X-R1#clear ip bgp *
AS-X-R1(config)#route-map AS-100-OUT permit 40
AS-X-R1(config-route-map)# match as-path 40
AS-X-R1#clear ip bgp *
623
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.2 – Downtreams com Multihoming
Já
AS-X-R2(config)#ip as-path access-list 30 permit ^(40X ?)+$
ex
AS-X-R2(config)#ip prefix-list BLOCOS-AS-50X permit 161.Z.0.0/22 le 24
iste
AS-X-R2(config)#ip as-path access-list 40 permit ^(50X ?)+( 6110Z ?)+$
AS-X-R2(config)#ip as-path access-list 40 permit ^(50X ?)+$
Já
ex
is
AS-X-R2(config)#route-map AS-100-OUT permit 30
te
AS-X-R2(config-route-map)# match as-path 30
AS-X-R2#clear ip bgp *
AS-X-R2(config)#route-map AS-100-OUT permit 40
AS-X-R2(config-route-map)# match as-path 40
AS-X-R2#clear ip bgp *
625
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.2 – Downtreams com Multihoming
AS de Trânsito no PTT
parte I
627
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.3 - AS de Trânsito no PTT – parte I
Configurando as políticas de route-map
AS-X-R1
!--- ATENÇÃO TODAS AS PREFIX-LIST ABAIXO JÁ FORAM CRIADAS NOS LABS ANTERIORES
!--- ESTÃO AQUI APENAS PARA LEMBRAR O SEU CONTEÚDO
!--- CASO ESTAS NÃO ESTEJAM PRESENTES CONFIGUREM NOVAMENTE
!--- AS-X-R1(config)#ip prefix-list MEUS-BLOCOS permit X.0.0.0/8
!--- AS-X-R1(config)#ip prefix-list BLOCOS-AS-10X permit 187.X.0.0.0/22 le 24
!--- AS-X-R1(config)#ip prefix-list BLOCOS-AS-40X permit 154.X.0.0/16 le 24
!--- AS-X-R1(config)#ip prefix-list BLOCOS-AS-50X permit 155.X.0.0/16 le 24
AS-X-R1(config)#ip prefix-list BLOCOS-AS-40X permit 161.X.0.0/22 le 24
AS-X-R1(config)#ip prefix-list BLOCOS-AS-50X permit 161.Z.0.0/22 le 24
!--- apenas 2 dos filtros baseados em ASPATH ainda não foram criados
AS-X-R1(config)#ip as-path access-list 10 permit ^$
AS-X-R1(config)#ip as-path access-list 20 permit ^(10X ?)+$
AS-X-R1(config)#ip as-path access-list 30 permit ^(40X ?)+$
AS-X-R1(config)#ip as-path access-list 30 permit ^(40X ?)+( 6110X ?)+$
AS-X-R1(config)#ip as-path access-list 40 permit ^(50X ?)+$
AS-X-R1(config)#ip as-path access-list 40 permit ^(50X ?)+( 6110Z ?)+$
!--- em seguida o primeiro o route-map que trata os filtros de input para redes recebidas do PTT
AS-X-R1(config)#route-map CLIENTE-AS-10X-IN permit 10
AS-X-R1(config-route-map)#match as-path 20
AS-X-R1(config-route-map)#set local-preference 300
(continua...)
(...continuação)
AS-X-R1(config)#route-map PTT-SP-OUT permit 10
AS-X-R1(config-route-map)#match ip address prefix-list MEUS-BLOCOS
AS-X-R1(config-route-map)#match as-path 10
!--- libera os blocos do AS local X
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map PTT-SP-OUT permit 20
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-10X
AS-X-R1(config-route-map)#match as-path 20
!--- libera os blocos do DOWNSTREAM 1
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map PTT-SP-OUT permit 30
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-40X
AS-X-R1(config-route-map)#match as-path 30
!--- libera os blocos do DOWNSTREAM 2
AS-X-R1(config-route-map)#exit
AS-X-R1(config)#route-map PTT-SP-OUT permit 40
AS-X-R1(config-route-map)#match ip address prefix-list BLOCOS-AS-50X
AS-X-R1(config-route-map)#match as-path 40
!--- libera os blocos do DOWNSTREAM 3
(continua...)
(continua...)
(...continuação)
AS-X-R2(config)#route-map PTT-RJ-OUT permit 10
AS-X-R2(config-route-map)#match ip address prefix-list MEUS-BLOCOS
AS-X-R2(config-route-map)#match as-path 10
!--- libera os blocos do AS local X
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map PTT-RJ-OUT permit 20
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-10X
AS-X-R2(config-route-map)#match as-path 20
!--- libera os blocos do DOWNSTREAM 1
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map PTT-RJ-OUT permit 30
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-40X
AS-X-R2(config-route-map)#match as-path 30
!--- libera os blocos do DOWNSTREAM 2
AS-X-R2(config-route-map)#exit
AS-X-R2(config)#route-map PTT-RJ-OUT permit 40
AS-X-R2(config-route-map)#match ip address prefix-list BLOCOS-AS-50X
AS-X-R2(config-route-map)#match as-path 40
!--- libera os blocos do DOWNSTREAM 3
(continua...)
O que faltou?
639
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.4
Configurando um Transporte
Lan2Lan com xconnect/L2TP
640
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.4 – Configurando um Transporte
Lan2Lan com xconnect/L2TP
AS-X-R4(config)#l2tp-class transporte-l2
AS-X-R4(config-l2tp-class)#cookie size 4
AS-X-R4(config-l2tp-class)#exit
!--- Declaramos uma class e demos o nome de “transporte-l2”
AS-X-R4(config)#pseudowire-class transporte-l2
AS-X-R4(config-pw-class)#encapsulation l2tpv3
AS-X-R4 (config-pw-class)#protocol none
AS-X-R4 (config-pw-class)#ip local interface Loopback0
!--- Na configuração da class escolhemos o tipo de tunelamento que em nosso caso será l2tp versão 3.
AS-X-R4 (config-pw-class)#exit
AS-X-R4(config)#interface f0/1
AS-X-R4(config)#no shut
AS-X-R4(config-if)#xconnect X.0.0.1 40X encapsulation l2tpv3 manual pw-class transporte-l2
AS-X-R4(config-if-xconn)#l2tp id 1 1
AS-X-R4(config-if-xconn)#l2tp cookie local 4 1
AS-X-R4(config-if-xconn)# l2tp cookie remote 4 1
AS-X-R1(config)#l2tp-class transporte-l2
AS-X-R1(config-l2tp-class)#cookie size 4
AS-X-R1(config-l2tp-class)#exit
!--- Declaramos uma class e demos o nome de “transporte-l2”
AS-X-R1(config)#pseudowire-class transporte-l2
AS-X-R1(config-pw-class)#encapsulation l2tpv3
AS-X-R1 (config-pw-class)#protocol none
AS-X-R1 (config-pw-class)#ip local interface Loopback0
!--- Na configuração da class escolhemos o tipo de tunelamento que em nosso caso será l2tp versão 3.
AS-X-R1 (config-pw-class)#exit
AS-X-R1(config)#interface g6/0
AS-X-R1(config)#no shut
AS-X-R1(config-if)#xconnect X.0.0.4 40X encapsulation l2tpv3 manual pw-class transporte-l2
AS-X-R1(config-if-xconn)#l2tp id 1 1
AS-X-R1(config-if-xconn)#l2tp cookie local 4 1
AS-X-R1(config-if-xconn)# l2tp cookie remote 4 1
AS-X-R1#sh l2tun
%No active L2F tunnels
L2TP Tunnel and Session Information Total tunnels 0 sessions 1
LocID RemID TunID Username, Intf/ State Last Chg Uniq ID
Vcid, Circuit
1 1 0 14X, Fa2/0 est 00:00:24 1
AS-X-R4#sh l2tun
%No active L2F tunnels
L2TP Tunnel and Session Information Total tunnels 0 sessions 1
LocID RemID TunID Username, Intf/ State Last Chg Uniq ID
Vcid, Circuit
1 1 0 14X, Fa0/0 est 00:00:43 1
645
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.5 - AS de Trânsito no PTT – parte II
647
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
7.5
PERGUNTAS?
648
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
8.0
649
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
8.0
Multiprotocol Label
Switching (MPLS)
8. Multiprotocol Label Switching
650
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
8.1
(BGP Multiprotocol)
651
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
8.1 – BGP através da nuvem MPLS
AS-X-R1(config)#interface g3/0
AS-X-R1(config-if)#mpls ip
AS-X-R1(config-if)#mtu 1600
*Mar 1 00:18:23.703: %LDP-5-NBRCHG: LDP Neighbor X.0.0.3:0 (1) is UP
AS-X-R1(config-if)#mpls mtu 1508
AS-X-R1(config-if)#
*Mar 1 00:18:29.391: %TFIB-3-MPLS_MTU_SET: Setting mpls mtu to 1508 on Serial1/1
which is higher than the interface mtu 1500 . This could lead to packet forwarding problems
including packet drops.
AS-X-R1(config-if)#exit
!--- Configurando LDP com R3
AS-X-R2(config)#interface g3/0
AS-X-R2(config-if)#mtu 1600
AS-X-R2(config-if)#mpls ip
AS-X-R2(config-if)#
*Mar 1 00:21:55.943: %LDP-5-NBRCHG: LDP Neighbor X.0.0.3:0 (1) is UP
AS-X-R2(config-if)#mpls mtu 1508
AS-X-R2(config-if)#
*Mar 1 00:22:08.259: %TFIB-3-MPLS_MTU_SET: Setting mpls mtu to 1508 on Serial1/1
which is higher than the interface mtu 1500 . This could lead to packet forwarding problems
including packet drops.
AS-X-R2(config-if)#exit
!--- Configurando LDP com R3
AS-X-R4(config)#interface G3/0
AS-X-R4(config-if)#mtu 1600
AS-X-R4(config-if)#mpls ip
*Mar 1 00:25:20.579: %LDP-5-NBRCHG: LDP Neighbor X.0.0.3:0 (1) is UP
AS-X-R4(config-if)#
AS-X-R4(config-if)#mpls mtu 1508
AS-X-R4(config-if)#
*Mar 1 00:25:44.683: %TFIB-3-MPLS_MTU_SET: Setting mpls mtu to 1508 on Serial1/0
which is higher than the interface mtu 1500 . This could lead to packet forwarding problems
including packet drops.
AS-X-R4(config-if)#exit
!--- Configurando LDP com R3
AS-X-R5(config)#interface G3/0
AS-X-R5(config-if)#mtu 1600
AS-X-R5(config-if)#mpls ip
*Mar 1 00:29:54.579: %LDP-5-NBRCHG: LDP Neighbor X.0.0.3:0 (1) is UP
AS-X-R5(config-if)#mpls mtu 1508
AS-X-R5(config-if)#
*Mar 1 00:30:20.999: %TFIB-3-MPLS_MTU_SET: Setting mpls mtu to 1508 on Serial1/0
which is higher than the interface mtu 1500 . This could lead to packet forwarding problems
including packet drops.
AS-X-R5(config-if)#exit
!--- Configurando LDP com R3
AS-X-R1#conf t
AS-X-R1(config)#router bgp X
AS-X-R1(config)#bgp cluster-id 0.0.0.1
AS-X-R1(config-router)#neighbor X.0.0.2 remote-as X
AS-X-R1(config-router)#neighbor X.0.0.2 update-source loopback 0
AS-X-R1(config-router)#neighbor X.0.0.2 next-hop-self
AS-X-R1(config-router)#neighbor X.0.0.2 route-reflector-client
!--- Configurando iBGP padrão com R2
AS-X-R1(config-router)#neighbor X.0.0.4 remote-as X
AS-X-R1(config-router)#neighbor X.0.0.4 update-source loopback 0
AS-X-R1(config-router)#neighbor X.0.0.4 next-hop-self
AS-X-R1(config-router)#neighbor X.0.0.4 route-reflector-client
!--- Configurando iBGP padrão com R4
AS-X-R1(config-router)#neighbor X.0.0.5 remote-as X
AS-X-R1(config-router)#neighbor X.0.0.5 update-source loopback 0
AS-X-R1(config-router)#neighbor X.0.0.5 next-hop-self
AS-X-R1(config-router)#neighbor X.0.0.5 route-reflector-client
!--- Configurando iBGP padrão com R5
(...)
(...)
AS-X-R1(config-router)#address-family vpnv4
!--- Entra no address family VPNv4
AS-X-R1(config-router-af)#neighbor X.0.0.2 activate
!--- Adiciona esse neighbor ao modo VPNv4
AS-X-R1(config-router-af)#neighbor X.0.0.2 route-reflector-client
AS-X-R1(config-router-af)#neighbor X.0.0.2 send-community both
!--- Habilida o envio de communities padrão e também do tipo estendida
AS-X-R1(config-router-af)#neighbor X.0.0.4 activate
!--- Adiciona esse neighbor ao modo VPNv4
AS-X-R1(config-router-af)#neighbor X.0.0.4 route-reflector-client
AS-X-R1(config-router-af)#neighbor X.0.0.4 send-community both
!--- Habilida o envio de communities padrão e também do tipo estendida
AS-X-R1(config-router-af)#neighbor X.0.0.5 activate
!--- Adiciona esse neighbor ao modo VPNv4
AS-X-R1(config-router-af)#neighbor X.0.0.5 route-reflector-client
AS-X-R1(config-router-af)#neighbor X.0.0.5 send-community both
!--- Habilida o envio de communities padrão e também do tipo estendida
AS-X-R2#conf t
AS-X-R2(config)#router bgp X
AS-X-R2(config)#bgp cluster-id 0.0.0.2
AS-X-R2(config-router)#neighbor X.0.0.1 remote-as X
AS-X-R2(config-router)#neighbor X.0.0.1 update-source loopback 0
AS-X-R2(config-router)#neighbor X.0.0.1 next-hop-self
AS-X-R2(config-router)#neighbor X.0.0.1 route-reflector-client
!--- Configurando iBGP padrão com R2
AS-X-R2(config-router)#neighbor X.0.0.4 remote-as X
AS-X-R2(config-router)#neighbor X.0.0.4 update-source loopback 0
AS-X-R2(config-router)#neighbor X.0.0.4 next-hop-self
AS-X-R2(config-router)#neighbor X.0.0.4 route-reflector-client
!--- Configurando iBGP padrão com R4
AS-X-R2(config-router)#neighbor X.0.0.5 remote-as X
AS-X-R2(config-router)#neighbor X.0.0.5 update-source loopback 0
AS-X-R2(config-router)#neighbor X.0.0.5 next-hop-self
AS-X-R2(config-router)#neighbor X.0.0.5 route-reflector-client
!--- Configurando iBGP padrão com R5
(...)
(...)
AS-X-R2(config-router)#address-family vpnv4
!--- Entra no address family VPNv4
AS-X-R2(config-router-af)#neighbor X.0.0.1 activate
!--- Adiciona esse neighbor ao modo VPNv4
AS-X-R2(config-router-af)#neighbor X.0.0.1 send-community both
AS-X-R2(config-router-af)#neighbor X.0.0.1 route-reflector-client
!--- Habilida o envio de communities padrão e também do tipo estendida
AS-X-R2(config-router-af)#neighbor X.0.0.4 activate
!--- Adiciona esse neighbor ao modo VPNv4
AS-X-R2(config-router-af)#neighbor X.0.0.4 send-community both
AS-X-R2(config-router-af)#neighbor X.0.0.4 route-reflector-client
!--- Habilida o envio de communities padrão e também do tipo estendida
AS-X-R2(config-router-af)#neighbor X.0.0.5 activate
!--- Adiciona esse neighbor ao modo VPNv4
AS-X-R2(config-router-af)#neighbor X.0.0.5 send-community both
AS-X-R2(config-router-af)#neighbor X.0.0.5 route-reflector-client
!--- Habilida o envio de communities padrão e também do tipo estendida
AS-X-R4#conf t
AS-X-R4(config)#router bgp X
AS-X-R4(config-router)#neighbor X.0.0.1 remote-as X
AS-X-R4(config-router)#neighbor X.0.0.1 update-source loopback 0
AS-X-R4(config-router)#neighbor X.0.0.1 next-hop-self
!--- Configurando iBGP padrão com R1
AS-X-R4(config-router)#neighbor X.0.0.2 remote-as X
AS-X-R4(config-router)#neighbor X.0.0.2 update-source loopback 0
AS-X-R4(config-router)#neighbor X.0.0.2 next-hop-self
!--- Configurando iBGP padrão com R2
(...)
(...)
AS-X-R4(config-router)#address-family vpnv4
!--- Entra no address family VPNv4
AS-X-R4(config-router-af)#neighbor X.0.0.1 activate
!--- Adiciona esse neighbor ao modo VPNv4
AS-X-R4(config-router-af)#neighbor X.0.0.1 send-community both
!--- Habilida o envio de communities padrão e também do tipo estendida
AS-X-R4(config-router-af)#neighbor X.0.0.2 activate
!--- Adiciona esse neighbor ao modo VPNv4
AS-X-R4(config-router-af)#neighbor X.0.0.2 send-community both
!--- Habilida o envio de communities padrão e também do tipo estendida
AS-X-R5#conf t
AS-X-R5(config)#router bgp X
AS-X-R5(config-router)#neighbor X.0.0.1 remote-as X
AS-X-R5(config-router)#neighbor X.0.0.1 update-source loopback 0
AS-X-R5(config-router)#neighbor X.0.0.1 next-hop-self
!--- Configurando iBGP padrão com R1
AS-X-R5(config-router)#neighbor X.0.0.2 remote-as X
AS-X-R5(config-router)#neighbor X.0.0.2 update-source loopback 0
AS-X-R5(config-router)#neighbor X.0.0.2 next-hop-self
!--- Configurando iBGP padrão com R2
(...)
(...)
AS-X-R5(config-router)#address-family vpnv4
!--- Entra no address family VPNv4
AS-X-R5(config-router-af)#neighbor X.0.0.1 activate
!--- Adiciona esse neighbor ao modo VPNv4
AS-X-R5(config-router-af)#neighbor X.0.0.1 send-community both
!--- Habilida o envio de communities padrão e também do tipo estendida
AS-X-R5(config-router-af)#neighbor X.0.0.2 activate
!--- Adiciona esse neighbor ao modo VPNv4
AS-X-R5(config-router-af)#neighbor X.0.0.2 send-community both
!--- Habilida o envio de communities padrão e também do tipo estendida
AS-X-R1#configure terminal
AS-X-R1(config)#router ospf 1
AS-X-R1(config-router)#network 100.X.1.0 0.0.0.3 area 0
AS-X-R1(config-router)#passive-interfa gigabitEthernet 1/0
AS-X-R1(config-router)#network 200.X.1.0 0.0.0.3 area 0
AS-X-R1(config-router)#passive-interface gigabitEthernet 2/0
AS-X-R1(config-router)#network 187.16.216.0 0.0.3.255 area 0
AS-X-R1(config-router)#passive-interface fastEthernet 0/1
AS-X-R2#configure terminal
AS-X-R2(config)#router ospf 1
AS-X-R2(config-router)#network 100.X.2.0 0.0.0.3 area 0
AS-X-R2(config-router)#passive-interface gigabitEthernet 1/0
AS-X-R2(config-router)#network 200.X.2.0 0.0.0.3 area 0
AS-X-R2(config-router)#passive-interface gigabitEthernet 2/0
AS-X-R2(config-router)#network 200.219.138.0 0.0.0.255 area 0
AS-X-R2(config-router)#passive-interface fastEthernet 0/1
AS-X-R4#configure terminal
AS-X-R4(config)#router ospf 1
AS-X-R4(config-router)#network X.104.1.0 0.0.0.3 area 0
AS-X-R4(config-router)#network X.104.3.0 0.0.0.3 area 0
AS-X-R4(config-router)#passive-interface fastEthernet 0/0
AS-X-R4(config-router)#passive-interface GigabitEthernet 4/0
AS-X-R5#configure terminal
AS-X-R5(config)#router ospf 1
AS-X-R5(config-router)#network X.105.1.0 0.0.0.3 area 0
AS-X-R5(config-router)#network X.105.3.0 0.0.0.3 area 0
AS-X-R5(config-router)#passive-interface fastEthernet 0/0
AS-X-R5(config-router)#passive-interface GigabitEthernet 4/0
PERGUNTAS?
674
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
8.2
AToM
Any Trasnport Over MPLS
675
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
8.2 AtoM - Any Transport Over MPLS
Cenário:
40X
50X
R2 R5 50X
F0/1
AS-X
R3
F0/0
R1 R4 40X
G6/0
PTT-SP
IP's e interfaces detalhados em:
goo.gl/kIcIbX
676
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
8.2 AtoM - Any Transport Over MPLS
AS-X-R1(config)#pseudowire-class VPN-MPLS-PTT-SP
AS-X-R1(config-pw-class)#encapsulation mpls
AS-X-R1(config-pw-class)#exit
AS-X-R1(config)#interface g6/0
AS-X-R1(config-if)#no shutdown
AS-X-R1(config-if)#no ip address
AS-X-R1(config-if)#no xconnect
AS-X-R1(config-if)#xconnect X.0.0.4 40X pw-class VPN-MPLS-PTT-SP
AS-X-R1(config-if-xconn)#end
AS-X-R4(config)#pseudowire-class VPN-MPLS-PTT-SP
AS-X-R4(config-pw-class)#encapsulation mpls
AS-X-R4(config-pw-class)#exit
AS-X-R4(config)#interface fastEthernet 0/1
AS-X-R4(config-if)#no shutdown
AS-X-R4(config-if)#no ip address
AS-X-R4(config-if)#no xconnect
AS-X-R4(config-if)#xconnect X.0.0.1 40X pw-class VPN-MPLS-PTT-SP
AS-X-R4(config-if-xconn)#end
PERGUNTAS?
679
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
8.3
Implementando serviço
VPN-Layer 3
(MPLS-VPN)
680
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
8.3 Implementando serviço VPN-L3
Cenário:
40X
50X
R2 R5 50X
F0/1
AS-X
R3
F0/0
R1 R4 40X
G6/0
PTT-SP
IP's e interfaces detalhados em:
goo.gl/kIcIbX
681
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
8.3 Implementando serviço VPN-L3
Acessando AS-40X-R2
AS-X-R2#telnet X.104.2.2 /vrf VPN-AS-40X
Trying X.104.2.2 ... Open
MikroTik v5.26
Login: admin
Password:
Acessando AS-50X-R2
AS-X-R2#telnet X.105.2.2 /vrf VPN-AS-50X
Trying X.105.2.2 ... Open
MikroTik v5.26
Login: admin
Password:
Acessando AS-40X-R3
AS-X-R4#telnet X.104.3.2 /vrf VPN-AS-40X
Trying X.104.3.2 ... Open
MikroTik v5.26
Login: admin
Password:
[admin@AS-40X-R3] >
Acessando AS-50X-R3
AS-X-R5#telnet X.105.3.2 /vrf VPN-AS-50X
Trying X.105.3.2 ... Open
MikroTik v5.26
Login: admin
Password:
[admin@AS-50X-R3] >
AS-X-R2#
PERGUNTAS?
704
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1
Hardware
sobressalente
com VRRP
705
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1-Hardware sobressalente com VRRP
O cenário permanece o mesmo, porém com um router
“identico” como backup.
A ideia é que todos os dois links continuem 100%
operacional mesmo que o router principal fique
totalmente fora.
Password: gXr2
GX-R2#
GX-R2#configure terminal
GX-R2(config)#
Criando as prefix-lists:
GX-R2(config)#ip prefix-list MEUS-BLOCOS permit X.0.0.0/8
!--- adiciona o bloco do AS do grupo na lista ”MEUS-BLOCOS”
GX-R2(config)#ip route X.0.0.0 255.0.0.0 null 0
GX-R2(config)#router bgp X
GX-R2(config-router)#neighbor 200.X.2.1 prefix-list MEUS-BLOCOS out
!---aplicar o mesmo filtro na saída do AS 200
GX-R2#conf t
GX-R2(config)#interface fastEthernet 0/0
GX-R2(config-if)#vrrp X ip X.128.0.252
GX-R2(config-if)#vrrp X priority 1
GX-R2(config-if)#vrrp X timers learn
GX-R2(config-if)#vrrp X preempt delay minimum 160
GX-R2(config-if)#end
GX-R2#debug vrrp state
VRRP State debugging is on
GX-R2#wr
Vamos verificar o
status...
GX-R1#sh vrrp brief
Interface Grp Pri Time Own Pre State Master addr Group addr
Fa0/0 X 2 3992 Y Master X.128.0.254 X.128.0.252
GX-R1#
(por padrão)
X
Se até o final do “hold time” não chegar um “keep alive” o CPE da
operadora finaliza a sessão BGP com R1.
GX-R1(config)#router bgp X
GX-R1(config-router)#neighbor 100.X.1.1 timers 5 15
GX-R1(config-router)#neighbor 200.X.1.1 timers 5 15
!--- muda o tempo de keep alive para 5 segundos
!--- e o hold time para 15 segundos
GX-R1(config-router)#end
GX-R1#clear ip bgp *
GX-R2(config)#router bgp X
GX-R2(config-router)#neighbor 100.X.2.1 timers 5 15
GX-R2(config-router)#neighbor 200.X.2.1 timers 5 15
!--- muda o tempo de keep alive para 5 segundos
!--- e o hold time para 15 segundos
GX-R2(config-router)#end
GX-R2#clear ip bgp *
LAB 1-5-2 720
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.3-BGP Timers, reduzindo o tempo de
convergência de links
X
PERGUNTAS?
722
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
MATERIAL
EXTRA
O trabalho Curso de BGP Design com Roteadores Cisco de Rinaldo Vaz foi licenciado com
uma Licença Creative Commons - Atribuição 3.0 Não Adaptada.
Podem estar disponíveis autorizações adicionais ao âmbito desta licença em
rinaldopvaz@gmail.com.
723
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
10.0
724
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.0
Mecanismos de Path
Control
8. Mecanismos de Path Control
725
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1 PBR – Policy Based Routing
727
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1 PBR – Policy Based Routing
728
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1 PBR – Policy Based Routing
729
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1 PBR – Policy Based Routing
730
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1 PBR – Policy Based Routing
731
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1 PBR – Policy Based Routing
732
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1 PBR – Policy Based Routing
733
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1 PBR – Policy Based Routing
Exemplo padrão:
734
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1 PBR – Policy Based Routing
735
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1 PBR – Policy Based Routing
Configurações:
R1(config)#interface F0/0
R1(config-if)#ip policy route-map PC2-via-R3
R1(config-if)#exit
R1(config)#route-map PC2-via-R3 permit 10
R1(config-route-map)#match ip address 101
R1(config-route-map)#set ip next-hop 10.1.14.4
R1(config-route-map)#exit
R1(config-if)#access-list 101 permit ip host 10.1.1.2 10.1.3.0 0.0.0.255
736
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.1
PERGUNTAS?
737
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2 IP SLA Tool
IP SLA Tool
– O oferecimento de serviços gerenciados vêm se
consolidando como uma tendência já há algum
tempo, e alguns fabricantes disponibilizam algumas
ferramentas que podem nos ajudar a melhorar uma
rede e nos alertar de eventuais problemas, assim
que estes aparecerem.
738
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2 IP SLA Tool
739
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2 IP SLA Tool
Exemplo: R3#conf t
R3(config)#ip sla {monitor} responder
742
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2 IP SLA Tool
Verificando:
743
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2 IP SLA Tool
745
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2 IP SLA Tool
746
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2 IP SLA Tool
747
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2 IP SLA Tool
R1#conf t
R1(config)#track 1 rtr 1 state
R1(config-track)#exit
R1(config)#ip route 123.123.123.0 255.255.255.0 192.168.12.2 track 1
748
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2 IP SLA Tool
R1#
*Jul 28 00:15:41.671: %TRACKING-5-STATE: 1 rtr 1 state Up->Down
R1#sh ip sla statistics 1
Round Trip Time (RTT) for Index 1
Latest RTT: NoConnection/Busy/Timeout
Latest operation start time: *00:15:23.031 UTC Mon Jul 28 2008
Latest operation return code: No connection
Number of successes: 9
Number of failures: 1
Operation time to live: Forever
R1#sh ip route 123.123.123.0
% Network not in table
749
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2 IP SLA Tool
750
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
9.2
PERGUNTAS?
751
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
MUITO OBRIGADO!!
752
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
Posfácio
● Correções
Cap 1
1.1 Initrodução:
Inseridas informações sobre o MRAI
mais informações e figuras sobre os tipos de mensagem BGP
1.1 - Inseridas distâncias administrativas padrão Juniper
Cap 5
Corrigidos alguns sub-títulos fora de ordem
(...)
754
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Correções
(...)
755
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Correções
(...)
756
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Correções
(...)
757
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Correções
(...)
758
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Correções
(...)
759
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Correções
(...)
Pequenas correções enviadas pelo Leonardo Fell
Slide 17: palavra "implementatos" ("..implementatos por todos os
fabricantes, e quando sim, podem ser..")
Slide 27: palavra "endendido" no segundo tópico ("O “X” deve ser
endendido como o AS do aluno..")
Slide 32: plural "os anúncio" na primeira frase
Slide 36: palavra "provilegiado" e "sesão" no final do slide
Slide 94 : palavra "analizar" na última frase ("Vamos analizar...")
Slide 102: palavra "Analizando" na primeira frase
Slide 143: Palavra "Endendendo" no tópico 3.6
Slide 168: palavra "trânvito" na última frase
Slide 174: palavra "infornações" na última frase ("Dessa maneira, todas
as infornações...")
Slide 192: palavra "acessívels" na última frase
Slide 303: palavra "Analizando" na primeira frase
760
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
(...)
– Laboratórios:
● Cenário 2
Cap 6.3 - Novo laboratório adicionado - "Implementando políticas de
anúncio baseadas em Community-list"
● Outras mudanças
✔ Número total de slides aumentou de 539 para 555
✔ Mudança no layout
✔ Mais figuras explicativas
761
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Correções
Cap 7.3
✔ Inserida linha com o comando “no bgp enforce-fist-as” na configuração
do BGP com o PTT em R1, e nos routers dos AS's 14X e 15X
✔ Inserida linha de comando da rota estática do primeiro /9 apontando para
“Null 0” , o que impossibilitava os routers dos AS's 14X e 15X de
anunciar essa rede para o PTT
● Cap 7.5
✔ Corrigida a ação da as-path access-list 55, onde deny era para ser
permit, e permit era para ser deny
● Cap 8.1
✔ Corrigida a quinta linha na configuração de R5 onde o IP de neighbor era
X.0.0.2, o correto é X.0.0.X
● Cap 8.3
✔ Corrigida a décima linha na configuração de R2, onde o IP a ser
configurado é X.15X.2.1 e não X.15X.2.2
762
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Correções
✗ Laboratórios:
Cenário 1
✔ Corrigida configuração padrão que mantinha a interface f0/0 desativada
● Cap 7.0
✔ Mudança no indice. Removido PBR que virou um novo capítulo
– Mais conteúdo
● Cap 5.8
✔ Inserido a sessão “cheats” com as respostas do LAB “Desafio”
✔ Inseridos comandos para remover as config do LAB “Desafio”
✔ Número total de slides de 539 para 544
763
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Correções
✗ Laboratórios:
Cenário 1
✔ Corrigida configuração padrão que mantinha a interface f0/0 desativada
– Mais conteúdo
● Inserido um novo capítulo: Multiprotocol Label Switching (MPLS)
● Subcapítulos:
✔ 8.1 BGP através da nuvem MPLS
✔ 8.2 AtoM - Any Transport Over MPLS
✔ 8.3 Implementando serviço VPN-L3 (VPN-Multiponto)
● 6.4 – Manipulando Trânsito (Nacional/Internacional) com Communities
✔ Inserida a relação das communities da GVT
(...)
764
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
(...)
– Laboratórios:
● Cenário 2
– Novo modelo de roteadores para todos o cenário 2 – Cisco 3725
– 2 roteadores a mais para o Lab MPLS VPN-L3, passando de 7 para o
total de 9 roteadoras para cada grupo
● Outras mudanças
✔ Número total de slides aumentou de 485 para 539
✔ Pequenas correções nas confgurações
✔ Mais figuras explicativas
✔ Capítulo 8 (Mecanismos de Path Control) movido para capítulo 9
765
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Mudança no layout
✔ Cores, fontes e gráficos melhorados
● Correções
✗ Capítulo 4
✗ 4.4 - Expressões regulares
✔ Corrigidas algumas expressões
✔ Conteúdo ampliado com mais exemplos prático
● Mais conteúdo
✗ 4.7 - AS-Path Prepend
✔ Adicionados mais slides com figuras e exemplos de configuração de
prepend de saída
✗ Adicionado um novo slide com exemplo de prepend de entrada
(...)
766
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
(...)
✔ Inserido um novo capítulo: Mecanismos de Path Control
● Subcapítulos:
– PBR – policy Based Routing
– IP SLA Tool
● Outras mudanças
✔ Número total de slides aumentou de 434 para 485
✔ Pequenas correções nas confgurações
✔ Foram adicinadas mais figuras
✔ Novos slides com configurações que deveriam ser desfeitas antes de iniciar o
próximo laboratório
767
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
● Mudança no layout
✔ Cores, fontes e gráficos melhorados
● Novos sub-capítulos
✗ Engenharia de tráfego, Alta Disponibilidade, Transporte L2, e outros
● Diversas outras correções
✗ Explicações mais claras
✗ Inseridas mais linhas de comentários explicativos
✗ Melhoradas algumas expressões regulares
✗ Incluídas figuras dos cenários
✗ E muitas outras melhorias
✗ Total de slides aumentados de 363 para 434
768
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
●
2.7 Corrigido erro de digitação:
✗ erro: "...último /10..."
✔ correção: "... último /9..."
● 3.1 saída do comando "sh ip bgp neighbors (peering) advertise-routes":
✗ corrigidos 2 prefixos que apareciam errados como /10,
✔ o correto são 3 prefixos, um /8 e dois /9
● 3.1 saída do comando "sh ip bgp regexp ^2$":
✗ corrigidos 2 prefixos que apareciam errados como /10,
✔ o correto são 3 prefixos, um /8 e dois /9
769
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG
●
2.7 Corrigido erro de digitação:
✗ erro: "...último /10..."
✔ correção: "... último /9..."
● 3.1 saída do comando "sh ip bgp neighbors (peering) advertise-routes":
✗ corrigidos 2 prefixos que apareciam errados como /10,
✔ o correto são 3 prefixos, um /8 e dois /9
● 3.1 saída do comando "sh ip bgp regexp ^2$":
✗ corrigidos 2 prefixos que apareciam errados como /10,
✔ o correto são 3 prefixos, um /8 e dois /9
770
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG versão 1.0 – 1.1:
23/04/2012
771
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG versão 1.0 – 1.1:
23/04/2012
772
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG versão 1.0 – 1.1:
23/04/2012
773
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG versão 1.0 – 1.1:
23/04/2012
774
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG versão 1.0 – 1.1:
23/04/2012
775
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com
CHANGELOG versão 1.0 – 1.1:
23/04/2012
776
v4.1 | autor: Rinaldo Vaz | treinamento.bgp@gmail.com