Escolar Documentos
Profissional Documentos
Cultura Documentos
BGP
DO ABSOLUTO ZERO
PARA PROVEDORES ISP
www.raphaelisp.com.br
RAPHAEL RODRIGUES ISP
https://flowspec.net.br/
Flowspec Soluções em Mitigação DDoS, empresa especializada em
Mitigação de Ataques DDoS.
OLÁ,TUDO BEM?
EU SOU O RAPHAEL
CEO/CTO Flowspec
Acompanho a evolução do mundo digital voltado para o segmento
de infra estrutura e provedores de internet ISP, posso dizer ainda
que sou pai, marido, nerd, apaixonado por surf, Jiu-Jutsu, Linux e
tudo que envolve o mundo digital.
@RAPHAELISPCONNECT
YOUTUBE.COM/@RAPHAELISP
www.raphaelisp.com.br
RAPHAEL RODRIGUES ISP
A INTERNET
CONCEITOS BASICOS DO BGP
www.raphaelisp.com.br
COMO A INTERNET FUNCIONA?
BGP
www.raphaelisp.com.br
COMO A INTERNET FUNCIONA?
O serviço de roteamento server para fazer com que os dados de uma rede possam trafegar para outras
redes.
Para ter contato com diversos hosts, cada roteador deverá ter uma placa de rede pertencente a cada rede
a qual ela esta conectada.
A internet é uma redes de redes, então, para interligar sua rede interna a internet, será necessário o uso de
um roteador WAN.
O roteador WAN é um roteador especifico para ligação com a internet ou com grandes redes
www.raphaelisp.com.br
Segmento de rede
Um segmento de rede é uma porção da rede que esta atrás de um roteador.
COMO A INTERNET FUNCIONA?
BGP
www.raphaelisp.com.br
COMO A INTERNET FUNCIONA?
BGP
www.raphaelisp.com.br
COMO A INTERNET FUNCIONA?
www.raphaelisp.com.br
COMO A INTERNET FUNCIONA?
A Internet é um conjunto de sistemas autônomos interligados para permitir a comunicação entre redes.
Uma rede que não é um Sistema Autônomo estará sempre na dependência de uma outra rede que assim
seja classificada, como por exemplo, seu provedor de trânsito Internet.
BGP Por isso, estará dependente também dos endereços IP atribuídos por esse provedor de trânsito e das
políticas de roteamento por ele utilizadas.
Para um provedor Internet, não ser um Sistema Autônomo e depender do seu provedor de trânsito IP é
uma grande, enorme, limitação.
NO MUNDO IDEAL, CADA EMPRESA QUE DESEJA PARTICIPAR DA INTERNET DEVE ( OU DEVERIA )
OBTER UM NÚMERO DE ASN E FAIXAS DE PREFIXO ( IPV4 E IPV6 ), E A PARTIR DESTA IDEIA SE
CONECTAR AS VARIAS REDES INTERCONECTADAS ( INTER-AS ) PELA REDE GLOBAL, OU
CONECTADAS VIA BGP.
www.raphaelisp.com.br
https://www.nic.br/media/docs/publicacoes/13/fasciculos-sobre-a-infraestrutura-da-internet-endere%C3%A7os-ip-e-asns-alocacao-para-provedores-internet.pdf
O BGP – INTRODUÇÃO AO BGP
BGP O bgp descreve o caminho por meio de atributos que são semelhantes às métricas e politicas que podem
ser bem complexas em muitos casos.
BGP-P-AS100#sh ip bgp
BGP table version is 26841439, local router ID is 177.1.1.1
Network Next Hop Metric LocPrf Weight Path
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
t secondary path, L long-lived-stale,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
https://www.nic.br/media/docs/publicacoes/13/fasciculos-sobre-a-infraestrutura-da-internet-endere%C3%A7os-ip-e-asns-alocacao-para-provedores-internet.pdf
O BGP – INTRODUÇÃO AO BGP
www.raphaelisp.com.br
https://www.nic.br/media/docs/publicacoes/13/fasciculos-sobre-a-infraestrutura-da-internet-endere%C3%A7os-ip-e-asns-alocacao-para-provedores-internet.pdf
O BGP – INTRODUÇÃO AO BGP
BGP
BGP-P-AS100#sh ip bgp
BGP table version is 26841439, local router ID is 177.1.1.1
Network Next Hop Metric LocPrf Weight Path
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
t secondary path, L long-lived-stale,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
https://www.nic.br/media/docs/publicacoes/13/fasciculos-sobre-a-infraestrutura-da-internet-endere%C3%A7os-ip-e-asns-alocacao-para-provedores-internet.pdf
O BGP – INTRODUÇÃO AO BGP
BGP SAFI: Subsequent Address Family Identifiers (IPv4 Unicast, IPv6 Unicast, IPv4 Multicast, VPNv4)
Next-hop information - (deve ser do mesmo tipo que o address family, por exemplo AFI ipv6 o next-hop
tem que ser um endereço IPv6)
NLRI - Network Layer Reachability Information
MP_UNREACH_NLRI - contém as informações de um prefixo que não pode mais ser alcançado é deve ser
retirado da tabela BGP;
www.raphaelisp.com.br
• https://www.cisco.com/c/pt_br/support/docs/ip/border-gateway-protocol-bgp/13751-23.html
O BGP – INTRODUÇÃO AO BGP
Por padrão no iBGP o “next-hop” não é modificado – Utilize algum IGP ( OSPF, ISIS) para garantir a
alcançabilidade IP dentro do AS.
Rotas externas recebidas de um peer iBGP não são passadas para outros peers iBGP, É o que chamamos
de "Split Horizon" do BGP;
Para que isso ocorra é necessário o uso de full mesh ou router reflect.
Boas práticas estabelecer sessão iBGP via loopback;
Configuração Multihop é exigida se o peer não estiver diretamente conectado, por padrão o TTL tem valor
www.raphaelisp.com.br
1, necessário mudar TTL ( 16+ )
• https://www.cisco.com/c/pt_br/support/docs/ip/border-gateway-protocol-bgp/13751-23.html
O BGP – INTRODUÇÃO AO BGP
MENSAGEM UPDATE
A mensagem update tem a finalidade de trocar informação de roteamento entre os peerings BGP e da
mesma forma construir um gráfico em que os prefixos já foi passado.
MENSAGEM KEEPALIVE
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.
Os valores padrão são 60 segundos de intervalo para keepalive e 180 segundo de tolerância (hold time)
Atualmente, temos um downtime de 3 minutos sem internet, acrescido do tempo de propagação das
convergências na Internet (~3-10 minutos);
www.raphaelisp.com.br
• https://www.cisco.com/c/pt_br/support/docs/ip/border-gateway-protocol-bgp/13751-23.html
O BGP – INTRODUÇÃO AO BGP
BGP
• ESTADO DA CONEXÃO
• Idle:
• Connect:
• Active:
• Open Sent:
• Open Confirm:
• Established:
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
BGP
• ESTADO DA CONEXÃO
• Idle:
• Connect:
• Active:
• Open Sent:
• Open Confirm:
• Established:
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
• Opcional transitivo (Optional transitive):Não precisam ser implementados por todos os fabricantes, e
quando sim, podem ser “propagados” para outros neighbors através de mensagens de update.
BGP • Opcional não-transitivo (Optional non-transitive): Semelhantes aos citados acima, porém, um router
nunca “propaga” esses atributos para outro neighbor.
• A mensagem de update do BGP inclui uma sequência de comprimento variável com os atributos que
descrevem a rota.
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
BGP
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
BGP
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
BGP
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
BGP
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
BGP
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
BGP •
•
Como o Local Preference para o roteador A é maior, ele será selecionado como
o ponto de saída preferido pelo AS 64520.
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
BGP •
•
Router C envia o anúncio da rede 172.20.0.0 com MED 200.
Router A irá escolher o roteador B como melhor caminho devido ao menor valor do MED.
www.raphaelisp.com.br
O BGP – INTRODUÇÃO AO BGP
BGP
www.raphaelisp.com.br
RAPHAEL RODRIGUES ISP
NETFLOW IPFIX
CONTROLPLANE E DATAPLANE - SOFT-ROUTER X ROUTER.
www.raphaelisp.com.br
www.raphaelisp.com.br
https://www.oreilly.com/library/view/cisco-networks engineers/9781484208595/9781484208601_Ch11.xhtml..
RAPHAEL RODRIGUES ISP
NETFLOW IPFIX
• BGPMON (HTTPS://WWW.BGPMON.NET/)
• BGPLAY (HTTPS://BGPLAYJS.COM/?SECTION=BGPLAY)
• RIPESTAT (HTTPS://STAT.RIPE.NET/APP/LAUNCHPAD)
• LOOKING GLASS E BGP TOOLKIT (HTTPS://BGP.HE.NET/)
• PEERINGDB (HTTPS://WWW.PEERINGDB.COM/)
• IRR (HTTPS://BGP.NET.BR/)
BGP •
•
TEAM CYMRU (HTTPS://TEAM-CYMRU.COM/)
BGP ALERTER (HTTPS://GITHUB.COM/NTTGIN/BGPALERTER)
• SPOOFER CAIDA (HTTPS://WWW.CAIDA.ORG/PROJECTS/SPOOFER/)
• HTTPS://WWW.CISCO.COM/C/PT_BR/SUPPORT/DOCS/IP/IP-VERSION-6-IPV6/113489-IPV6-PFL-NEW-00.PDF
• HTTPS://WWW.NIC.BR/MEDIA/DOCS/PUBLICACOES/13/FASCICULOS-SOBRE-A-INFRAESTRUTURA-DA-
INTERNET-ENDERE%C3%A7OS-IP-E-ASNS-ALOCACAO-PARA-PROVEDORES-INTERNET.PDF
• HTTPS://SEMANACAP.BCP.NIC.BR/FILES/APRESENTACAO/ARQUIVO/1208/FERRAMENTAS%20MONITORAM
ENTO%20(5).PDF
www.raphaelisp.com.br
www.raphaelisp.com.br
https://wiki.brasilpeeringforum.org/w/MANRS
O BGP – INTRODUÇÃO AO BGP
BGP
www.raphaelisp.com.br
• https://www.cisco.com/c/pt_br/support/docs/ip/border-gateway-protocol-bgp/13751-23.html
O BGP – INTRODUÇÃO AO BGP
Sessão BGP
Origem
BGP prefixos
Filtros BGP
Princípios
www.raphaelisp.com.br
Protocolo
OBRIGADO
@RAPHAELISPCONNECT
WWW.RAPHAELISP.COM.BR
RAPHAEL RODRIGUES ISP
BGP
DO ABSOLUTO ZERO
PARA PROVEDORES ISP
www.raphaelisp.com.br
RAPHAEL RODRIGUES ISP
https://flowspec.net.br/
Flowspec Soluções em Mitigação DDoS, Link IP, Transportes LantoLan,
Consultoria SOC, Consultoria em Redes.
OLÁ,TUDO BEM?
EU SOU O RAPHAEL
CEO/CTO Flowspec
Acompanho a evolução do mundo digital voltado para o segmento de
infra estrutura e provedores de internet ISP, posso dizer ainda que sou
pai, marido, nerd, apaixonado por surf, Jiu-Jutsu, Linux e tudo que
envolve o mundo digital.
Algumas certificações: ZCS, CCIE, HCIP, LPI lll, ITIL 4 Foundation, CobiT
5 Foundation, ISO/IEC 20000 Foundation.
@RAPHAELISPCONNECT
YOUTUBE.COM/@RAPHAELISP
www.raphaelisp.com.br
RAPHAEL RODRIGUES ISP
BGP BEGIN
LABS
www.raphaelisp.com.br
PEERING BGP
Sessão BGP
Origem
BGP prefixos
Filtros BGP
Princípios
www.raphaelisp.com.br
Protocolo
PEERING BGP
External BGP
Quando BGP neighbors pertencem
a diferentes sistemas autônomos
são
chamados EBGP.
BGP
Internal BGP
Quando BGP neighbors pertencem ao
mesmo sistema autônomo são
chamados IBGP.
www.raphaelisp.com.br
PEERING BGP
Primeiro acesso, criação de um usuário e liberação de acesso via ssh;
RAPHAEL RODRIGUES ISP
• Criação do primeiro usuário;;
aaa
local-user usuario password cipher senha
local-user usuario service-type ssh
local-user usuario privilege level 15
#
• Liberação de acesso via ssh
ssh user usuario
BGP
ssh user usuario authentication-type password
ssh user usuario service-type stelnet
• https://www.cisco.com/c/pt_br/support/docs/ip/border-gateway-protocol-bgp/13751-23.html
PEERING BGP
<AS-1-R1>save
The current configuration will be written to the device.
Are you sure to continue?[Y/N]
Error: Please choose 'YES' or 'NO' first before pressing 'Enter'. [Y/N]:y
Now saving the current configuration to the slot 0.
Save the configuration successfully.
www.raphaelisp.com.br
• https://www.cisco.com/c/pt_br/support/docs/ip/border-gateway-protocol-bgp/13751-23.html
PEERING BGP
!-- Dentro do modo system-view
RAPHAEL RODRIGUES ISP
[AS-1-R1]run save
The current configuration will be written to the device.
Are you sure to continue?[Y/N]y
Now saving the current configuration to the slot 0.
Save the configuration successfully.
<AS-1-R1>ping 10.1.1.1
PING 1.1.0.100: 56 data bytes, press CTRL_C to break
Reply from 10.1.1.1: bytes=56 Sequence=1 ttl=64 time=2 ms
BGP
Reply from 10.1.1.1: bytes=56 Sequence=2 ttl=64 time=1 ms
Reply from 10.1.1.1: bytes=56 Sequence=3 ttl=64 time=1 ms
--- 1.1.0.100 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 1/1/2 ms
<AS-1-R1>tracert 123.0.0.1
traceroute to 123.0.0.1(123.0.0.1), max hops: 30 ,packet length: 40,press CTRL_C to break
1 200.1.1.1 2 ms 1 ms 1 ms
2 222.200.2.1 < AS=222 > 2 ms 2 ms 2 ms
3 222.222.1.1 < AS=222 > 2 ms 2 ms 2 ms
www.raphaelisp.com.br 4 123.0.0.1 < AS=123 > 3 ms 2 ms 2 ms
• https://www.cisco.com/c/pt_br/support/docs/ip/border-gateway-protocol-bgp/13751-23.html
PEERING BGP
as-notation plain
bgp 8
undo default ipv4-unicast # desativa comportamento legado SAFI ipv4
undo check-first-as # Não verifica AS do port remote no AS-PATH requerido
ipv4-family unicast
preference 20 220 1 # custos like cisco
ipv6-family unicast
www.raphaelisp.com.br
• https://www.cisco.com/c/pt_br/support/docs/ip/border-gateway-protocol-bgp/13751-23.html
LAB 1
HABILITAR
PROCESSO BGP
@RAPHAELISPCONNECT
WWW.RAPHAELISP.COM.BR
PEERING BGP
BGP CONEXÃO
peer 10.99.99.2 connect-only # origem inicia as mensagens de open
peer 10.99.99.2 listen-only # destino inicia as mensagens de open
peer 10.99.99.2 log-change # mudanças no log
peer 10.99.99.2 tracking # rota inalcançável tomba sessão bgp INFORMAÇÃO
peer 10.99.99.2 bfd enable
peer 10.99.99.2 bfd min-tx-interval 100 min-rx-interval 100 detect-multiplier 8
ipv4-family unicast ipv6-family unicast
peer 10.99.99.2 enable peer 2001:db8:1000:cafe::255 enable
peer 10.99.99.2 next-hop-local peer 2001:db8:1000:cafe::255 next-hop-local
peer 10.99.99.2 next-hop-invariable peer 2001:db8:1000:cafe::255 next-hop-invariable
peer 10.99.99.2 advertise-community peer 2001:db8:1000:cafe::255 advertise-community
peer 10.99.99.2 advertise-ext-community peer 2001:db8:1000:cafe::255 advertise-ext-community
peer 10.99.99.2 advertise-large-community peer 2001:db8:1000:cafe::255 advertise-large-community
peer 10.99.99.2 default-route-advertise peer 2001:db8:1000:cafe::255 default-route-advertise
peer 10.99.99.2 route-policy AS34567-IN import peer 2001:db8:1000:cafe::255 route-policy AS34567-IN-v6 import
www.raphaelisp.com.br peer 10.99.99.2 route-policy AS34567-OUT export peer 2001:db8:1000:cafe::255 route-policy AS34567-OUT-v6 export
peer 10.99.99.2 public-as-only peer 2001:db8:1000:cafe::255 public-as-only
peer 10.99.99.2 reflect-client peer 2001:db8:1000:cafe::255 reflect-client
PEERING BGP
BGP
peer 10.97.0.2 enable
peer 10.97.0.2 next-hop-local
peer 10.97.0.2 route-policy IN import
peer 10.97.0.2 route-policy OUT export
ipv6-family unicast
peer 2001:db8::2 enable
peer 2001:db8::2 next-hop-local
peer 2001:db8::2 route-policy IN-v6 import
peer 2001:db8::2 route-policy OUT-v6 export
www.raphaelisp.com.br
PEERING BGP
BGP
www.raphaelisp.com.br
PEERING BGP
Regra fundamental do BGP (para evitar loop)
RAPHAEL RODRIGUES ISP O que é recebido de um IBGP NÃO é repassado para outro IBGP
BGP
www.raphaelisp.com.br
PEERING BGP
BGP
peer 45.6.52.253 enable
peer 45.6.52.253 group IX-RJ-ROUTE-SERVERS
peer 45.6.52.254 enable
peer 45.6.52.254 group IX-RJ-ROUTE-SERVERS
www.raphaelisp.com.br
PEERING BGP
www.raphaelisp.com.br
PEERING BGP
Verificando status das sessões BGP:
RAPHAEL RODRIGUES ISP Cisco IOS
#show ip bgp summary
RouterOS
>routing bgp peer print status
JunOS:
>show bgp summary
Huawei:
>display bgp peer
Verificando rotas recebidas em uma sessão BGP:
Cisco IOS
BGP #show ip bgp neighbors A.B.C.D routes
RouterOS
>ip route print where received-from=NOME_DO_NEIGHBOR
JunOS:
>show route receive-protocol bgp A.B.C.D
Huawei:
>display bgp routing-table peer 100.1.1.1 received-routes
Verificando rotas anunciadas em uma sessão BGP:
Cisco IOS
#show ip bgp neighbors A.B.C.D advertised-routes
RouterOS
>routing bgp advertisements print peer=NOME_DO_NEIGHBOR
www.raphaelisp.com.br
JunOS:
>show route advertising-protocol bgp A.B.C.D
Huawei:
>display bgp routing-table peer 100.1.1.1 advertised-routes
PEERING BGP
BGP
www.raphaelisp.com.br
PEERING BGP
BGP
www.raphaelisp.com.br
LAB 2
ESTABELECER
SESSÃO BGP
@RAPHAELISPCONNECT
WWW.RAPHAELISP.COM.BR
PREFIXOS BGP
Sessão BGP
Origem
BGP prefixos
Filtros BGP
Princípios
www.raphaelisp.com.br
Protocolo
PREFIXOS BGP
POLITICAS DE SAIDA
NETWORK
AFI/SAFI IPV4 unicast RIB
AFI/SAFI IPV6 unicast
RAPHAEL RODRIGUES ISP A origem de prefixos no BGP é a forma como os prefixos oriundos de outras bases de dados
bgp são importadas para dentro do banco de dados (para dentro do SAFI específico);
Rotas originadas BGP - são declaradas dentro do BGP, tem como único pré-requisito a
existência do prefixo na lista de rotas da FIB (rotas ativas na RIB);
www.raphaelisp.com.br
PREFIXOS BGP
BGP
network 2001:1918:: 29
RAPHAEL RODRIGUES ISP O comando network importa rotas existentes e tabela de roteamento IP para uma tabela de
roteamento BGP. A rota deve existir na tabela de roteamento IP exatamente como indicado no
comando.
BGP
www.raphaelisp.com.br
PREFIXOS BGP
RAPHAEL RODRIGUES ISP Rotas originadas BGP: usando route-policy para preencher atributos do prefixo originado;
atributos: AS-PATH, MED (cost), Communities (standard, extended, larg), origin, next-hop,
local-preference;
BGP
route-policy BGP-IMPORT-DIRECT-IPV6 permit node 10
#
route-policy BGP-IMPORT-STATIC-IPV6 permit node 10
#
route-policy BGP-IMPORT-UNR-IPV6 permit node 10
#
bgp 10
ipv4-family unicast
import direct route-policy BGP-IMPORT-DIRECT-IPV4
import static route-policy BGP-IMPORT-STATIC-IPV4
import unr route-policy BGP-IMPORT-UNR-IPV4
ipv6-family unicast
www.raphaelisp.com.br
import direct route-policy BGP-IMPORT-DIRECT-IPV6
import static route-policy BGP-IMPORT-STATIC-IPV6
import unr route-policy BGP-IMPORT-UNR-IPV6
PREFIXOS BGP
BGP
www.raphaelisp.com.br
PREFIXOS BGP
RAPHAEL RODRIGUES ISP Tome cuidado ao importar rotas de outras RIBs para dentro do BGP, se houver peering com
roteadores que originaram essas rotas em outros protocolos isso pode resultar em loop ou
anulação do status de rota ativa, e causar um flag (flip-flap);
CUIDADO ao utilizar IPs não privados na rede (1.1.1.1, 2.2.2.2, 172.32.x.x, 100.128.x.x) e
acabar importando eles para o BGP e posteriormente para peerings eBGP
BGP
www.raphaelisp.com.br
LAB 3
ANUNCIO
PREFIXO BGP
@RAPHAELISPCONNECT
WWW.RAPHAELISP.COM.BR
FILTROS BGP
Sessão BGP
Origem
BGP prefixos
Filtros BGP
Princípios
www.raphaelisp.com.br
Protocolo
FILTROS BGP
RAPHAEL RODRIGUES ISP Os prefix-list servem para poder fazer match de redes, ou grupos de redes.
Aplicar um deny em um prefixo dentro da prefix-list não deleta a informação, apenas sinaliza
que o prefixo não participa da prefix-list;
Aplicar um permit em um prefixo dentro da prefix-list não permite a informação, apenas
sinaliza que o prefixo participa da prefix-list;
A execução é feita do menor ao maior número de sequência, e também existe um deny
implícito no final.
BGP
www.raphaelisp.com.br
FILTROS BGP
BGP
www.raphaelisp.com.br
FILTROS BGP
RAPHAEL RODRIGUES ISP ip ip-prefix BGPv4-Block-Prefix index 30 permit 10.0.0.0 8 greater-equal 8 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 40 permit 100.64.0.0 10 greater-equal 10 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 50 permit 127.0.0.0 8 greater-equal 8 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 60 permit 169.254.0.0 16 greater-equal 16 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 70 permit 172.16.0.0 12 greater-equal 12 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 80 permit 192.0.0.0 24 greater-equal 24 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 90 permit 192.0.2.0 24 greater-equal 24 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 100 permit 192.88.99.0 24 greater-equal 24 less-equal 32
BGP
ip ip-prefix BGPv4-Block-Prefix index 110 permit 192.168.0.0 16 greater-equal 16 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 150 permit 224.0.0.0 4 greater-equal 4 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 160 permit 240.0.0.0 4 greater-equal 4 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 170 permit 168.181.20.0 22 greater-equal 22 less-equal 32
ip ip-prefix BGPv4-Block-Prefix index 180 permit 192.168.0.0 16 greater-equal 16 less-equal 24
www.raphaelisp.com.br
FILTROS BGP
RAPHAEL RODRIGUES ISP ip ipv6-prefix BGPv6-Permit-Prefix index 10 permit 2001:200:: 23 greater-equal 23 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 20 permit 2001:400:: 22 greater-equal 22 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 30 permit 2001:800:: 22 greater-equal 22 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 40 permit 2001:C00:: 22 greater-equal 22 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 50 permit 2001:1200:: 23 greater-equal 23 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 60 permit 2001:1400:: 22 greater-equal 22 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 70 permit 2001:1800:: 22 greater-equal 22 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 80 permit 2001:1C00:: 22 greater-equal 22 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 90 permit 2001:2000:: 20 greater-equal 20 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 100 permit 2001:3000:: 21 greater-equal 21 less-equal 128
BGP ip ipv6-prefix BGPv6-Permit-Prefix index 110 permit 2001:3800:: 22 greater-equal 22 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 120 permit 2001:4000:: 21 greater-equal 21 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 130 permit 2001:4800:: 22 greater-equal 22 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 140 permit 2001:4C00:: 23 greater-equal 23 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 150 permit 2001:5000:: 20 greater-equal 20 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 160 permit 2001:8000:: 18 greater-equal 18 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 170 permit 2003:: 18 greater-equal 18 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 180 permit 2400:: 12 greater-equal 12 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 190 permit 2600:: 12 greater-equal 12 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 200 permit 2610:: 23 greater-equal 23 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 210 permit 2620:: 23 greater-equal 23 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 220 permit 2800:: 12 greater-equal 12 less-equal 128
www.raphaelisp.com.br
ip ipv6-prefix BGPv6-Permit-Prefix index 230 permit 2A00:: 12 greater-equal 12 less-equal 128
ip ipv6-prefix BGPv6-Permit-Prefix index 240 permit 2C00:: 12 greater-equal 12 less-equal 128
FILTROS BGP
RAPHAEL RODRIGUES ISP DECLARAR ROUTE-POLICY É O SEGREDO PARA FILTRAR QUAIS ROTAS DESEJA
IMPORTAR E/OU PROPAGAR...
BGP
if-match community-filter 110
if-match community-filter BACKBONE-ROUTE
if-match as-path-filter AS-PATH-FACEBOOK
if-match as-path length greater-equal 0 less-equal 16
apply local-preference 999
apply cost 20
apply community 64800:20000 64800:20010
apply extcommunity rt 64800:20000 rt 64800:20010
apply as-path 64800 64800 64800 additive
apply as-path none overwrite
apply ip-address next-hop 198.18.0.2
apply ip-address next-hop peer-address
www.raphaelisp.com.br
apply ipv6 next-hop 2001:db8:ffff:f666::2
apply ipv6 next-hop peer-address
#
FILTROS BGP
(if-match):
Se o prefixos estão contido em uma prefix-list;
Verificar tags, communities, as-path, interface, preferência, mac, rpki;
Verificar se outra route-map autoriza a informação;
BGP
Regra sem match submetem todas os atributos a ação da regra, e as próximas regras não
serão processadas;
(apply):
Alterar as-path, adicionar/apagar communities, alterar next-hop, métrica;
on-match goto - on-match next: jump para uma regra específica no índice da route-map;
www.raphaelisp.com.br
FILTROS BGP
BGP
www.raphaelisp.com.br
FILTROS BGP
RAPHAEL RODRIGUES ISP Todo AS de trânsito tem a obrigação de cuidar para que seus clientes, que também são
Sistemas Autônomos, não façam anúncios errados para a Internet.
Quando isso ocorre e o anúncio passa, acontece o que chamamos de Hijack (sequestro) de IP,
derrubando todos os Sistemas Autônomos envolvidos no prefixo anunciado erradamente;
Route policy servem para o BGP controlar e modificar atributos de roteamento e também
definir as condições da propagação de rotas;
BGP
Uma Route- policy é um conjunto de regras que verificam características dos atributos BGP;
São utilizadas por todos os clientes bgp para tratar atributos durante os estágios de
importação, exportação e transações entre RIBs;
Route- policy são default-deny, se um atributo for processada por uma route-map e nenhuma
regra permitir explicitamente o atributo, ocorre o descartada do fluxo:
#
www.raphaelisp.com.br
FILTROS BGP
BGP
www.raphaelisp.com.br
FILTROS BGP
BGP
#
route-policy AS26162-IXBR-SPv4-IN permit node 100
#
route-policy AS26162-IXBR-SPv4-OUT permit node 10
if-match ip-prefix MEUBLOCO
apply extcommunity rt 65000:400 rt 65000:600 additive
#
route-policy AS26162-IXBR-SPv4-OUT deny node 100
www.raphaelisp.com.br
FILTROS BGP
BGP
#
route-policy AS26162-IXBR-SPv6-IN permit node 100
if-match ipv6 address prefix-list BGPv6-Permit-Prefix
#
route-policy AS26162-IXBR-SPv6-OUT permit node 10
if-match ipv6 address prefix-list BGPv6_MEUBLOCO
apply extcommunity rt 65000:400 rt 65000:600 additive
#
route-policy AS26162-IXBR-SPv6-OUT deny node 100
www.raphaelisp.com.br
LAB 4
APPLY POLITICA
ROTEAMENTO BGP
@RAPHAELISPCONNECT
WWW.RAPHAELISP.COM.BR
FILTROS BGP
BGP
[AS-10-R1] route-policy TRANSITO-AS-400-OUT permit node 20
[AS-10-R1-route-policy] if-match ip-prefix BLOCOS-CLIENTE
[AS-10-R1-route-policy] quit
BGP
[AS-10-R1-bgp] return
<AS-10-R1> save
www.raphaelisp.com.br
LAB 5
SESSÃO BGP
CLIENTE TRANSITO
@RAPHAELISPCONNECT
WWW.RAPHAELISP.COM.BR
FILTROS BGP
www.raphaelisp.com.br
Communities pré definadas:
- No-Export : Não faz anúncio aos eBGP peers.
- No-Advertise : Não faz anúncio para nenhum peer.
- No-Export-Subconfed : usado somente quando se trabalha com confederation
FILTROS BGP
BGP
www.raphaelisp.com.br
FILTROS BGP
BGP
[AS-10-R1] ip community-filter basic PREPEND-1X-AS-400 permit 10:21
[AS-10-R1] ip community-filter basic PREPEND-2X-AS-400 permit 10:22
[AS-10-R1] ip community-filter basic PREPEND-3X-AS-400 permit 10:23
www.raphaelisp.com.br
FILTROS BGP
BGP
[AS-10-R1-route-policy] route-policy TRANSITO-AS-600-OUT permit node 40
[AS-10-R1-route-policy] if-match community-filter PREPEND-3X-AS-600
[AS-10-R1-route-policy] apply as-path 10 10 10 additive
[AS-10-R1-route-policy] route-policy TRANSITO-AS-600-OUT permit node 50
[AS-10-R1-route-policy] if-match community-filter CLIENTES
[AS-10-R1-route-policy] quit
www.raphaelisp.com.br
FILTROS BGP
BGP
[AS-10-R1-route-policy] route-policy TRANSITO-AS-400-OUT permit node 40
[AS-10-R1-route-policy] if-match community-filter PREPEND-3X-AS-400
[AS-10-R1-route-policy] apply as-path 10 10 10 additive
[AS-10-R1-route-policy] route-policy TRANSITO-AS-400-OUT permit node 50
[AS-10-R1-route-policy] if-match community-filter CLIENTES
[AS-10-R1-route-policy] quit
www.raphaelisp.com.br
FILTROS BGP
BGP
[AS-10-R1-route-policy] route-policy IX-SP-OUT permit node 40
[AS-10-R1-route-policy] if-match community-filter PREPEND-3X-IX-SP
[AS-10-R1-route-policy] apply as-path 10 10 10 additive
[AS-10-R1-route-policy] route-policy IX-SP-OUT permit node 50
[AS-10-R1-route-policy] if-match community-filter CLIENTES
[AS-10-R1] route-policy CLIENTE-TRANSITO-IN permit node 10
[AS-10-R1-route-policy] if-match ip-prefix BLOCOS-CLIENTE
[AS-10-R1-route-policy] apply community 10:1 10:23 10:30
[AS-10-R1-route-policy] quit
[AS-10-R1] run save
www.raphaelisp.com.br
FILTROS BGP
BGP
www.raphaelisp.com.br
FILTROS BGP
Uma lista com a definição e uso de communities dos principais ISP’s, pode ser vista em
http://www.onesc.net/communities/
BGP
Normalmente também pode-se encontrar as communities e respectivas políticas nos sites das
operadoras e ISP’s de trânsito.
www.raphaelisp.com.br
LAB 6
APPLY POLITICA
COMMUNITIES BGP
@RAPHAELISPCONNECT
WWW.RAPHAELISP.COM.BR
FILTROS BGP
BGP
www.raphaelisp.com.br
FILTROS BGP
BGP
www.raphaelisp.com.br
FILTROS BGP
BGP
www.raphaelisp.com.br
FILTROS BGP
# Definição de Community
ip community-filter 111 permit 64888:111
ip community-filter 112 permit 64888:112
ip community-filter 113 permit 64888:113
ip community-filter BLACKHOLE permit 64888:666
www.raphaelisp.com.br
ip community-filter TRANSIT-ALL permit 64888:171
LAB 7
APPLY POLITICA
REGULAR EXP. BGP
@RAPHAELISPCONNECT
WWW.RAPHAELISP.COM.BR
FILTROS BGP
BGP
LOCAL PREFERENCE 200
Prioridade iguais aos de Operadora para IXs Internacionais
LOCAL PREFERENCE 200
Evite que coisas estranhas sejam enviadas ao PTT:–BDPUs (spanning tree e similares)–CDP
(Cisco discover protocol)–MNDP (Mikrotik discover protocol)–IGPs (OSPF, ISIS)–RA IPv6–
Proxy ARP habilitado (Cisco principalmente)–Recursos de rádios em bridge no acesso.
www.raphaelisp.com.br
FILTROS BGP
BGP
Recebimento (accept) de toda tabela rotas da Internet.
policies Outbound
O não repasse (drop) de quaisquer prefixos que tenham sido aprendidos via outras sessões
de trânsito.
O não repasse (drop) de quaisquer prefixos que tenham aprendidos via sessões de peering.
O não repasse (drop) de quaisquer prefixos que tenham sido eventualmente aprendidos por
sessões com CDNs.
O repasse (anúncio) apenas de prefixos de clientes do Provedor, contemplando também, onde
aplicável, os clientes dos clientes do Provedor.
Permitir acordos de black hole (por RTBH) com o Provedor e seus upstreams.
www.raphaelisp.com.br
Permitir mitigação de blocos IPv4 e IPv6 de clientes um upstream de mitigação.
FILTROS BGP
BGP
prefixos;
www.raphaelisp.com.br
FILTROS BGP
Sessão BGP
Origem
BGP prefixos
Filtros BGP
Princípios
www.raphaelisp.com.br
Protocolo
POLITICAS BGP
EXPORTAÇÃO: quais informações da minha base posso enviar para os vizinhos e induzir a
decisão de roteamento deles.
Política INCLUSIVA:
BGP
Rejeitar algumas informações.
Aceitar o resto.
Política EXCLUSIVA:
Aceitar informações específicas.
Rejeitar o resto.
www.raphaelisp.com.br
POLITICAS BGP
BGP
Peering multi-homed: quando um AS possui apenas 2 upstreams (2 links).
Política de importação:
A - Inclusiva: receber full-route em ambos os links para determinar melhor rota de upload.
B - Exclusiva: receber somente prefixos próximos (as-path-length entre 1 e 3), aceitar gateway
padrão de ambos os links, rejeitar o resto.
www.raphaelisp.com.br
POLITICAS BGP
BGP
próximo salto (decisão de envio), ao transmitir o pacote IP pela interface o "poder" sobre o
pacote é perdido.
www.raphaelisp.com.br
OBRIGADO
@RAPHAELISPCONNECT
WWW.RAPHAELISP.COM.BR