Kuidas BGP töötab

Täna vaatame BGP protokolli. Me ei räägi pikka aega, miks see nii on ja miks seda kasutatakse ainsa protokollina. Selle teema kohta on näiteks päris palju infot siin.

Mis on siis BGP? BGP on dünaamiline marsruutimisprotokoll ja ainus EGP (External Gateway Protocol) protokoll. Seda protokolli kasutatakse marsruutimise loomiseks Internetis. Vaatame, kuidas kahe BGP-ruuteri vahele ehitatakse naabruskond.

Kuidas BGP töötab
Mõelge ruuteri 1 ja ruuteri 3 vahelisele naabrusele. Seadistame need järgmiste käskude abil:

router bgp 10
  network 192.168.12.0
  network 192.168.13.0
  neighbor 192.168.13.3 remote-as 10

router bgp 10
  network 192.168.13.0
  network 192.168.24.0
  neighbor 192.168.13.1 remote-as 10

Ühe autonoomse süsteemi naabrus on AS 10. Pärast teabe sisestamist ruuterisse, näiteks ruuterisse, proovib see ruuter luua naabrussuhte ruuteriga 1. Algolekut, mil midagi ei juhtu, nimetatakse Idle. Niipea kui bgp on ruuteris 1 konfigureeritud, hakkab see kuulama TCP porti 179 - see läheb olekusse Võta meiega ühendustja kui see proovib avada seanssi ruuter3-ga, läheb see olekusse aktiivne.

Pärast seansi loomist ruuter1 ja ruuter3 vahel vahetatakse avatud sõnumeid. Kui selle sõnumi saadab ruuter1, kutsutakse see olek välja Ava Saadetud. Ja kui see saab ruuterilt 3 avatud sõnumi, läheb see olekusse Avage Kinnita. Vaatame lähemalt avatud sõnumit:

Kuidas BGP töötab
See teade edastab teavet BGP-protokolli enda kohta, mida ruuter kasutab. Avatud sõnumeid vahetades edastavad ruuter1 ja ruuter3 üksteisele teavet oma seadete kohta. Läbitakse järgmised parameetrid:

  • versioon: see hõlmab ruuteri kasutatavat BGP-versiooni. Praegune BGP versioon on versioon 4, mida kirjeldatakse standardis RFC 4271. Kaks BGP-ruuterit püüavad kokku leppida ühilduva versiooni üle, kuid mittevastavuse korral BGP-seanssi ei toimu.
  • Minu AS: see hõlmab BGP-ruuteri AS-i numbrit, ruuterid peavad kokku leppima AS-i numbri(d) ja see määrab ka, kas nad kasutavad iBGP-d või eBGP-d.
  • Hoidke aega: kui BGP ei saa ooteaja jooksul teiselt poolelt ühtegi säilitus- ega uuendusteadet, kuulutab ta teise poole surnuks ja katkestab BGP seansi. Vaikimisi on Cisco IOS-i ruuterites ooteajaks seatud 180 sekundit, sõnum, mille ellujäämine püsib, saadetakse iga 60 sekundi järel. Mõlemad ruuterid peavad ooteajas kokku leppima, vastasel juhul BGP-seanssi ei toimu.
  • BGP identifikaator: see on kohaliku BGP-ruuteri ID, mis valitakse täpselt nagu OSPF:
    • Kasutage ruuteri ID-d, mis konfigureeriti käsitsi käsuga bgp ruuter-id.
    • Kasutage tagasisilmusliideses kõrgeimat IP-aadressi.
    • Kasutage füüsilise liidese kõrgeimat IP-aadressi.
  • Valikulised parameetrid: siit leiate mõned BGP-ruuteri valikulised võimalused. See väli on lisatud selleks, et BGP-le saaks lisada uusi funktsioone ilma uut versiooni looma. Siit võite leida järgmisi asju:
    • MP-BGP (Multi Protocol BGP) tugi.
    • Route Refreshi tugi.
    • 4-okteti AS-i numbrite tugi.

Naabruskonna rajamiseks peavad olema täidetud järgmised tingimused:

  • Versiooni number. Praegune versioon on 4.
  • AS-i number peab ühtima teie seadistatuga naaber 192.168.13.3 kaug-as 10.
  • Ruuteri ID peab naabri omast erinema.

Kui mõni parameeter neile tingimustele ei vasta, saadab ruuter selle Teade teade, mis viitab veale. Pärast avatud sõnumite saatmist ja vastuvõtmist läheb naabrussuhe olekusse LOODUD. Pärast seda saavad ruuterid marsruutide kohta teavet vahetada ja seda teha kasutades Värskendused sõnumeid. See on värskendusteade, mille ruuter1 saatis ruuterile 3:

Kuidas BGP töötab

Siin näete ruuter1 ja Path atribuutide kaudu teatatud võrke, mis on analoogsed mõõdikutega. Räägime tee atribuutidest üksikasjalikumalt. Säilitussõnumeid saadetakse ka TCP-seansi jooksul. Neid edastatakse vaikimisi iga 60 sekundi järel. See on Keepalive Timer. Kui hoidetaimeri ajal Keepalive sõnumit vastu ei võeta, tähendab see suhtluse katkemist naabriga. Vaikimisi võrdub see 180 sekundiga.

Kasulik märk:

Kuidas BGP töötab

Näib, et oleme aru saanud, kuidas ruuterid üksteisele teavet edastavad, proovime nüüd mõista BGP-protokolli loogikat.

Marsruudi reklaamimiseks BGP-tabelisse, nagu ka IGP-protokollides, kasutatakse võrgukäsku, kuid tööloogika on erinev. Kui IGP-s vaatab IGP pärast võrgukäskluses marsruudi määramist, millised liidesed sellesse alamvõrku kuuluvad ja kaasab need oma tabelisse, siis BGP-s vaatab võrgukäsk marsruutimistabelit ja otsib täpne sobib võrgukäsu marsruudiga. Kui sellised marsruudid leitakse, kuvatakse need marsruudid BGP tabelis.

Otsige ruuteri praegusest IP-marsruutimise tabelist marsruuti, mis vastab täpselt võrgukäsu parameetritele; kui IP-marsruut on olemas, sisestage samaväärne NLRI kohalikku BGP-tabelisse.

Nüüd tõstame BGP kõikidele ülejäänud ja vaatame, kuidas marsruut ühes AS-is valitakse. Pärast seda, kui BGP-ruuter on oma naabrilt marsruute vastu võtnud, hakkab ta valima optimaalset marsruuti. Siin peate mõistma, millist tüüpi naabrid võivad olla - sisemised ja välised. Kas ruuter saab konfiguratsiooni järgi aru, kas konfigureeritud naaber on sisemine või väline? Kui olete meeskonnas:

neighbor 192.168.13.3 remote-as 10 

parameeter remote-as määrab AS-i, mis konfigureeritakse ruuteril endal ruuteri käsus bgp 10. Sisemisest AS-ist tulevad marsruudid loetakse sisemiseks ja välisest AS-ist pärinevad marsruudid väliseks. Ja igaühe puhul toimib erinev vastuvõtmise ja saatmise loogika. Mõelge sellele topoloogiale:

Kuidas BGP töötab

Igal ruuteril on ip-ga konfigureeritud loopback-liides: xxxx 255.255.255.0 – kus x on ruuteri number. Ruuter9-s on meil loopback-liides aadressiga - 9.9.9.9 255.255.255.0. Anname sellest BGP kaudu teada ja vaatame, kuidas see levib. See marsruut edastatakse ruuteritele Router8 ja Router12. Router8-st läheb see marsruut ruuterisse 6, kuid Router5-le seda marsruutimistabelis ei ole. Ka Router12-l ilmub see marsruut tabelisse, kuid Router11-l seda samuti pole. Proovime selle välja mõelda. Mõelgem, milliseid andmeid ja parameetreid Router9 oma naabritele edastab, teatades sellest marsruudist. Allolev pakett saadetakse ruuterist 9 ruuterisse 8.

Kuidas BGP töötab
Marsruuditeave koosneb Path atribuutidest.

Tee atribuudid on jagatud 4 kategooriasse:

  1. Tuntud kohustuslik - Kõik BGP-d kasutavad ruuterid peavad need atribuudid ära tundma. Peab olema kõigis värskendustes.
  2. Tuntud kaalutlusõigus - Kõik BGP-d kasutavad ruuterid peavad need atribuudid ära tundma. Need võivad olla värskendustes olemas, kuid nende olemasolu pole nõutav.
  3. Valikuline transitiivne - kõik BGP-rakendused ei pruugi seda tuvastada. Kui ruuter atribuuti ära ei tunne, märgib see uuenduse osaliseks ja edastab selle oma naabritele, salvestades tundmatu atribuudi.
  4. Valikuline mittetransitiivne - kõik BGP-rakendused ei pruugi seda tuvastada. Kui ruuter atribuuti ära ei tunne, ignoreeritakse atribuuti ja naabritele edastamisel loobutakse.

BGP atribuutide näited:

  • Tuntud kohustuslik:
    • Autonoomse süsteemi tee
    • Järgmine hüpe
    • päritolu

  • Tuntud kaalutlusõigus:
    • Kohalik eelistus
    • Aatomi agregaat
  • Valikuline transitiivne:
    • Agregaator
    • Ühenduste
  • Valikuline mittetransitiivne:
    • Mitme väljumisega diskrimineerija (MED)
    • Algandja ID
    • Klastrite loend

Sel juhul huvitab meid praegu Origin, Next-hop, AS Path. Kuna marsruut edastab Router8 ja Router9 vahel, st ühe AS-i piires, peetakse seda sisemiseks ja pöörame tähelepanu Originile.

Origin atribuut – näitab, kuidas värskenduse marsruut saadi. Võimalikud atribuutide väärtused:

  • 0 – IGP: algse autonoomse süsteemi sees vastu võetud NLRI;
  • 1 – EGP: NLRI-d õpitakse välislüüsi protokolli (EGP) abil. BGP eelkäija, pole kasutatud
  • 2 – Mittetäielik: NLRI õpiti muul viisil

Meie puhul, nagu paketist näha, võrdub see 0-ga. Kui see marsruut edastatakse ruuterile 12, on selle koodi kood 1.

Järgmine, Next-hop. Järgmise hüppe atribuut

  • See on eBGP-ruuteri IP-aadress, mille kaudu kulgeb tee sihtvõrku.
  • Atribuut muutub, kui eesliide saadetakse teisele AS-ile.

iBGP puhul, st ühe AS-i piires, näitab Next-hop see, kes sellest marsruudist teada sai või sellest rääkis. Meie puhul on see 192.168.89.9. Kuid kui see marsruut edastatakse Router8-lt Router6-le, muudab Router8 seda ja asendab selle omaga. Järgmine hüpe on 192.168.68.8. See viib meid kahe reeglini:

  1. Kui ruuter edastab marsruudi oma sisemisele naabrile, ei muuda see parameetrit Next-hop.
  2. Kui ruuter edastab marsruudi oma välisele naabrile, muudab see Next-hopi selle liidese IP-ks, millelt see ruuter edastab.

See viib meid mõistma esimest probleemi – miks ruuter5 ja ruuter11 marsruutimistabelis marsruuti ei kuvata. Vaatame lähemalt. Seega sai Router6 teabe marsruudi 9.9.9.0/24 kohta ja lisas selle edukalt marsruutimistabelisse:

Router6#show ip route bgp
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       a - application route
       + - replicated route, % - next hop override, p - overrides from PfR

Gateway of last resort is not set

      9.0.0.0/24 is subnetted, 1 subnets
B        9.9.9.0 [20/0] via 192.168.68.8, 00:38:25<source>
Теперь Router6 передал маршрут Router5 и первому правилу Next-hop не изменил. То есть, Router5 должен добавить  <b>9.9.9.0 [20/0] via 192.168.68.8</b> , но у него нет маршрута до 192.168.68.8 и поэтому данный маршрут добавлен не будет, хотя информация о данном маршруте будет храниться в таблице BGP:

<source><b>Router5#show ip bgp
BGP table version is 1, local router ID is 5.5.5.5
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,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
 * i 9.9.9.0/24       192.168.68.8             0    100      0 45 i</b>

Sama olukord juhtub ruuter11-ruuter12 vahel. Selle olukorra vältimiseks peate konfigureerima marsruudi Router6 või Router12, kui edastate marsruudi nende sisemistele naabritele, et asendada nende IP-aadress järgmise hüppega. Seda tehakse käsuga:

neighbor 192.168.56.5 next-hop-self

Pärast seda käsku saadab Router6 Update-teate, kus liidese Gi0/0 Router6 IP-ks määratakse marsruutide jaoks Next-hop - 192.168.56.6, misjärel see marsruut juba marsruutimistabelisse kaasatakse.

Läheme kaugemale ja vaatame, kas see marsruut kuvatakse ruuterites Router7 ja Router10. Seda ei ole marsruutimistabelis ja me võime arvata, et probleem on sama, mis esimeses parameetriga Next-hop, kuid kui vaatame käsu show ip bgp väljundit, näeme, et marsruuti ei võetud sinna vastu isegi vale Next-hopiga, mis tähendab, et marsruuti isegi ei edastatud. Ja see viib meid teise reegli olemasoluni:

Sisemistelt naabritelt saadud marsruute ei levitata teistele sisenaabritele.

Kuna Router5 sai marsruudi Router6-lt, ei edastata seda teisele sisemisele naabrile. Edastamise toimumiseks peate funktsiooni konfigureerima Marsruudi helkurvõi konfigureerige täielikult ühendatud naabrussuhted (Full Mesh), st Router5-7 on kõik kõigi naabrid. Sel juhul kasutame Route Reflectorit. Ruuter5-s peate kasutama seda käsku:

neighbor 192.168.57.7 route-reflector-client

Route-Reflector muudab BGP käitumist marsruudi läbimisel sisenaabrile. Kui sisemine naaber on määratud kui marsruudireflektor-klient, siis reklaamitakse nendele klientidele sisemarsruute.

Marsruut ei ilmunud Router7-le? Ärge unustage ka Next-hopi. Pärast neid manipuleerimisi peaks marsruut minema ka Router7-le, kuid seda ei juhtu. See toob meid teise reegli juurde:

Järgmise hüppe reegel töötab ainult väliste marsruutide puhul. Sisemarsruutide puhul järgmise hüppe atribuuti ei asendata.

Ja saame olukorra, kus on vaja luua staatilist marsruutimist või IGP-protokolle kasutav keskkond, et teavitada ruutereid kõigist AS-is olevatest marsruutidest. Registreerime Router6 ja Router7 staatilised marsruudid ja pärast seda saame soovitud marsruudi ruuteri tabelisse. AS 678-s teeme seda veidi teisiti - ruuter192.168.112.0-s registreerime staatilised marsruudid 24/10 ja Router192.168.110.0 puhul 24/12. Järgmisena loome naabrussuhted Router10 ja Router12 vahel. Samuti konfigureerime Router12 saatma oma järgmise hüppe ruuterile 10:

neighbor 192.168.110.10 next-hop-self

Tulemuseks on see, et Router10 saab marsruudi 9.9.9.0/24, seda saab nii Router7 kui ka Router12 kaudu. Vaatame, millise valiku teeb Router10:

Router10#show ip bgp
BGP table version is 3, local router ID is 6.6.6.6
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,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network              Next Hop            Metric LocPrf Weight Path
 *>i 9.9.9.0/24       192.168.112.12           0    100       0      45 i

                               192.168.107.7                                0     123 45 i  

Nagu näeme, tähendab kaks marsruuti ja nool (>), et valitud on marsruut läbi 192.168.112.12.
Vaatame, kuidas marsruudi valimise protsess toimib:

  1. Esimene samm marsruudi vastuvõtmisel on kontrollida selle Next-hopi saadavust. Sellepärast, kui saime marsruudi Router5-s ilma Next-hop-self seadmata, seda marsruuti edasi ei töödeldud.
  2. Järgmisena tuleb parameeter Kaal. See parameeter ei ole tee atribuut (PA) ja seda ei saadeta BGP-sõnumites. See konfigureeritakse igas ruuteris kohapeal ja seda kasutatakse ainult marsruudi valiku manipuleerimiseks ruuteris endas. Vaatame näidet. Vahetult ülal näete, et Router10 on valinud marsruudi 9.9.9.0/24 jaoks Router12 kaudu (192.168.112.12). Wieghti parameetri muutmiseks võite kasutada marsruudikaarti konkreetsete marsruutide määramiseks või määrata naabrile kaalu, kasutades käsku:
     neighbor 192.168.107.7 weight 200       

    Nüüd on kõik selle naabri marsruudid selle kaaluga. Vaatame, kuidas pärast seda manipuleerimist marsruudi valik muutub:

    Router10#show bgp
    *Mar  2 11:58:13.956: %SYS-5-CONFIG_I: Configured from console by console
    BGP table version is 2, local router ID is 6.6.6.6
    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,
    Origin codes: i - IGP, e - EGP, ? - incomplete
    RPKI validation codes: V valid, I invalid, N Not found
    
         Network          Next Hop            Metric LocPrf Weight      Path
     *>  9.9.9.0/24       192.168.107.7                        200      123 45 i
     * i                          192.168.112.12           0          100      0 45 i

    Nagu näete, on nüüd valitud marsruut läbi Router7, kuid see ei mõjuta teisi ruuteriid.

  3. Kolmandal positsioonil on meil kohalik eelistus. See parameeter on tuntud valikuline atribuut, mis tähendab, et selle olemasolu on valikuline. See parameeter kehtib ainult ühes AS-is ja mõjutab tee valikut ainult sisemiste naabrite jaoks. Seetõttu edastatakse see ainult sisemise naabri jaoks mõeldud värskendusteadetes. Seda pole väliste naabrite värskendussõnumites. Seetõttu klassifitseeriti see hästituntud valikuliseks. Proovime seda rakendada ruuteris 5. Ruuter5-s peaks meil olema kaks marsruuti 9.9.9.0/24 jaoks – üks läbi Router6 ja teine ​​läbi Router7.

    Me vaatame:

    Router5#show bgp
    BGP table version is 2, local router ID is 5.5.5.5
    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,
    Origin codes: i - IGP, e - EGP, ? - incomplete
    RPKI validation codes: V valid, I invalid, N Not found
    
         Network          Next Hop            Metric LocPrf Weight Path
     *>i 9.9.9.0/24       192.168.56.6             0    100      0 45 i

    Aga nagu näeme ühte marsruuti läbi Router6. Kus on marsruut läbi Router7? Võib-olla pole seda ka Router7-l? Vaatame:

    Router#show bgp
    BGP table version is 10, local router ID is 7.7.7.7
    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,
    Origin codes: i - IGP, e - EGP, ? - incomplete
    RPKI validation codes: V valid, I invalid, N Not found
    
         Network                Next Hop            Metric LocPrf  Weight    Path
     *>i 9.9.9.0/24       192.168.56.6             0     100           0      45 i
    
                                  192.168.107.10                                  0     678 45 i 

    Kummaline, kõik tundub olevat korras. Miks seda ei edastata ruuterile 5? Asi on selles, et BGP-l on reegel:

    Ruuter edastab ainult neid marsruute, mida ta kasutab.

    Router7 kasutab marsruuti läbi Router5, seega marsruuti läbi Router10 ei edastata. Pöördume tagasi kohalike eelistuste juurde. Seadistame ruuteril 7 kohaliku eelistuse ja vaatame, kuidas Router5 sellele reageerib:

    route-map BGP permit 10
     match ip address 10
     set local-preference 250
    access-list 10 permit any
    router bgp 123
     neighbor 192.168.107.10 route-map BGP in</b>

    Niisiis, koostasime kõiki marsruute sisaldava marsruudikaardi ja käskisime Router7-l muuta kohaliku eelistuse parameetriks 250, kui see on kätte saadud, vaikeväärtus on 100. Vaatame, mis juhtus Router5-ga:

    Router5#show bgp
    BGP table version is 8, local router ID is 5.5.5.5
    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,
    Origin codes: i - IGP, e - EGP, ? - incomplete
    RPKI validation codes: V valid, I invalid, N Not found
    
         Network          Next Hop            Metric LocPrf Weight        Path
     *>i 9.9.9.0/24       192.168.57.7             0          250      0 678 45 i

    Nagu näeme, eelistab Router5 marsruuti läbi Router7. Sama pilt saab olema ka Router6 peal, kuigi tal on tulusam valida marsruut läbi Router8. Samuti lisame, et selle parameetri muutmine nõuab muudatuse jõustumiseks naabruskonna taaskäivitamist. Lugege siin. Oleme kohaliku eelistuse lahendanud. Liigume edasi järgmise parameetri juurde.

  4. Eelista marsruuti järgmise hüppe parameetriga 0.0.0.0, st kohalikke või koondatud marsruute. Nendele marsruutidele määratakse pärast võrgukäsu sisestamist automaatselt parameeter Kaal, mis on võrdne maksimumiga – 32678:
    Router#show bgp
    BGP table version is 2, local router ID is 9.9.9.9
    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,
    Origin codes: i - IGP, e - EGP, ? - incomplete
    RPKI validation codes: V valid, I invalid, N Not found
    
         Network          Next Hop            Metric LocPrf Weight    Path
     *>  9.9.9.0/24       0.0.0.0                  0            32768    i
  5. Lühim tee läbi AS-i. Valitakse lühim parameeter AS_Path. Mida vähem AS-sid marsruut läbib, seda parem see on. Mõelge marsruudile 9.9.9.0/24 ruuteril 10:
    Router10#show bgp
    BGP table version is 2, local router ID is 6.6.6.6
    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,
    Origin codes: i - IGP, e - EGP, ? - incomplete
    RPKI validation codes: V valid, I invalid, N Not found
    
         Network          Next Hop            Metric LocPrf Weight Path
     *   9.9.9.0/24     192.168.107.7                           0           123 45 i
     *>i                     192.168.112.12           0    100       0       45 i

    Nagu näete, valis Router10 marsruudi 192.168.112.12 kaudu, kuna selle marsruudi jaoks sisaldab AS_Path parameeter ainult 45 ja teisel juhul 123 ja 45. Intuitiivselt selge.

  6. Järgmine parameeter on Origin. IGP (BGP abil saadud marsruut) on parem kui EGP (BGP eelkäija abil saadud marsruut, enam ei kasutata) ja EGP on parem kui Mittetäielik? (saadud mõnel muul meetodil, näiteks ümberjaotamise teel).
  7. Järgmine parameeter on MED. Meil oli Wieght, mis töötas ruuteris ainult kohapeal. Seal oli kohalik eelistus, mis töötas ainult ühes autonoomses süsteemis. Nagu võite arvata, on MED parameeter, mis edastatakse autonoomsete süsteemide vahel. Väga hea artikkel selle parameetri kohta.

Rohkem atribuute ei kasutata, kuid kui kahel marsruudil on samad atribuudid, kasutatakse järgmisi reegleid:

  1. Valige tee läbi lähima IGP naabri.
  2. Valige eBGP tee jaoks vanim marsruut.
  3. Valige tee väikseima BGP-ruuteri ID-ga naabri kaudu.
  4. Valige tee madalaima IP-aadressiga naabri kaudu.

Vaatame nüüd BGP konvergentsi küsimust.

Vaatame, mis juhtub, kui Router6 kaotab marsruudi 9.9.9.0/24 läbi Router9. Keelame Router0 liidese Gi1/6, mis saab kohe aru, et BGP seanss Router8-ga on lõpetatud ja naaber kadunud, mis tähendab, et sellelt saadud marsruut ei kehti. Router6 saadab kohe värskendusteateid, kus see näitab väljal tühistatud marsruudid võrgu 9.9.9.0/24. Niipea, kui Router5 sellise teate saab, saadab see selle Router7-le. Kuid kuna Router7-l on marsruut läbi Router10, vastab see kohe värskendusega uue marsruudiga. Kui liidese oleku põhjal ei ole võimalik naabri kukkumist tuvastada, peate ootama, kuni ootetaimer käivitub.

Konföderatsioon.

Kui mäletate, rääkisime sellest, et sageli peate kasutama täielikult ühendatud topoloogiat. Kui ühes AS-is on palju ruutereid, võib see põhjustada suuri probleeme, selle vältimiseks peate kasutama konföderatsioone. Üks AS on jagatud mitmeks alam-AS-ks, mis võimaldab neil töötada ilma täielikult ühendatud topoloogia nõudeta.

Kuidas BGP töötab

Siin on link sellele labuJa siin konfiguratsioon GNS3 jaoks.

Näiteks selle topoloogiaga peaksime kõik AS 2345 ruuterid omavahel ühendama, kuid konföderatsiooni kasutades saame luua naabrussuhteid ainult omavahel otse ühendatud ruuterite vahel. Räägime sellest üksikasjalikult. Kui meil oleks ainult AS 2345, siis laForge saanud marsi alates Picard ütleks seda ruuteritele kuupäev и Worf, kuid nad ei teavitanud sellest ruuterit Purustaja . Samuti ruuteri enda poolt levitatud marsruute laForge, poleks üle kantud Purustaja või Worf- oh ei kuupäev.

Peaksite konfigureerima marsruudi-reflektori või täielikult ühendatud naabrussuhte. Jagades iga ruuteri jaoks ühe AS 2345 neljaks alam-AS-ks (4), saame tulemuseks erineva tööloogika. Kõik on suurepäraselt kirjeldatud siin.

Allikad:

  1. CCIE marsruutimise ja vahetamise v5.0 ametlik sertifikaatide juhend, 2. köide, viies väljaanne, Narbik Kocharians, Terry Vinson.
  2. veebisait xgu.ru
  3. veebisait GNS3Vault.

Allikas: www.habr.com

Lisa kommentaar