Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pc:laboratoare:09_bgp [2022/05/04 19:42]
alina_elena.virtan [BGP protocol:]
pc:laboratoare:09_bgp [2022/05/23 01:12] (current)
vlad_andrei.badoiu [Exerciții]
Line 3: Line 3:
 ====Lectură laborator ==== ====Lectură laborator ====
 De citit înainte de laborator: De citit înainte de laborator:
-  * [[https://​www.computer-networking.info/​2nd/​html/​protocols/​bgp.html#​interdomain-routing|Interdomain routing]]+  * [[https://​www.computer-networking.info/​2nd/​html/​protocols/​bgp.html#​Interdomain ​routing|Interdomain routing]]
   * [[https://​www.computer-networking.info/​2nd/​html/​protocols/​bgp.html#​the-border-gateway-protocol|BGP]]   * [[https://​www.computer-networking.info/​2nd/​html/​protocols/​bgp.html#​the-border-gateway-protocol|BGP]]
  
Line 92: Line 92:
 În imaginea de mai sus, AS7 plătește AS4 pentru a îl folosi ca un AȘ de tranzit. Legăturile cu $ sunt de tip customer -> provider. În schimb legăturile mov sunt de tip shared-cost peering. De exemplu, AS3 și AS4 ambele plătesc AS1 pentru a îl folosi ca AS de tranzit. Astfel, entitățile care dețin AS3 și AS4 pot alege să facă peering între ele și să plătească doar un link cu AS1. În imaginea de mai sus, AS7 plătește AS4 pentru a îl folosi ca un AȘ de tranzit. Legăturile cu $ sunt de tip customer -> provider. În schimb legăturile mov sunt de tip shared-cost peering. De exemplu, AS3 și AS4 ambele plătesc AS1 pentru a îl folosi ca AS de tranzit. Astfel, entitățile care dețin AS3 și AS4 pot alege să facă peering între ele și să plătească doar un link cu AS1.
  
-==== BGP protocol====+==== BGP protocol ====
 În ziua de astăzi este folosit un singur protocol pentru rutare interdomain,​ Border Gateway Protocol (BGP). BGP rulează peste TCP și este un protocol de tip path vector (vectorul distanțelor,​ similar cu RIP). Vom folosi termenul de Autonomous System (AS) pentru a ne referi la domeniile din internet. Fiecare AS este reprezentat de un ID (integer) unic. În cazul anunțurilor de rute, BGP anunță un prefix, cât și drumul până la acesta. Acest drum reprezintă o listă de AS-uri, astfel este evitată problema numărării la infinit. În ziua de astăzi este folosit un singur protocol pentru rutare interdomain,​ Border Gateway Protocol (BGP). BGP rulează peste TCP și este un protocol de tip path vector (vectorul distanțelor,​ similar cu RIP). Vom folosi termenul de Autonomous System (AS) pentru a ne referi la domeniile din internet. Fiecare AS este reprezentat de un ID (integer) unic. În cazul anunțurilor de rute, BGP anunță un prefix, cât și drumul până la acesta. Acest drum reprezintă o listă de AS-uri, astfel este evitată problema numărării la infinit.
  
-BGP este un protocol care se bazează pe încredere. De exemplu, în 2004, tot traficul din lume a fost redirectat prin Turcia, deoarece aceștia au anunțat un prefx greșit.+BGP este un protocol care se bazează pe încredere. De exemplu, în 2004, tot traficul din lume a fost redirectat prin Turcia, deoarece aceștia au anunțat un prefix ​greșit.
  
 == Tipuri de mesaje == == Tipuri de mesaje ==
  
-  * OPEN: Mesajul ​de OPEN este trimis imediat ce conexiunea TCP dintre două routere este realizată. Acest mesaj inițializează sesiunea BGP și facilitează negocierea mai multor opțiuni pentru protocol. +  * OPEN: mesajul ​de OPEN este trimis imediat ce conexiunea TCP dintre două routere este realizată. Acest mesaj inițializează sesiunea BGP și facilitează negocierea mai multor opțiuni pentru protocol. 
-  * NOTIFICATION: ​Mesajul ​NOTIFICATION este folosit pentru a închide sesiuni BGP. În general, acest mesaj este trimis atunci când apar erori.+  * NOTIFICATION: ​mesajul ​NOTIFICATION este folosit pentru a închide sesiuni BGP. În general, acest mesaj este trimis atunci când apar erori.
   * UPDATE: mesajul este folosit pentru a anunța noi rute sau modificări la rutele existente. Spre deosebire de alți algoritmi de tip vector distance, BGP trimite doar update-uri cu schimbări, nu întreaga tabelă de rutare la fiecare update.   * UPDATE: mesajul este folosit pentru a anunța noi rute sau modificări la rutele existente. Spre deosebire de alți algoritmi de tip vector distance, BGP trimite doar update-uri cu schimbări, nu întreaga tabelă de rutare la fiecare update.
   * KEEPALIVE: mesajul este trimis regulat și este folosit pentru a confirma că routerul peer este conectat. În cazul în care pentru o perioadă de 90 de secunde nu primim un mesaj de tip KEEPALIVE de la un peer, înseamnă că sesiunea este down și trebuie să anunțăm retragerea tuturor rutelor prin acest peer.   * KEEPALIVE: mesajul este trimis regulat și este folosit pentru a confirma că routerul peer este conectat. În cazul în care pentru o perioadă de 90 de secunde nu primim un mesaj de tip KEEPALIVE de la un peer, înseamnă că sesiunea este down și trebuie să anunțăm retragerea tuturor rutelor prin acest peer.
  
-Găsiți un exemplu de captură de mesaje ​bgp în urmatoarea [[https://​www.cloudshark.org/​captures/​89f1795591f6|captură de pe Cloudshark]]. Studiați cu atenție aceste mesaje.+Găsiți un exemplu de captură de mesaje ​BGP în urmatoarea [[https://​www.cloudshark.org/​captures/​89f1795591f6|captură de pe Cloudshark]]. Studiați cu atenție aceste mesaje.
  
  
-== Extensii ​BGB ==+== Extensii ​BGP ==
 În implementarea protocolului,​ pentru a fi mai ușor de configurat, avem două mari extensii: În implementarea protocolului,​ pentru a fi mai ușor de configurat, avem două mari extensii:
   * External Border Gateway Protocol (EBGP) - Extensie a protocolului BGP folosit pentru comunicarea în exteriorul unui AS.    * External Border Gateway Protocol (EBGP) - Extensie a protocolului BGP folosit pentru comunicarea în exteriorul unui AS. 
Line 262: Line 262:
  
 <​note>​ <​note>​
-Routerele rulează deja OSPF și sunt configurate cu IP-uri din blocul <group number>​.0.0.0/​8. Putem folosi `show ip interface brief` pentru a vedea IP-urile asignate pe o interfață. IP-urile de pe interfețe sunt următoarele:​+Routerele rulează deja OSPF și sunt configurate cu IP-uri din blocul <group number>​.0.0.0/​8. Putem folosi `show interface brief` pentru a vedea IP-urile asignate pe o interfață. IP-urile de pe interfețe sunt următoarele:​
  
 LOND: <group number>​.0.1.1 si <group number>​.0.2.2 LOND: <group number>​.0.1.1 si <group number>​.0.2.2
Line 275: Line 275:
  
 **1.** Configurați BGP peering cu IXP. În acest exercițiu vom configura eBGP pentru a participa la internet, practic vom face cunoscut IXP-ului rutele noastre. Această operație va fi realizată pe router-ul conectat la IXP, mai exact LOND. **1.** Configurați BGP peering cu IXP. În acest exercițiu vom configura eBGP pentru a participa la internet, practic vom face cunoscut IXP-ului rutele noastre. Această operație va fi realizată pe router-ul conectat la IXP, mai exact LOND.
 +
 **1.1** Configurați regulile de import pentru IXP **1.1** Configurați regulile de import pentru IXP
 +
 **1.2** Configurați regulile de export pentru IXP. **1.2** Configurați regulile de export pentru IXP.
 <​note>​ <​note>​
Line 287: Line 289:
  ip address 180.21.0.2/​24  ip address 180.21.0.2/​24
 </​code>​ </​code>​
-</​note>​ 
  
 **2.** Configurați iBGP în full mesh pentru a redistribui intern rutele aflate folosind BGP. Găsiți [[https://​www.drumato.com/​posts/​simple-ibgp-rr-with-frr/​|aici]] un mic exemplu. **2.** Configurați iBGP în full mesh pentru a redistribui intern rutele aflate folosind BGP. Găsiți [[https://​www.drumato.com/​posts/​simple-ibgp-rr-with-frr/​|aici]] un mic exemplu.
Line 301: Line 302:
 </​note>​ </​note>​
  
-**3.** Testați dacă aveți conexiune la AS-uriel colegilor folosind ping. Puteți verifică prefixele primite de la IXP folosind comandă `show ip bgp`+**3.** Testați dacă aveți conexiune la AS-urile colegilor folosind ping. Puteți verifică prefixele primite de la IXP folosind comandă `show ip bgp`.
  
 **4.** Citiți articolul [[https://​www.theverge.com/​2021/​10/​4/​22709260/​what-is-bgp-border-gateway-protocol-explainer-internet-facebook-outage|What is BGP, and what role did it play in Facebook’s massive outage]] și explicația ce a cauzat întreruperea serviciilor Facebook pentru aproape o zi de acum 6 luni. **4.** Citiți articolul [[https://​www.theverge.com/​2021/​10/​4/​22709260/​what-is-bgp-border-gateway-protocol-explainer-internet-facebook-outage|What is BGP, and what role did it play in Facebook’s massive outage]] și explicația ce a cauzat întreruperea serviciilor Facebook pentru aproape o zi de acum 6 luni.
  
-**5.** **Bonus**. Filtrați după un prefix dat folosin ​ACL-uri.Găsiți [[https://​www.youtube.com/​watch?​v=hirKpSVpcxg|aici]] o prezentare ​rapdia ​a funcționalității de filtering.+**5.** **Bonus**. Filtrați după un prefix dat folosind ​ACL-uri. Găsiți [[https://​www.youtube.com/​watch?​v=hirKpSVpcxg|aici]] o prezentare ​rapidă ​a funcționalității de filtering. 
 + 
 + 
 +<​note>​ 
 +O posibila solutie a laboratorului o gasiti [[https://​ocw.cs.pub.ro/​courses/​_media/​pc/​laboratoare/​solution.txt|aici]] 
 +</​note>​
  
pc/laboratoare/09_bgp.1651682538.txt.gz · Last modified: 2022/05/04 19:42 by alina_elena.virtan
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0