Bagaimana BGP berfungsi

Hari ini kita akan melihat protokol BGP. Kami tidak akan bercakap untuk masa yang lama tentang mengapa ia berlaku dan mengapa ia digunakan sebagai satu-satunya protokol. Terdapat banyak maklumat mengenai subjek ini, sebagai contoh di sini.

Jadi apa itu BGP? BGP ialah protokol penghalaan dinamik dan merupakan satu-satunya protokol EGP (External Gateway Protocol). Protokol ini digunakan untuk membina penghalaan di Internet. Mari kita lihat bagaimana kejiranan dibina antara dua penghala BGP.

Bagaimana BGP berfungsi
Pertimbangkan kejiranan antara Router1 dan Router3. Mari konfigurasikannya menggunakan arahan berikut:

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

Kejiranan dalam sistem autonomi tunggal ialah AS 10. Selepas memasukkan maklumat pada penghala, seperti Router1, penghala itu cuba menyediakan hubungan bersebelahan dengan Router3. Keadaan awal apabila tiada apa-apa yang berlaku dipanggil Melahu. Sebaik sahaja bgp dikonfigurasikan pada Router1, ia akan mula mendengar port TCP 179 - ia akan masuk ke dalam keadaan Hubungi, dan apabila ia cuba membuka sesi dengan Router3, ia akan masuk ke dalam keadaan aktif.

Selepas sesi ditubuhkan antara Router1 dan Router3, Open messages ditukar. Apabila mesej ini dihantar oleh Router1, keadaan ini akan dipanggil Buka Dihantar. Dan apabila ia menerima mesej Buka daripada Router3, ia akan masuk ke dalam keadaan Buka Sahkan. Mari kita lihat lebih dekat pada mesej Buka:

Bagaimana BGP berfungsi
Mesej ini menyampaikan maklumat tentang protokol BGP itu sendiri, yang digunakan oleh penghala. Dengan bertukar-tukar mesej Terbuka, Router1 dan Router3 menyampaikan maklumat tentang tetapan mereka kepada satu sama lain. Parameter berikut diluluskan:

  • versi: ini termasuk versi BGP yang digunakan oleh penghala. Versi semasa BGP ialah versi 4 yang diterangkan dalam RFC 4271. Dua penghala BGP akan cuba merundingkan versi yang serasi, apabila terdapat ketidakpadanan maka tidak akan ada sesi BGP.
  • AS saya: ini termasuk nombor AS penghala BGP, penghala perlu bersetuju dengan nombor AS dan ia juga menentukan sama ada mereka akan menjalankan iBGP atau eBGP.
  • Tahan Masa: jika BGP tidak menerima sebarang keepalive atau mengemas kini mesej dari pihak lain untuk tempoh masa penahanan maka ia akan mengisytiharkan pihak lain 'mati' dan ia akan meruntuhkan sesi BGP. Secara lalai masa penahanan ditetapkan kepada 180 saat pada penghala Cisco IOS, mesej keepalive dihantar setiap 60 saat. Kedua-dua penghala perlu bersetuju dengan masa penangguhan atau tidak akan ada sesi BGP.
  • Pengecam BGP: ini ialah ID penghala BGP tempatan yang dipilih seperti yang dilakukan oleh OSPF:
    • Gunakan router-ID yang telah dikonfigurasikan secara manual dengan arahan bgp router-id.
    • Gunakan alamat IP tertinggi pada antara muka gelung balik.
    • Gunakan alamat IP tertinggi pada antara muka fizikal.
  • Parameter Pilihan: di sini anda akan menemui beberapa keupayaan pilihan penghala BGP. Medan ini telah ditambahkan supaya ciri baharu boleh ditambahkan pada BGP tanpa perlu membuat versi baharu. Perkara yang mungkin anda temui di sini ialah:
    • sokongan untuk MP-BGP (Multi Protocol BGP).
    • sokongan untuk Route Refresh.
    • sokongan untuk nombor AS 4 oktet.

Untuk mewujudkan kejiranan, syarat berikut mesti dipenuhi:

  • Nombor versi. Versi semasa ialah 4.
  • Nombor AS mesti sepadan dengan apa yang telah anda konfigurasikan jiran 192.168.13.3 jauh-sebagai 10.
  • ID penghala mestilah berbeza daripada jiran.

Jika mana-mana parameter tidak memenuhi syarat ini, penghala akan menghantar Pemberitahuan mesej yang menunjukkan ralat. Selepas menghantar dan menerima mesej Terbuka, hubungan kejiranan memasuki negeri ini DITUBUHKAN. Selepas ini, penghala boleh bertukar maklumat tentang laluan dan melakukan ini menggunakan Update mesej. Ini ialah mesej Kemas kini yang dihantar oleh Router1 ke Router3:

Bagaimana BGP berfungsi

Di sini anda boleh melihat rangkaian yang dilaporkan oleh atribut Router1 dan Path, yang serupa dengan metrik. Kami akan bercakap tentang atribut Path dengan lebih terperinci. Mesej Keepalive juga dihantar dalam sesi TCP. Ia dihantar, secara lalai, setiap 60 saat. Ini ialah Pemasa Keepalive. Jika mesej Keepalive tidak diterima semasa Pemasa Tahan, ini bermakna kehilangan komunikasi dengan jiran. Secara lalai, ia adalah sama dengan 180 saat.

Tanda berguna:

Bagaimana BGP berfungsi

Nampaknya kita telah mengetahui bagaimana penghala menghantar maklumat antara satu sama lain, sekarang mari kita cuba memahami logik protokol BGP.

Untuk mengiklankan laluan ke jadual BGP, seperti dalam protokol IGP, arahan rangkaian digunakan, tetapi logik pengendalian adalah berbeza. Jika dalam IGP, selepas menentukan laluan dalam arahan rangkaian, IGP melihat antara muka yang tergolong dalam subnet ini dan memasukkannya dalam jadualnya, maka arahan rangkaian dalam BGP melihat jadual penghalaan dan mencari Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ sepadan dengan laluan dalam arahan rangkaian. Jika itu ditemui, laluan ini akan muncul dalam jadual BGP.

Cari laluan dalam jadual penghalaan IP semasa penghala yang betul-betul sepadan dengan parameter arahan rangkaian; jika laluan IP wujud, letakkan NLRI yang setara ke dalam jadual BGP tempatan.

Sekarang mari kita tingkatkan BGP kepada semua yang selebihnya dan lihat cara laluan dipilih dalam satu AS. Selepas penghala BGP menerima laluan daripada jirannya, ia mula memilih laluan yang optimum. Di sini anda perlu memahami jenis jiran yang boleh ada - dalaman dan luaran. Adakah penghala memahami dengan konfigurasi sama ada jiran yang dikonfigurasikan adalah dalaman atau luaran? Jika dalam pasukan:

neighbor 192.168.13.3 remote-as 10 

parameter remote-as menentukan AS, yang dikonfigurasikan pada penghala itu sendiri dalam arahan bgp penghala 10. Laluan yang datang dari AS dalaman dianggap dalaman, dan laluan dari AS luaran dianggap luaran. Dan untuk setiap satu, logik yang berbeza untuk menerima dan menghantar berfungsi. Pertimbangkan topologi ini:

Bagaimana BGP berfungsi

Setiap penghala mempunyai antara muka gelung balik yang dikonfigurasikan dengan ip: xxxx 255.255.255.0 - dengan x ialah nombor penghala. Pada Router9 kami mempunyai antara muka loopback dengan alamat - 9.9.9.9 255.255.255.0. Kami akan mengumumkannya melalui BGP dan melihat bagaimana ia merebak. Laluan ini akan dihantar ke Router8 dan Router12. Dari Router8, laluan ini akan pergi ke Router6, tetapi ke Router5 ia tidak akan berada dalam jadual penghalaan. Juga pada Router12 laluan ini akan muncul dalam jadual, tetapi pada Router11 ia juga tidak akan berada di sana. Mari cuba fikirkan perkara ini. Mari kita pertimbangkan data dan parameter yang dihantar oleh Router9 kepada jirannya, melaporkan laluan ini. Paket di bawah akan dihantar dari Router9 ke Router8.

Bagaimana BGP berfungsi
Maklumat laluan terdiri daripada atribut Laluan.

Atribut laluan dibahagikan kepada 4 kategori:

  1. Terkenal wajib - Semua penghala yang menjalankan BGP mesti mengenali atribut ini. Mesti ada dalam semua kemas kini.
  2. Budi bicara yang terkenal - Semua penghala yang menjalankan BGP mesti mengenali atribut ini. Mereka mungkin hadir dalam kemas kini, tetapi kehadiran mereka tidak diperlukan.
  3. Transitif pilihan - mungkin tidak diiktiraf oleh semua pelaksanaan BGP. Jika penghala tidak mengenali atribut, ia menandakan kemas kini sebagai separa dan memajukannya kepada jirannya, menyimpan atribut yang tidak dikenali.
  4. Bukan transitif pilihan - mungkin tidak diiktiraf oleh semua pelaksanaan BGP. Jika penghala tidak mengenali atribut, maka atribut itu diabaikan dan dibuang apabila diserahkan kepada jiran.

Contoh atribut BGP:

  • Terkenal wajib:
    • Laluan sistem autonomi
    • Lompat seterusnya
    • asal

  • Budi bicara yang terkenal:
    • Keutamaan tempatan
    • Agregat atom
  • Transitif pilihan:
    • Agregator
    • Communities
  • Bukan transitif pilihan:
    • Diskriminator berbilang keluar (MED)
    • ID Pemula
    • Senarai kluster

Dalam kes ini, buat masa ini kami akan berminat dengan Origin, Next-hop, AS Path. Memandangkan laluan menghantar antara Router8 dan Router9, iaitu, dalam satu AS, ia dianggap dalaman dan kami akan memberi perhatian kepada Origin.

Atribut asal - menunjukkan cara laluan dalam kemas kini diperoleh. Nilai atribut yang mungkin:

  • 0 - IGP: NLRI diterima dalam sistem autonomi asal;
  • 1 - EGP: NLRI dipelajari menggunakan Exterior Gateway Protocol (EGP). Pendahulu kepada BGP, tidak digunakan
  • 2 - Tidak Lengkap: NLRI dipelajari dengan cara lain

Dalam kes kami, seperti yang dapat dilihat dari paket, ia adalah sama dengan 0. Apabila laluan ini dihantar ke Router12, kod ini akan mempunyai kod 1.

Seterusnya, Next-hop. Atribut hop seterusnya

  • Ini ialah alamat IP penghala eBGP yang melaluinya laluan ke rangkaian destinasi.
  • Atribut berubah apabila awalan dihantar ke AS yang lain.

Dalam kes iBGP, iaitu, dalam satu AS, Next-hop akan ditunjukkan oleh orang yang mengetahui atau memberitahu tentang laluan ini. Dalam kes kami, ia akan menjadi 192.168.89.9. Tetapi apabila laluan ini dihantar dari Router8 ke Router6, Router8 akan mengubahnya dan menggantikannya dengan laluannya sendiri. Lompatan seterusnya ialah 192.168.68.8. Ini membawa kita kepada dua peraturan:

  1. Jika penghala memajukan laluan ke jiran dalamannya, ia tidak mengubah parameter Next-hop.
  2. Jika penghala menghantar laluan ke jiran luarnya, ia menukar Next-hop ke ip antara muka yang dihantar oleh penghala ini.

Ini membawa kita memahami masalah pertama - Mengapa tiada laluan dalam jadual penghalaan pada Router5 dan Router11. Mari kita lihat lebih dekat. Jadi, Router6 menerima maklumat tentang laluan 9.9.9.0/24 dan berjaya menambahkannya pada jadual penghalaan:

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>

Keadaan yang sama akan berlaku antara Router11-Router12. Untuk mengelakkan situasi ini, anda perlu mengkonfigurasi Router6 atau Router12, apabila menghantar laluan ke jiran dalaman mereka, untuk menggantikan alamat IP mereka sebagai Next-hop. Ini dilakukan menggunakan arahan:

neighbor 192.168.56.5 next-hop-self

Selepas arahan ini, Router6 akan menghantar mesej Kemas Kini, di mana ip antara muka Gi0/0 Router6 akan ditentukan sebagai Next-hop untuk laluan - 192.168.56.6, selepas itu laluan ini akan dimasukkan ke dalam jadual penghalaan.

Mari pergi lebih jauh dan lihat sama ada laluan ini muncul pada Router7 dan Router10. Ia tidak akan berada dalam jadual penghalaan dan kita mungkin berfikir bahawa masalahnya adalah sama seperti yang pertama dengan parameter Next-hop, tetapi jika kita melihat pada output arahan show ip bgp, kita akan melihat bahawa laluan tidak diterima di sana walaupun dengan Next-hop yang salah, yang bermaksud bahawa laluan itu tidak dihantar pun. Dan ini akan membawa kita kepada kewujudan peraturan lain:

Laluan yang diterima daripada jiran dalaman tidak disebarkan ke jiran dalaman yang lain.

Memandangkan Router5 menerima laluan daripada Router6, ia tidak akan dihantar ke jiran dalamannya yang lain. Untuk pemindahan berlaku, anda perlu mengkonfigurasi fungsi Pemantul Laluan, atau konfigurasikan perhubungan kejiranan yang disambungkan sepenuhnya (Full Mesh), iaitu, Router5-7 semua orang akan menjadi jiran kepada semua orang. Dalam kes ini kita akan menggunakan Route Reflector. Pada Router5 anda perlu menggunakan arahan ini:

neighbor 192.168.57.7 route-reflector-client

Route-Reflector mengubah tingkah laku BGP apabila melalui laluan ke jiran dalaman. Jika jiran dalaman dinyatakan sebagai laluan-pemantul-pelanggan, maka laluan dalaman akan diiklankan kepada pelanggan ini.

Laluan tidak muncul pada Router7? Jangan lupa tentang Next-hop juga. Selepas manipulasi ini, laluan juga harus pergi ke Router7, tetapi ini tidak berlaku. Ini membawa kita kepada peraturan lain:

Peraturan lompatan seterusnya hanya berfungsi untuk laluan Luaran. Untuk laluan dalaman, atribut next-hop tidak diganti.

Dan kami mendapat situasi di mana perlu untuk mencipta persekitaran menggunakan penghalaan statik atau protokol IGP untuk memaklumkan penghala tentang semua laluan dalam AS. Mari daftarkan laluan statik pada Router6 dan Router7 dan selepas itu kita akan mendapat laluan yang dikehendaki dalam jadual penghala. Dalam AS 678, kami akan melakukannya sedikit berbeza - kami akan mendaftarkan laluan statik untuk 192.168.112.0/24 pada Router10 dan 192.168.110.0/24 pada Router12. Seterusnya, kami akan mewujudkan hubungan kejiranan antara Router10 dan Router12. Kami juga akan mengkonfigurasi Router12 untuk menghantar hop seterusnya ke Router10:

neighbor 192.168.110.10 next-hop-self

Hasilnya ialah Router10 akan menerima laluan 9.9.9.0/24, ia akan diterima daripada Router7 dan Router12. Mari lihat pilihan yang dibuat oleh 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  

Seperti yang kita lihat, dua laluan dan anak panah (>) bermakna laluan melalui 192.168.112.12 dipilih.
Mari lihat bagaimana proses pemilihan laluan berfungsi:

  1. Langkah pertama apabila menerima laluan adalah untuk menyemak ketersediaan Next-hopnya. Itulah sebabnya, apabila kami menerima laluan pada Router5 tanpa menetapkan Next-hop-self, laluan ini tidak diproses lagi.
  2. Seterusnya datang parameter Berat. Parameter ini bukan Atribut Laluan (PA) dan tidak dihantar dalam mesej BGP. Ia dikonfigurasikan secara setempat pada setiap penghala dan hanya digunakan untuk memanipulasi pemilihan laluan pada penghala itu sendiri. Mari kita lihat contoh. Di atas anda boleh melihat bahawa Router10 telah memilih laluan untuk 9.9.9.0/24 melalui Router12 (192.168.112.12). Untuk menukar parameter Wieght, anda boleh menggunakan peta laluan untuk menetapkan laluan tertentu, atau memberikan pemberat kepada jirannya menggunakan arahan:
     neighbor 192.168.107.7 weight 200       

    Sekarang semua laluan dari jiran ini akan mempunyai berat ini. Mari lihat bagaimana pilihan laluan berubah selepas manipulasi ini:

    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

    Seperti yang anda lihat, laluan melalui Router7 kini dipilih, tetapi ini tidak akan memberi kesan kepada penghala lain.

  3. Di kedudukan ketiga kami mempunyai Pilihan Tempatan. Parameter ini ialah atribut budi bicara yang terkenal, yang bermaksud kehadirannya adalah pilihan. Parameter ini hanya sah dalam satu AS dan mempengaruhi pilihan laluan hanya untuk jiran dalaman. Itulah sebabnya ia dihantar hanya dalam mesej Kemas kini yang ditujukan untuk jiran dalaman. Ia tidak terdapat dalam mesej Kemas kini untuk jiran luar. Oleh itu, ia diklasifikasikan sebagai budi bicara yang terkenal. Mari cuba gunakannya pada Router5. Pada Router5 kita sepatutnya mempunyai dua laluan untuk 9.9.9.0/24 - satu melalui Router6 dan yang kedua melalui Router7.

    Kami melihat:

    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

    Tetapi seperti yang kita lihat satu laluan melalui Router6. Di manakah laluan melalui Router7? Mungkin Router7 juga tidak memilikinya? Mari lihat:

    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 

    Pelik, semuanya kelihatan baik-baik saja. Mengapa ia tidak dihantar ke Router5? Masalahnya ialah BGP mempunyai peraturan:

    Penghala hanya menghantar laluan yang digunakan.

    Router7 menggunakan laluan melalui Router5, jadi laluan melalui Router10 tidak akan dihantar. Mari kembali ke Pilihan Tempatan. Mari kita tetapkan Keutamaan Tempatan pada Router7 dan lihat bagaimana Router5 bertindak balas terhadap perkara ini:

    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>

    Jadi, kami mencipta peta laluan yang mengandungi semua laluan dan memberitahu Router7 untuk menukar parameter Keutamaan Tempatan kepada 250 apabila diterima, lalainya ialah 100. Mari lihat apa yang berlaku pada Router5:

    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

    Seperti yang kita lihat sekarang Router5 lebih suka laluan melalui Router7. Gambar yang sama akan berada di Router6, walaupun lebih menguntungkan baginya untuk memilih laluan melalui Router8. Kami juga menambah bahawa menukar parameter ini memerlukan permulaan semula kejiranan untuk perubahan itu berkuat kuasa. Baca di sini. Kami telah menyelesaikan Pilihan Tempatan. Mari kita beralih ke parameter seterusnya.

  4. Pilih laluan dengan parameter Next-hop 0.0.0.0, iaitu laluan tempatan atau agregat. Laluan ini secara automatik diberikan parameter Berat sama dengan maksimumβ€”32678β€”selepas memasukkan arahan rangkaian:
    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. Laluan terpendek melalui AS. Parameter AS_Path terpendek dipilih. Semakin sedikit AS laluan yang dilalui, lebih baik ia. Pertimbangkan laluan ke 9.9.9.0/24 pada Router10:
    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

    Seperti yang anda lihat, Router10 memilih laluan melalui 192.168.112.12 kerana untuk laluan ini parameter AS_Path hanya mengandungi 45, dan dalam kes lain 123 dan 45. Jelas secara intuitif.

  6. Parameter seterusnya ialah Origin. IGP (laluan yang diperoleh menggunakan BGP) adalah lebih baik daripada EGP (laluan yang diperoleh menggunakan pendahulu BGP, tidak lagi digunakan), dan EGP lebih baik daripada Tidak Lengkap? (diperolehi dengan beberapa kaedah lain, contohnya melalui pengagihan semula).
  7. Parameter seterusnya ialah MED. Kami mempunyai Wieght yang hanya berfungsi secara tempatan pada penghala. Terdapat Pilihan Tempatan, yang hanya berfungsi dalam satu sistem autonomi. Seperti yang anda fikirkan, MED ialah parameter yang akan dihantar antara sistem autonomi. Sangat bagus artikel mengenai parameter ini.

Tiada lagi atribut akan digunakan, tetapi jika dua laluan mempunyai atribut yang sama, maka peraturan berikut digunakan:

  1. Pilih laluan melalui jiran IGP terdekat.
  2. Pilih laluan tertua untuk laluan eBGP.
  3. Pilih laluan melalui jiran dengan ID penghala BGP terkecil.
  4. Pilih laluan melalui jiran dengan alamat IP terendah.

Sekarang mari kita lihat isu penumpuan BGP.

Mari lihat apa yang berlaku jika Router6 kehilangan laluan 9.9.9.0/24 melalui Router9. Mari lumpuhkan antara muka Gi0/1 Router6, yang akan segera memahami bahawa sesi BGP dengan Router8 telah ditamatkan dan jiran telah hilang, yang bermaksud bahawa laluan yang diterima daripadanya tidak sah. Router6 segera menghantar mesej Kemas kini, di mana ia menunjukkan rangkaian 9.9.9.0/24 dalam medan Laluan Ditarik. Sebaik sahaja Router5 menerima mesej sedemikian, ia akan menghantarnya ke Router7. Tetapi kerana Router7 mempunyai laluan melalui Router10, ia akan segera bertindak balas dengan Kemas Kini dengan laluan baharu. Jika tidak mungkin untuk mengesan kejatuhan jiran berdasarkan keadaan antara muka, maka anda perlu menunggu Pemasa Tahan untuk menembak.

Konfederasi.

Jika anda masih ingat, kami bercakap tentang hakikat bahawa anda sering perlu menggunakan topologi yang bersambung sepenuhnya. Dengan sejumlah besar penghala dalam satu AS ini boleh menyebabkan masalah besar, untuk mengelakkan ini anda perlu menggunakan konfederasi. Satu AS dibahagikan kepada beberapa sub-AS, yang membolehkan mereka beroperasi tanpa memerlukan topologi yang bersambung sepenuhnya.

Bagaimana BGP berfungsi

Berikut adalah pautan untuk ini labuDan di sini konfigurasi untuk GNS3.

Sebagai contoh, dengan topologi ini kita perlu menyambungkan semua penghala dalam AS 2345 antara satu sama lain, tetapi menggunakan Gabungan, kita boleh mewujudkan hubungan bersebelahan hanya antara penghala yang disambungkan secara terus antara satu sama lain. Mari kita bercakap tentang ini secara terperinci. Jika kita hanya mempunyai AS 2345, maka laForge setelah menerima perarakan daripada Picard akan memberitahunya kepada penghala Tarikh ΠΈ Worf, tetapi mereka tidak akan memberitahu penghala mengenainya Crusher . Juga laluan yang diedarkan oleh penghala itu sendiri laForge, tidak akan dipindahkan Crusher atau Worf-Oh tidak Tarikh.

Anda perlu mengkonfigurasi Route-Reflector atau hubungan kejiranan yang bersambung sepenuhnya. Dengan membahagikan satu AS 2345 kepada 4 sub-AS (2,3,4,5) untuk setiap penghala, kami berakhir dengan logik operasi yang berbeza. Segala-galanya digambarkan dengan sempurna di sini.

Sumber:

  1. Panduan Sijil Rasmi Penghalaan dan Penukaran CCIE v5.0, Jilid 2, Edisi Kelima, Narbik Kocharians, Terry Vinson.
  2. Website xgu.ru
  3. Website GNS3Vault.

Sumber: www.habr.com

Tambah komen