bgp border gateway protocol - lacnic...configuración básica tener en cuenta: • las rutas a...

71
Erika Vega Guillermo Cicileo Mariela Rocha BGP Border Gateway Protocol

Upload: others

Post on 02-Feb-2021

10 views

Category:

Documents


0 download

TRANSCRIPT

  • ErikaVegaGuillermoCicileo

    MarielaRocha

    BGP Border Gateway Protocol

  • Conceptos basicos

    •  Protocolosderuteo•  SistemasAutónomos•  Tablasdeprotocolosytabladeruteo

  • Protocolos de ruteo

    •  IGP(InteriorGatewayProtocol)-Protocoloderuteousadoparaintercambiarinformaciónderuteodentrodeunsistemaautónomo.

    •  EGP(ExteriorGatewayProtocol)-Protocoloderuteousadoparaintercambiarinformaciónderuteoentresistemasautónomos.

    3

  • Sistema Autónomo

    4

    SistemaAutónomo:GrupoderedesIPquecompartenunapolíticaderuteopropiaeindependiente.

  • Sistema Autónomo

    5

    •  DesdeafueraelASesvistocomounaentidadúnica.•  Tienesupropiapolíticaderuteointerna(IGPs)ysupropiapolíticaderuteo

    externa(EGP)

  • Sistema Autónomo

    6

    •  CadaAStieneunidentificador:ASN(AutonomousSystemNumber).•  ASN:16o32bits•  Asignación:

  • Sistema Autónomo

    7

    InterconexióndeSistemasAutónomos

  • Tabla de ruteo y Tabla de BGP •  Existeunatablaconrutasporcadaprotocoloqueelroutermaneja:tabladeIS-IS,tabladeRIP,tabladeBGP.

    8

  • Tabla de ruteo y Tabla de BGP •  Losprotocolos“compiten”paraquesusrutasseanlasquefinalmenteseutilicen(enfuncióndeunapropiedadqueenCiscoesdenominadaDistanciaAdministrativa).

    •  Determinacuanconfiableesunprotocolo.Sihaydosrutassimilares,seeligelademenordistanciaadministrativa.Cuantomenoresladistanciaadministrativa,másconfiableeselprotocolo.

    •  Laruta“elegida”eslaquepasaaformarpartedelatabladeruteo..

    9

    Importante:existenvariastablasdeprotocolos(unaporcadaunodeellos)perosólounaTabladeRuteo

  • ¿Qué vimos?

    10

  • BGP

    •  QuéesBGP?•  CómotrabajaBGP?•  ConfiguraciónBásica

  • Qué es “Border Gateway Protocol” (BGP)?

    12

    EGP–ExteriorGatewayProtocolOperaintercambiandoinformaciónderutasygarantizauncaminolibredeloops

  • Cómo trabaja BGP? •  UsaTCPcomoprotocolodetransporte(port179)•  Seestableceentreunparderouters(neighborsopeers)unasesiónTCPabierta,

    mediantelacualintercambianinformaciónderuteoBGP.

    •  LospeersBGPnonecesitanestardirectamenteconectados.

    13

    AS 64496

    Sesión BGP

    Enlace

    AS 64496

    Sesión BGP

    Enlace Enlace

  • Cómo trabaja BGP?

    14

  • Aprender y anunciar rutas Aprenderunaruta:significaquevoyaincorporarenmitabladeBGPalgunarutaquemeestánenseñando.

    Anunciarunaruta:significaquelevoyadeciraalguienquetengounarutaparallegaradeterminadodestino,yqueesarutaestáenlatabladeruteo.

    15

  • Aprender y anunciar rutas (Resumiendo)

    •  Neighbor:puntoremotoaquienvoyaquererenseñary/odequienaprenderrutas.

    •  Parahacerestepasajederutasdebeestablecerseuna“sesiónBGP”.

    •  ParaquelasesiónBGPseestablezca,elpotencialneighbordebeserperfectamentealcanzableporIP(cuidadoconfiltros!).

    •  LasesiónestablecidapuedesereBGPoiBGP.

    16

  • Aprender y anunciar rutas •  Quétráficoafectalasrutasqueaprendo?

    17

    saliente

    entrante

    •  Quétráficoafectalasrutasqueenseño?

    •  Quépasasinoaprendonada?

    Dependedeloquetengaconfiguradolocalmenteenmitabladeruteo.

  • Configuración Básica 1)_CreaelprocesoBGPdentrodelrouter:

    routerbgp

    2)_Definircontráquépeersestableceremoslasesión:

    neighborremote-as

    •  vecinosinternos(mismoAS)•  vecinosexternos(distintoAS)Generalmentelosexternoscompartenunasubred,sonadyacentes.Losinternos(iBGP)puedenestarencualquierpartedelSistemaAutónomo.

    Notar:EnunIGPlosvecinossondescubiertosautomáticamente;enBGPseconfiguranenformaexplícita

    18

  • Configuración Básica

    3)_DefinirlasredesqueseránanunciadasatravésdeBGP:network[mask]

    -SedadealtaunaredenlatabladeBGPylamarcacomolocalalAS-Lamáscarapermiteespecificarsupernettingosubnetting

    19

  • Configuración Básica

    •  Ejemplo:

    routerbgp64496network203.0.113.0mask255.255.255.0neighbor192.0.2.2remote-as64500neighbor192.0.2.22remote-as64505

    20

  • Configuración Básica

    Tenerencuenta:•  Lasrutasaanunciardebenexistirenlatabladeruteodelrouterlocalo

    noseránenviadasenlasactualizaciones.•  Lasrutasaprendidasseránpropagadaspordefecto

    21

    AS 64496192.0.2.0

    198.51.100.0/30

    A

    198.51.100.1

    198.51.100.2

    AS 64505203.0.113.0

    B

    Configuración Router A

    router bgp 64496 network 192.0.2.0 neighbor 198.51.100.2 remote-as 64505

    Configuración Router B

    router bgp 64505 network 203.0.113.0 neighbor 198.51.100.1 remote-as 64496

  • Configuración Básica

    Tenerencuenta:•  ParaestablecermássesionesBGPsimeplementeseagreganmáscomandos

    “neighbor..”•  Esecomandosirveparaidentificarunvecinoconelcualelrouterlocal

    establecelasesión.•  ElargumentoASNdeterminasielroutervecinoesEBGPoIBGP.

    22

    AS 64496192.0.2.0

    198.51.100.0/30

    A

    198.51.100.1

    198.51.100.2

    AS 64505203.0.113.0

    B

    Configuración Router A

    router bgp 64496 network 192.0.2.0 neighbor 198.51.100.2 remote-as 64505

    Configuración Router B

    router bgp 64505 network 203.0.113.0 neighbor 198.51.100.1 remote-as 64496

  • Comandos: show ip bgp •  Lasprimerastrescolumnaslistanelstatusdecadaruta.•  Un*enlaprimercolumna,indicaquelarutatieneunnext-hopválido.Otrasopciones:

    •  "s"suppressed:BGPconocelaruta,peronoestásiendoanunciada,usualmenteporqueespartedeunarutasumarizada.

    •  "d"dampened:BGPdetieneelanunciodeunarutaqueproduceunefectodenominadoflapping(selevantaysebaja)demasiadorápidohastaqueseestabiliceporunperiododetiempo.

    •  "h"history:BGPconocelared,peronohayunarutaválidahaciaella.•  "r"RIB*failure:larutaesanunciadaaBGPperonoesinstaladaenlatabladeruteo.Estopuede

    sucederporquehayotroprotocoloquetienelarutaconunamejordistanciaadministrativa.*RIB:RoutingInformationBase

    •  "S"stale:indicaquelarutaestá“detenida”yrequiereserrefrescadacuandosereestablezcalaconexiónconsuvecino.

    BGP table version is 134358, local router ID is 198.51.100.1Status codes: s suppressed, d damped, h history, * valid, > best, i – internal, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 0 64496 65511 i*> 192.0.2.128/26 198.51.100.1 0 64496 64506 i*>i 198.51.100.22 0 0 64506 e* 203.0.113.128/25 198.51.100.1 0 64496 64501 i*> 198.51.100.114 0 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 64496 ?

  • Comandos: show ip bgp

    24

    •  Lasegundacolumnatieneunsignomayoralladodelarutaquefueseleccionadacomoelmejorcaminohaciaunareddeterminada.

    •  Laterceracolumnaestáenblanco,indicandoqueelrouteraprendiótodaslasrutasdeunvecinoexterno.UnarutaaprendidadeunvecinoiBGPdeberíatenerunai.

    BGP table version is 134358, local router ID is 198.51.100.1Status codes: s suppressed, d damped, h history, * valid, > best, i – internal, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 0 64496 65511 i*> 192.0.2.128/26 198.51.100.1 0 64496 64506 i*>i 198.51.100.22 0 0 64506 e* 203.0.113.128/25 198.51.100.1 0 64496 64501 i*> 198.51.100.114 0 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 64496 ?

  • Comandos show ip bgp

    25

    •  Lacuartacolumnalistalasredes.Laquenotieneunamáscaradesubred,usalamáscaraclassfull(A/8,B/16,C/24).Cuandoelrouteraprendelamismareddesdemúltiplesfuentes,sólolistalaredunavez.

    BGP table version is 134358, local router ID is 198.51.100.1Status codes: s suppressed, d damped, h history, * valid, > best, i – internal, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 0 64496 65511 i*> 192.0.2.128/26 198.51.100.1 0 64496 64506 i*>i 198.51.100.22 0 0 64506 e* 203.0.113.128/25 198.51.100.1 0 64496 64501 i*> 198.51.100.114 0 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 64496 ?

  • ¿Qué vimos?

    26

    BGP table version is 134358, local router ID is 198.51.100.1Status codes: s suppressed, d damped, h history, * valid, > best, i – internal, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 0 64496 65511 i*> 192.0.2.128/26 198.51.100.1 0 64496 64506 i*>i 198.51.100.22 0 0 64506 e* 203.0.113.128/25 198.51.100.1 0 64496 64501 i*> 198.51.100.114 0 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 64496 ?

    AS 64496192.0.2.0

    198.51.100.0/30

    A

    198.51.100.1

    198.51.100.2

    AS 64505203.0.113.0

    B

    Configuración Router A

    router bgp 64496 network 192.0.2.0 neighbor 198.51.100.2 remote-as 64505

    Configuración Router B

    router bgp 64505 network 203.0.113.0 neighbor 198.51.100.1 remote-as 64496

  • Atributos

    •  Definición•  Categoríasdeatributos•  Cómosecomportan

    27

  • Atributos de rutas

    28

    Sonparámetrospreestablecidosqueviajanjuntoalainformacióndelarutas.PermitenpodersermanipuladosporlosadministradoresderedesparainfluirenlasdecisionesdeBGP

  • Categorías de Atributos

    29

  • Atributos que veremos

    30

  • Atributos de rutas: origin •  Informaatodoslossistemasautónomoscomofueintroducidoelprefijodered•  3valores:IGP,EGP,incomplete

    i originadaenunIGP,anunciadacon“network”e originadaenunEGP(BGPaBGP)? origendesconocido,normalmenteproductodeunaredistribución incompletadesdeotroprotocoloderuteo

    31

    BGP table version is 134358, local router ID is 198.51.100.1Status codes: s suppressed, d damped, h history, * valid, > best, i – internal, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 0 64496 65511 i* 192.0.2.128/26 198.51.100.1 0 64496 64506 i*> 198.51.100.22 0 0 64506 e* 203.0.113.128/25 198.51.100.1 0 64496 64501 i*> 198.51.100.114 0 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 64496 ?

  • Atributos de rutas: next-hop

    32

    •  Indicacuáleselpróximosaltoparaalcanzarundestino•  NonecesariamenteeslaIPdelrouterdirectamenteconectado.

    •  EnunIGP,elnext-hop(NH)eslaIPdelrouterqueanunciólaruta.EnBGPno:–  EnlassesioneseBGP,elNHeslaIPdelneighborqueanunciólaruta.–  EnlassesionesiBGP:

    •  RutasoriginadasdentrodelAS:NHeslaIPdelrouterquelaorigina.•  RutasincorporadasporeBGP:setransportainalteradoelNHaprendidopor

    eBGP.•  Unnext-hop0.0.0.0indicaqueelrouterlocaloriginólaruta.

    BGP table version is 134358, local router ID is 198.51.100.1Status codes: s suppressed, d damped, h history, * valid, > best, i – internal, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 0 64496 65511 i* 192.0.2.128/26 198.51.100.1 0 64496 64506 i*> 198.51.100.22 0 0 64506 e* 203.0.113.128/25 198.51.100.1 0 64496 64501 i*> 198.51.100.114 0 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 64496 ?

  • Atributos de rutas: next-hop

    33

    •  Enmediosmultiacceso(Ethernet),elNHeslaIPdelainterfazdelrouterqueoriginólaruta•  Ejemplo:IXP

    Tráfico

    IP 192.0.2.1

    IP 198.51.100.2 NH 198.51.100.2

    Switch

  • Atributos de rutas: next-hop

    34

    AS 64500B

    AS 64496198.51.100.0/25

    A

    eBGP

    192.0.2.1 192.0.2.2

    CiBGP

    AS 64505203.0.113.0/24

    Net wor k Next Hop 198. 51. 100. 0/ 25 192. 0. 2. 1203. 0. 113. 0/ 24 192. 0. 2. 1

  • BGP table version is 134358, local router ID is 198.51.100.1Status codes: s suppressed, d damped, h history, * valid, > best, i – internal, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 0 64496 65511 i* 192.0.2.128/26 198.51.100.1 0 64496 64506 i*> 198.51.100.22 0 0 64506 e* 203.0.113.128/25 198.51.100.1 0 64496 64501 i*> 198.51.100.114 0 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 64496 ?

    •  SecuenciadeASNquesedebenatravezarparallegaralASdestino.

    •  Claveenelalgoritmodeselecciónderutas.•  UnASPathenblanco,significaquelarutafueoriginadaenelAS

    local.

    Atributos de rutas: AS-Path

    35

  • BGP table version is 134358, local router ID is 198.51.100.1Status codes: s suppressed, d damped, h history, * valid, > best, i – internal, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 95 0 64496 65511 i* 192.0.2.128/26 198.51.100.1 95 0 64496 64506 i*> 198.51.100.22 95 0 64506 e* 203.0.113.128/25 198.51.100.1 95 0 64496 64501 i*> 198.51.100.114 100 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 100 0 64496 64497 64498 i

    •  MEDesutilizadoparaanunciaralosvecinoseBGPpreferenciasobreeltráficoentranteanuestroAS–  IndicaaotroAScuáldeberíaserlapuertadeentradaanuestroAS.

    •  LospathconelvalorMEDmásbajosonlosmáspreferidos.•  Bajaprecedenciaenelalgoritmodeselecciónderutas.

    Atributos de rutas: MED

    36

  • Atributos de rutas: MED

    37

    •  LosroutersAyBanuncianelprefijo192.0.2.0/24conMED50y80auneBGPvecino(AS64500).•  EltráficoentrantealAS64496desdeelAS64500elegiráelcaminoporelrouterA,puestiene

    menorMED.

    AS 64496

    AS 64500

    Router C Network Next Hop Metric* 192.0.2.0/24 B 80 *>192.0.2.0/24 A 50

    192.0.2.0/24A

    B

    C Router B192.0.2.0/24Set metric 80

    Router A192.0.2.0/24Set metric 50

  • •  Sirveparaindicarungradodepreferenciarespectoaotrasrutasalmismodestino.

    •  Esunatributolocalalsistemaautónomo(sepropagaporiBGPperonoporeBGP).

    •  Mayorlocalpreferenceindicamejorpreferencia:•  localpref600esmejorque100(esteeselvalorpordefecto)

    •  Seseteamedianteroute-maps.

    Atributos de rutas: LOCAL_PREF

    38

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 95 0 64496 65511 i* 192.0.2.128/26 198.51.100.1 95 0 64496 64506 i*> 198.51.100.22 95 0 64506 e* 203.0.113.128/25 198.51.100.1 95 0 64496 64501 i*> 198.51.100.114 200 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 200 0 64496 64497 64498 i

  • Atributos de rutas: LOCAL_PREF

    39

    AS 64496192.0.2.0/24

    AS 64500

    Router A Network Next Hop LocPref*> 203.0.113.0/24 F 400 * 203.0.113.0/24 E 200

    A B

    C203.0.113.0/24set local-pref 200

    AS 64510203.0.113.0/24

    E

    D

    G

    ping 203.0.113.1

    203.0.113.0/24set local-pref 400

    AS 64505F

  • Atributos de rutas: Weight

    40

    •  Essimilaralocal_pref,sóloquetieneefectolocalenelrouterquesedefine.

    •  Tieneprecedenciamásaltaquecualquierotroatributo.•  Sirveparadiscriminarrutasentreproveedoresconectadosal

    mismorouter.•  Seseteamedianteroute-maps.•  InicialmentepropietariodeCISCO,aunqueyaotrosfabricanteslo

    hanincorporado.

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 95 300 64496 65511 i* 192.0.2.128/26 198.51.100.1 95 0 64496 64506 i*> 198.51.100.22 95 100 64506 e* 203.0.113.128/25 198.51.100.1 95 0 64496 64501 i*> 198.51.100.114 100 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 100 0 64496 64497 64498 i

  • Atributos de rutas: Weight AS 64505

    203.0.113.0/25AS 64510

    Router D Network Next Hop Weight* 203.0.113.0/25 A 100 *> 203.0.113.0/25 C 200

    AB

    C

    AS 64496

    D

    ping 203.0.113.1

    AS 64500

    203.0.113.0/25set weight 100

    203.0.113.0/25set weight 200

    41

  • ¿Qué vimos?

    42

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 95 300 64496 65511 i* 192.0.2.128/26 198.51.100.1 95 0 64496 64506 i*> 198.51.100.22 95 100 64506 e* 203.0.113.128/25 198.51.100.1 95 0 64496 64501 i*> 198.51.100.114 100 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 100 0 64496 64497 64498 i

    BGP table version is 134358, local router ID is 198.51.100.1Status codes: s suppressed, d damped, h history, * valid, > best, i – internal, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete

  • Decisiones administrativas

    •  Redistribucióndelarutadefault•  InsertandoprefijosenBGP•  Filtradoderutas

    43

  • Redistribución del default •  network0.0.0.0–  Debeexistirlarutaenlatabladeruteo–  Seenseñaatodoslosneighbors–  Importante:ponerfiltros!!

    •  default-informationoriginate–  Anunciadaatodoslosneighbor–  Noimportasielroutertieneunarutapordefault

    •  neighborx.x.x.xdefault-originate–  Aplicadoaunsóloneighbor–  Noimportasielroutertieneunarutapordefault

    44

  • Insertando prefijos en BGP

    Comandonetwork•  Ejemplo:

    router bgp 64496 network 203.0.113.128 mask 255.255.255.128 ip route 203.0.113.128 255.255.255.128 serial0

    •  Unarutacoincidentedebeexistirenlatabladeruteoantesdequelaredseaanunciada.

    •  Ysiestarutanoestá?

    45

  • Insertando redes en BGP

    •  Seinsertaunaruta“pullup”enlatabladeruteo,idénticaalprefijoquesequiereanunciar

    •  Setratadeunarutaestáticaa“null0”•  sóloseusarásinohayunarutamásespecíficaenlatabla

    deruteo.•  Ejemplo

    router bgp 64496 network 203.0.113.128 mask 255.255.255.128 ip route 203.0.113.128 255.255.255.128 null0 250

    46

  • Filtrado de rutas •  Procesomuyimportanteafindegarantizarlaestabilidaddenuestro

    ASylosASvecinos.

    •  Filtradodeentrada:esaplicadoarutasaprendidas•  Entonceslarutasnoseincluyenennuestratabladeruteo.

    •  Filtradodesalida:seaplicaarutaspreviamenteaseranunciadasaunvecino.

    •  Entonceslasrutasnoseincluiránenlastablasderuteoremotas.

    • Razones?•  Económicas–Ej:TransitISPvspeering•  Seguridad–Ej:sólorutasasignadasanuestrosclientes•  Técnicas–Ej:problemasdememoria

    47

  • Filtrado de rutas

    48

  • Filtros con prefix-list

    49

    Cómoseaplicaelprefix-listalasesiónBGP?

  • Filtros con prefix-list - Ejemplo Prefix-list

    routerbgp64496neighbor203.0.113.100remote-as65551neighbor203.0.113.100prefix-listPEER-INinneighbor203.0.113.100prefix-listPEER-OUTout!ipprefix-listPEER-INdeny198.51.100.0/24ipprefix-listPEER-INpermit0.0.0.0/0le32ipprefix-listPEER-OUTpermit192.0.2.0/24

    50

  • Filtros por AS-PATH

    Elfiltroactúasegúnelcaminohechoporlosprefijos

    51

  • Filtros con AS-PATH- Ejemplo

    ... neighbor 198.51.100.22 filter-list 10 in

    neighbor 198.51.100.22 filter-list 11 out

    ...

    ip as-path access-list 10 permit ^$

    ip as-path access-list 11 deny 64496$

    ip as-path access-list 11 deny ^645

    ip as-path access-list 11 permit _64497_64498_

    ...

    52

  • Expresiones Regulares

    53

  • Filtrado de rutas – Route-maps •  Losroute-mapsonsimilaresalassentenciasdeunlenguajede

    programación,•  “if…….then……”

    •  Cadainstanciadelroute-maptieneunnúmerodesecuencia.•  Sonejecutadosenordendesdelasentenciaconmenornúmerode

    secuenciahastaelmásalto.Esposibleeditarlosomodificarlosutilizandoestenúmerodesecuencia.

    •  Sienunroute-map,unasentenciaconundeterminadocriteriodecoincidenciaresultaverdadera,laejecucióndelroute-mapsedetiene.

    •  Sepuedeutilizarroute-mapparapermitirodenegarsegúnelcriterioencontradoporlasentenciamatch.

    54

  • Filtrado de rutas – Route-maps •  Sinoexistieraunasentenciamatchdentrodeunainstanciadeunroute-

    map,todaslasrutasresultanconcriterioverdadero.Lassentenciassetsonaplicadasatodaslasrutas*.

    •  Sinoexistieraunalistadeaccesoparalasentenciamatchdentrodelainstanciadelroute-map,todaslasrutasresultanconcriterioverdadero.Lassentenciassetseaplicanatodaslasrutas.

    •  Talcomoconlaslistasdeacceso,unadenegaciónimplícitaesincluidaalfinaldelroute-map.

    •  Simúltiplessentenciasmatchsonutilizadasdentrodeunainstanciadeunmapaderuteo,todaslassentenciasmatchdebenresultarverdaderasparaquedelainstanciasurjaunresultadoverdadero *opaquetes

    55

  • Route-map – Ejemplo con prefix-list router bgp 64496 neighbor 203.0.113.10 route-map infilter in!route-map infilter permit 10 match ip address prefix-list HIGH-PREF set local-preference 120!route-map infilter permit 20 match ip address prefix-list LOW-PREF set local-preference 80!route-map infilter permit 30!ip prefix-list HIGH-PREF permit 192.0.2.0/25ip prefix-list LOW-PREF permit 192.0.2.128/25

    56

  • Route-map – Ejemplo con as-path router bgp 64496 neighbor 203.0.113.10 route-map filter-on-as-path in!route-map filter-on-as-path permit 10 match as-path 1 set local-preference 80 set weight 200 set metric 127 set next-hop 192.0.2.10!route-map filter-on-as-path permit 20 match as-path 2 set local-preference 200 set weight 500 set metric 327 set next-hop 192.0.2.100!route-map filter-on-as-path permit 30!ip as-path access-list 1 permit _64505$ip as-path access-list 2 permit _64510_

    57

  • ¿Qué vimos?

    router bgp 64496 neighbor 203.0.113.10 route-map filter-on-as-path in

    !route-map filter-on-as-path permit 10

    match as-path 1

    set local-preference 80

    set weight 200

    set metric 127

    set next-hop 192.0.2.10!

    route-map filter-on-as-path permit 20

    match as-path 2

    set local-preference 200

    set weight 500 set metric 327

    set next-hop 192.0.2.100

    !

    route-map filter-on-as-path permit 30

    !

    ip as-path access-list 1 permit _64505$ip as-path access-list 2 permit _64510_

    58

    Prefix-list

    router bgp 64496 neighbor 203.0.113.100 remote-as 65551 neighbor 203.0.113.100 prefix-list PEER-IN

    in neighbor 203.0.113.100 prefix-list PEER-

    OUT out!ip prefix-list PEER-IN deny 198.51.100.0/24ip prefix-list PEER-IN permit 0.0.0.0/0 le 32ip prefix-list PEER-OUT permit 192.0.2.0/24

    ...

    neighbor 198.51.100.22 filter-list 10 in

    neighbor 198.51.100.22 filter-list 11 out

    ...

    ip as-path access-list 10 permit ^$

    ip as-path access-list 11 deny 64496$

    ip as-path access-list 11 deny ^645

    ip as-path access-list 11 permit _64497_64498_

    ...

  • Puesta a Punto

    •  Algoritmodeseleccióndelmejorcamino•  Mejoresprácticasrecomendadas

    59

  • Selección del mejor camino

    1. Sielnext-hopesinaccesible,descartarlaruta.

    2. Sielcaminoesinterno(iBGP),synchronizationestáhabilitadoylarutanoestáenelIGP,descartarla.

    3. Seprefiereelcaminoconmayorpeso“weight”(propietarioCisco).

    4. Luego,seprefierelarutademayor“localpreference”.

    60

  • Selección del mejor camino

    5. Encasodelmismolocal-pref,seprefiereunarutaqueesoriginadaporelrouter(comandonetworkoredistribución).

    6. Silarutanofueoriginadaporelrouterylocal-prefesigual,seprefierelarutaconelpathdesistemasautónomosmáscorto(shortestas-path).

    7. Sitodoesigual,seprefiereelmenorcódigode“origen”(IGP

  • Selección del mejor camino

    8. Aigualdadde“origen”,seprefiereelmenorvalordeMED.EstacomparaciónserealizasólosilosneighborsdelosqueseaprendieronlarutapertenecentodosaunmismoAS(amenosqueseespecifique“bgpalways-compare-med”).

    9. SeprefierenrutasaprendidasporeBGPqueporiBGP.10. Seprefierelarutacuyonext-hoptienemenormétricaen

    elIGP.

    11. Sihastaaquínohaydecisión,seprefierelarutacorrespondientealneighbordemenorrouter-id.

    62

  • Sobre mejores prácticas recomendadas

    BGPvs.IGPsProtocolosderuteointerno(IGP):

    • EjemplosOSPF,RIP,etc..

    • Usadosparatransportarlasdireccionesdelainfraestructura.

    • NousadosparatransportarlosprefijosdeInternetoclientes.

    • Diseñadosdetalformaqueseminimiceelnúmerodeprefijos.

    63

  • Sobre mejores prácticas recomendadas

    BGPvsIGP´s•  BGP:usarinternamente(iBGP)yexternamente(eBGP)

    •  iBGP:usadoparatransportar:–  LosprefijosdeInternetatravésdelBackbone–  Losprefijosdelosclientes–  Utilizar/32paralasinterfacesloopbacksde

    enrutamientoylevantarlassesionesdeiBGPconellas–  UsarPeerGroups–  UsarPasswordsenlasesionesdeiBGP(robosde

    prefijos)64

  • Sobre mejores prácticas recomendadas

    BGPvsIGP´s•  IGP–  ElIGPdebeconteneralasredesdelaDMZousar

    neighborx.x.x.xnext-hop-self

    •  eBGPusadospara–  IntercambiarprefijosconotrosAS–  Clavedelamplementacióndepolíticasderuteo

    65

  • Sobre mejores prácticas recomendadas

    BGP

    •  Nuncahacer

    –  RedistribuirprefijosBGPenunIGP

    –  RedistribuirrutasIGPdentrodeBGP

    –  NOUsarIGPparatransportarlosprefijosdelosclientesuotrasredesexternas

    66

  • Sobre mejores prácticas recomendadas

    BGP•  Queanunciosnodeberíarecibir

    –  NorecibirlosprefijosdefinidosenelRFC1918

    –  Noaceptarmispropiosprefijos

    –  Noaceptareldefault(amenosqueserequiera)

    –  Noaceptarprefijosmayoresde/24

    67

  • Sobre mejores prácticas recomendadas

    68

    •  Queprefijosnodeberíarecibir:

    router bgp 64496 network 192.0.2.0 mask 255.255.255.0 neighbor 203.0.113.100 remote-as 64505 neighbor 203.0.113.100 prefix-list in-filter in!ip prefix-list in-filter deny 0.0.0.0/0 ! Block defaultip prefix-list in-filter deny 0.0.0.0/8 le 32ip prefix-list in-filter deny 10.0.0.0/8 le 32ip prefix-list in-filter deny 101.10.0.0/19 le 32 ! Block local prefixip prefix-list in-filter deny 127.0.0.0/8 le 32ip prefix-list in-filter deny 169.254.0.0/16 le 32ip prefix-list in-filter deny 172.16.0.0/12 le 32ip prefix-list in-filter deny 192.0.2.0/24 le 32ip prefix-list in-filter deny 192.168.0.0/16 le 32ip prefix-list in-filter deny 224.0.0.0/3 le 32 ! Block multicastip prefix-list in-filter deny 0.0.0.0/0 ge 25 ! Block prefixes >/24ip prefix-list in-filter permit 0.0.0.0/0 le 32

  • ...

    neighbor 198.51.100.22 filter-list 10 in

    neighbor 198.51.100.22 filter-list 11 out

    ...

    ip as-path access-list 10 permit ^$

    ip as-path access-list 11 deny 64496$

    ip as-path access-list 11 deny ^645

    ip as-path access-list 11 permit _64497_64498_

    ...

    ¿Qué vimos?

    router bgp 64496

    neighbor 203.0.113.10 route-map filter-on-as-path in

    !

    route-map filter-on-as-path permit 10

    match as-path 1

    set local-preference 80

    set weight 200

    set metric 127

    set next-hop 192.0.2.10

    !

    set local-preference 200

    69

    AS 64496192.0.2.0

    198.51.100.0/30

    A

    198.51.100.1

    198.51.100.2

    AS 64505203.0.113.0

    B

    Configuración Router A

    router bgp 64496 network 192.0.2.0 neighbor 198.51.100.2 remote-as 64505

    Configuración Router B

    router bgp 64505 network 203.0.113.0 neighbor 198.51.100.1 remote-as 64496

    Network Next Hop Metric LocPrf Weight Path*> 192.0.2.0/26 198.51.100.1 95 300 64496 65511 i* 192.0.2.128/26 198.51.100.1 95 0 64496 64506 i*> 198.51.100.22 95 100 64506 e* 203.0.113.128/25 198.51.100.1 95 0 64496 64501 i*> 198.51.100.114 100 0 64501 i*> 203.0.113.0/25 198.51.100.1 0 100 0 64496 64497 64498 i

    BGP table version is 134358, local router ID is 198.51.100.1Status codes: s suppressed, d damped, h history, * valid, > best, i – internal, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete

    Prefix-list

    router bgp 64496 neighbor 203.0.113.100 remote-

    as 65551 neighbor 203.0.113.100 prefix-list

    PEER-IN in neighbor 203.0.113.100 prefix-list

    PEER-OUT out

    !

    Finalmente… ¿qué vimos?

  • ”Fundamentos de BGP e Introducción a RPKI”

    • Modalidad:•  Onlineconasistenciadetutor•  Teórico/Práctico

    • Duración:6semanas• Primeraedición2018:25demayo•  Informeseinscripción:

    http://campus.lacnic.net

    70

  • Muchas gracias!

    [email protected]