BGP хэрхэн ажилладаг

Өнөөдөр бид BGP протоколыг үзэх болно. Энэ нь яагаад ийм байдаг, яагаад үүнийг цорын ганц протокол болгон ашигладаг талаар бид удаан ярихгүй. Жишээлбэл, энэ сэдвээр маш их мэдээлэл байдаг энд.

Тэгэхээр BGP гэж юу вэ? BGP нь динамик чиглүүлэлтийн протокол бөгөөд цорын ганц EGP (External Gateway Protocol) протокол юм. Энэ протоколыг интернетэд чиглүүлэлт хийхэд ашигладаг. Хоёр BGP чиглүүлэгчийн хооронд хөрш хэрхэн баригдаж байгааг харцгаая.

BGP хэрхэн ажилладаг
Router1 болон Router3-ын хоорондох хөршийг авч үзье. Дараах тушаалуудыг ашиглан тэдгээрийг тохируулцгаая.

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

Нэг бие даасан систем доторх хөрш нь AS 10. Router1 гэх мэт чиглүүлэгч дээр мэдээлэл оруулсны дараа тэр чиглүүлэгч нь Router3-тай зэргэлдээх харилцаа тогтоохыг оролддог. Юу ч болоогүй анхны төлөвийг дуудна Сул зогсолтын. Router1 дээр bgp-г тохируулмагц TCP порт 179-г сонсож эхлэх бөгөөд энэ нь төлөвт шилжих болно. холбоно, мөн энэ нь Router3-тай сесс нээхийг оролдох үед муж руу орно Идэвхтэй.

Router1 болон Router3 хооронд сесс байгуулагдсаны дараа Нээлттэй мессежүүдийг солилцдог. Энэ мессежийг Router1 илгээх үед энэ төлөвийг дуудах болно Илгээсэн. Мөн Router3-аас Нээлттэй мессежийг хүлээн авах үед энэ нь муж руу шилжих болно Баталгаажуулахыг нээнэ үү. Нээлттэй мессежийг нарийвчлан авч үзье:

BGP хэрхэн ажилладаг
Энэ мессеж нь чиглүүлэгчийн ашигладаг BGP протоколын тухай мэдээллийг дамжуулдаг. Нээлттэй мессежийг солилцсоноор Router1 болон Router3 нь тохиргооныхоо мэдээллийг хооронд нь дамжуулдаг. Дараах параметрүүдийг дамжуулсан.

  • хувилбар: үүнд чиглүүлэгчийн ашиглаж буй BGP хувилбар багтана. BGP-ийн одоогийн хувилбар нь RFC 4-д тайлбарласан 4271-р хувилбар юм. Хоёр BGP чиглүүлэгч тохирох хувилбарын талаар тохиролцохыг оролдох ба таарахгүй байх үед BGP сесс байхгүй болно.
  • Миний AS: үүнд BGP чиглүүлэгчийн AS дугаар багтсан бөгөөд чиглүүлэгчид AS дугаар(ууд) дээр тохиролцох ёстой бөгөөд энэ нь мөн тэд iBGP эсвэл eBGP ажиллаж байгаа эсэхийг тодорхойлдог.
  • Цаг барих: хэрвээ BGP нь хүлээгдэж буй хугацааны туршид нөгөө талаас ямар ч хадгалах эсвэл шинэчлэх мессеж хүлээн авахгүй бол нөгөө талдаа "үхсэн" гэж зарлаж, BGP сессийг таслах болно. Анхдагчаар Cisco IOS чиглүүлэгчид саатуулах хугацааг 180 секунд гэж тохируулсан бөгөөд хадгалалтын мессежийг 60 секунд тутамд илгээдэг. Хоёр чиглүүлэгч хоёулаа хүлээх хугацааг тохиролцох ёстой, эс тэгвээс BGP сесс байхгүй болно.
  • BGP танигч: энэ нь OSPF-ийн адил сонгогдсон орон нутгийн BGP чиглүүлэгчийн ID юм:
    • bgp router-id тушаалаар гараар тохируулсан чиглүүлэгч ID-г ашиглана уу.
    • Давталтын интерфэйс дээр хамгийн өндөр IP хаягийг ашиглана уу.
    • Физик интерфэйс дээр хамгийн өндөр IP хаягийг ашиглана уу.
  • Нэмэлт параметрүүд: эндээс та BGP чиглүүлэгчийн нэмэлт боломжуудыг олох болно. Шинэ хувилбар үүсгэх шаардлагагүйгээр BGP-д шинэ боломжуудыг нэмэхийн тулд энэ талбарыг нэмсэн. Эндээс та олж болох зүйлс:
    • MP-BGP (Multi Protocol BGP)-ийн дэмжлэг.
    • Маршрутыг шинэчлэх дэмжлэг.
    • 4 наймтын AS тоонуудын дэмжлэг.

Ойролцоох газар байгуулахын тулд дараахь нөхцлийг хангасан байх ёстой.

  • Хувилбарын дугаар. Одоогийн хувилбар нь 4.
  • AS дугаар нь таны тохируулсантай тохирч байх ёстой хөрш 192.168.13.3 алсаас-10.
  • Чиглүүлэгчийн ID нь хөршөөсөө өөр байх ёстой.

Хэрэв параметрүүдийн аль нэг нь эдгээр нөхцлийг хангахгүй бол чиглүүлэгч илгээх болно мэдэгдэл алдааг харуулсан мессеж. Нээлттэй мессежийг илгээж, хүлээн авсны дараа хөршийн харилцаа мужид ордог Үүсгэн байгуулагдсан. Үүний дараа чиглүүлэгчид маршрутын талаар мэдээлэл солилцож, үүнийг ашиглан хийх боломжтой шинэчлэх зурвасууд. Энэ нь Router1-ээс Router3 руу илгээсэн Шинэчлэлийн мессеж юм:

BGP хэрхэн ажилладаг

Эндээс та хэмжигдэхүүнтэй төстэй Router1 болон Path шинж чанаруудын мэдээлсэн сүлжээг харж болно. Бид Path шинж чанаруудын талаар илүү дэлгэрэнгүй ярих болно. Хамгаалах мессежийг TCP сесс дотор илгээдэг. Тэдгээрийг анхдагчаар 60 секунд тутамд дамжуулдаг. Энэ бол Keepalive Timer юм. Хэрэв хүлээгдэж буй цаг хэмжигч үед Keepalive мессеж хүлээн аваагүй бол энэ нь хөрштэйгээ холбоо тасрах болно гэсэн үг юм. Анхдагчаар энэ нь 180 секундтэй тэнцүү байна.

Ашигтай тэмдэг:

BGP хэрхэн ажилладаг

Бид чиглүүлэгчид бие биедээ мэдээлэл дамжуулж байгааг олж мэдсэн бололтой, одоо BGP протоколын логикийг ойлгохыг хичээцгээе.

IGP протоколуудын нэгэн адил BGP хүснэгт рүү чиглүүлэх маршрутыг сурталчлахын тулд сүлжээний командыг ашигладаг боловч үйлдлийн логик нь өөр байдаг. Хэрэв IGP-д сүлжээний командын маршрутыг зааж өгсний дараа IGP нь энэ дэд сүлжээнд аль интерфэйсүүд хамаарахыг харж, тэдгээрийг хүснэгтэд оруулсан бол BGP дахь сүлжээний команд нь чиглүүлэлтийн хүснэгтийг харж, хайдаг. нарийн сүлжээний команд дахь маршруттай таарч байна. Хэрэв ийм зүйл олдвол эдгээр маршрутууд BGP хүснэгтэд харагдах болно.

Сүлжээний командын параметртэй яг таарч байгаа чиглүүлэгчийн одоогийн IP чиглүүлэлтийн хүснэгтээс маршрут хайх; хэрэв IP зам байгаа бол түүнтэй адилтгах NLRI-г орон нутгийн BGP хүснэгтэд оруулна уу.

Одоо үлдсэн бүх хүмүүст BGP-ийг өсгөж, нэг AS дотор маршрут хэрхэн сонгогдсоныг харцгаая. BGP чиглүүлэгч нь хөршөөсөө маршрут хүлээн авсны дараа хамгийн оновчтой замыг сонгож эхэлдэг. Энд та ямар төрлийн хөршүүд байж болохыг ойлгох хэрэгтэй - дотоод болон гадаад. Чиглүүлэгч нь тохируулсан хөрш нь дотоод эсвэл гадаад эсэхийг тохиргоогоор ойлгодог уу? Хэрэв багт байвал:

neighbor 192.168.13.3 remote-as 10 

remote-as параметр нь чиглүүлэгчийн өөрөө bgp 10 командаар тохируулагдсан AS-г зааж өгдөг.Дотоод AS-аас ирж буй маршрутуудыг дотоод, гадаад AS-аас ирсэн чиглүүлэлтүүдийг гадаад гэж үздэг. Мөн тус бүрийн хувьд хүлээн авах, илгээх өөр өөр логик байдаг. Энэ топологийг авч үзье:

BGP хэрхэн ажилладаг

Чиглүүлэгч бүр ip-ээр тохируулсан давталтын интерфэйстэй: xxxx 255.255.255.0 - энд x нь чиглүүлэгчийн дугаар юм. Router9 дээр бид 9.9.9.9 255.255.255.0 хаягтай давталтын интерфэйстэй. Бид үүнийг BGP-ээр дамжуулан зарлаж, хэрхэн тархаж байгааг харах болно. Энэ замыг Router8 болон Router12 руу дамжуулах болно. Router8-аас энэ чиглүүлэлт нь Router6 руу очих боловч Router5 руу чиглүүлэлтийн хүснэгтэд байхгүй. Мөн Router12 дээр энэ маршрут хүснэгтэд харагдах боловч Router11 дээр бас байхгүй. Үүнийг ойлгохыг хичээцгээе. Router9 энэ чиглэлийг мэдээлэхдээ хөршүүддээ ямар өгөгдөл, параметрүүдийг дамжуулж байгааг авч үзье. Доорх багцыг Router9-ээс Router8 руу илгээнэ.

BGP хэрхэн ажилладаг
Маршрутын мэдээлэл нь Path шинж чанаруудаас бүрдэнэ.

Замын шинж чанаруудыг 4 ангилалд хуваадаг:

  1. Заавал сайн мэддэг - BGP ажиллаж байгаа бүх чиглүүлэгчид эдгээр шинж чанаруудыг таних ёстой. Бүх шинэчлэлтүүдэд байх ёстой.
  2. Олны танил сонголт - BGP ажиллаж байгаа бүх чиглүүлэгчид эдгээр шинж чанаруудыг таних ёстой. Тэдгээр нь шинэчлэлтүүдэд байж болох ч заавал байх шаардлагагүй.
  3. Нэмэлт шилжилт - бүх BGP хэрэгжүүлэлтүүд танигдахгүй байж болно. Хэрэв чиглүүлэгч шинж чанарыг танихгүй бол шинэчлэлтийг хэсэгчилсэн гэж тэмдэглэж, танигдаагүй атрибутыг хадгалдаг хөршүүд рүүгээ дамжуулдаг.
  4. Нэмэлт шилжилтийн бус - бүх BGP хэрэгжүүлэлтүүд танигдахгүй байж болно. Хэрэв чиглүүлэгч нь атрибутыг танихгүй бол хөршүүд рүү дамжуулах үед атрибутыг үл тоомсорлож, устгадаг.

BGP шинж чанаруудын жишээ:

  • Заавал сайн мэддэг:
    • Автономит системийн зам
    • Дараагийн хоп
    • Гарал үүсэл

  • Олны танил сонголт:
    • Орон нутгийн сонголт
    • Атомын агрегат
  • Нэмэлт шилжилт:
    • Дүүргэгч
    • Олон нийт
  • Нэмэлт шилжилтийн бус:
    • Олон гарцтай ялгагч (MED)
    • Үүсгэн байгуулагчийн ID
    • Кластерын жагсаалт

Энэ тохиолдолд бид одоохондоо Origin, Next-hop, AS Path-ийг сонирхох болно. Маршрут нь Router8 ба Router9 хооронд, өөрөөр хэлбэл нэг AS дотор дамждаг тул үүнийг дотоод гэж үздэг бөгөөд бид Origin-д анхаарлаа хандуулах болно.

Гарал үүслийн шинж чанар - шинэчлэлт дэх маршрутыг хэрхэн олж авсныг заана. Боломжит шинж чанарын утгууд:

  • 0 - IGP: анхны автономит системд хүлээн авсан NLRI;
  • 1 - EGP: NLRI-г Exterior Gateway Protocol (EGP) ашиглан сурдаг. BGP-ийн өмнөх хувилбар, ашиглагдаагүй
  • 2 - Бүрэн бус: NLRI-г өөр аргаар сурсан

Манай тохиолдолд пакетаас харахад 0-тэй тэнцүү байна.Энэ маршрутыг Router12 руу дамжуулахад энэ код 1 гэсэн кодтой болно.

Дараа нь, Next-hop. Next-hop шинж чанар

  • Энэ бол зорьсон сүлжээнд хүрэх зам дамждаг eBGP чиглүүлэгчийн IP хаяг юм.
  • Угтварыг өөр AS руу илгээх үед шинж чанар өөрчлөгддөг.

iBGP-ийн хувьд, өөрөөр хэлбэл нэг AS дотор, Next-hop-ыг энэ маршрутын талаар сурсан эсвэл хэлсэн хүн зааж өгнө. Манай тохиолдолд 192.168.89.9 болно. Гэхдээ энэ маршрутыг Router8-аас Router6 руу дамжуулах үед Router8 үүнийг өөрчилнө, өөрийнхөөрөө солино. Дараагийн хоп нь 192.168.68.8 болно. Энэ нь биднийг хоёр дүрэмд хүргэдэг:

  1. Хэрэв чиглүүлэгч нь дотоод хөрш рүүгээ чиглүүлбэл Next-hop параметрийг өөрчлөхгүй.
  2. Хэрэв чиглүүлэгч гадаад хөрш рүүгээ чиглүүлбэл Next-hop-ыг энэ чиглүүлэгчийн дамжуулж буй интерфейсийн ip болгон өөрчилдөг.

Энэ нь биднийг эхний асуудлыг ойлгоход хүргэдэг - Router5 болон Router11 дээрх чиглүүлэлтийн хүснэгтэд яагаад маршрут байхгүй байна вэ? Илүү дэлгэрэнгүй харцгаая. Тиймээс Router6 нь 9.9.9.0/24 маршрутын талаарх мэдээллийг хүлээн авч, чиглүүлэлтийн хүснэгтэд амжилттай нэмсэн:

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>

Үүнтэй ижил нөхцөл байдал Router11-Router12 хооронд тохиолдох болно. Ийм нөхцөл байдлаас зайлсхийхийн тулд та Router6 эсвэл Router12-г дотоод хөрш рүүгээ чиглүүлэхдээ IP хаягийг нь Next-hop гэж солих хэрэгтэй. Үүнийг дараах тушаалыг ашиглан гүйцэтгэнэ.

neighbor 192.168.56.5 next-hop-self

Энэ командын дараа Router6 нь Update мессеж илгээх бөгөөд Gi0/0 Router6 интерфэйсийн IP-г чиглүүлэлтийн хувьд Next-hop - 192.168.56.6 гэж зааж өгөх бөгөөд үүний дараа энэ маршрутыг чиглүүлэлтийн хүснэгтэд аль хэдийн оруулсан болно.

Цаашид энэ маршрут Router7 болон Router10 дээр гарч ирэх эсэхийг харцгаая. Энэ нь чиглүүлэлтийн хүснэгтэд байхгүй бөгөөд бид Next-hop параметртэй эхнийхтэй ижил асуудал байна гэж бодож болох ч show ip bgp командын гаралтыг харвал бид Буруу Next-hop-той байсан ч маршрутыг хүлээж аваагүй бөгөөд энэ нь маршрутыг дамжуулаагүй гэсэн үг юм. Энэ нь биднийг өөр дүрэм бий болгоход хүргэнэ:

Дотоод хөршүүдээс хүлээн авсан маршрутыг бусад дотоод хөршүүдэд түгээдэггүй.

Router5 нь Router6-аас маршрутыг хүлээн авсан тул бусад дотоод хөрш рүүгээ дамжуулахгүй. Дамжуулахын тулд та функцийг тохируулах хэрэгтэй Маршрутын тусгал, эсвэл бүрэн холбогдсон хөршийн харилцааг (Full Mesh) тохируулах, өөрөөр хэлбэл Router5-7 хүн бүр хүн бүрийн хөрш байх болно. Энэ тохиолдолд бид Route Reflector ашиглах болно. Router5 дээр та дараах тушаалыг ашиглах хэрэгтэй.

neighbor 192.168.57.7 route-reflector-client

Route-Reflector нь маршрутыг дотоод хөрш рүү дамжуулах үед BGP-ийн үйлдлийг өөрчилдөг. Хэрэв дотоод хөрш гэж заасан бол route-reflector-client, дараа нь эдгээр үйлчлүүлэгчдэд дотоод маршрутыг сурталчлах болно.

Маршрут Router7 дээр харагдахгүй байна уу? Next-hop-ийн талаар бүү мартаарай. Эдгээр заль мэхийг хийсний дараа маршрут нь Router7 руу явах ёстой боловч ийм зүйл болохгүй. Энэ нь биднийг өөр дүрэм рүү авчирдаг:

Next-hop дүрэм нь зөвхөн Гадаад чиглүүлэлтүүдэд ажиллана. Дотоод чиглүүлэлтийн хувьд дараагийн хоп шинж чанарыг сольдоггүй.

Мөн бид AS доторх бүх чиглүүлэлтийн талаар чиглүүлэгчдэд мэдээлэхийн тулд статик чиглүүлэлт эсвэл IGP протоколуудыг ашиглан орчинг бүрдүүлэх шаардлагатай болдог. Router6 болон Router7 дээр статик чиглүүлэлтүүдийг бүртгэе, үүний дараа бид чиглүүлэгчийн хүснэгтэд хүссэн маршрутаа авах болно. AS 678-д бид үүнийг арай өөрөөр хийх болно - бид Router192.168.112.0 дээр 24/10, Router192.168.110.0 дээр 24/12 дээр статик маршрутуудыг бүртгэх болно. Дараа нь бид Router10 болон Router12 хоёрын хоорондох хөршийн харилцааг бий болгоно. Мөн бид Router12-г Router10 руу дараагийн хопдоо илгээхээр тохируулах болно.

neighbor 192.168.110.10 next-hop-self

Үүний үр дүнд Router10 нь 9.9.9.0/24 чиглүүлэгчийг хүлээн авах бөгөөд энэ нь Router7 болон Router12-ээс хоёуланд нь хүлээн авах болно. 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  

Бидний харж байгаагаар хоёр маршрут ба сум (>) нь 192.168.112.12-ээр дамжих замыг сонгосон гэсэн үг юм.
Маршрут сонгох үйл явц хэрхэн явагддагийг харцгаая:

  1. Маршрутыг хүлээн авах эхний алхам бол түүний Next-hop бэлэн эсэхийг шалгах явдал юм. Тийм ч учраас бид Next-hop-self тохиргоог хийлгүйгээр Router5 дээр чиглүүлэлт хүлээн авах үед энэ замыг цаашид боловсруулаагүй.
  2. Дараа нь Жин параметр гарч ирнэ. Энэ параметр нь Path Attribute (PA) биш бөгөөд BGP мессежүүдэд илгээгддэггүй. Энэ нь чиглүүлэгч бүр дээр локал байдлаар тохируулагдсан бөгөөд зөвхөн чиглүүлэгч дээрх чиглүүлэлтийн сонголтыг удирдахад ашиглагддаг. Нэг жишээ авч үзье. Яг дээрээс нь Router10 нь Router9.9.9.0 (24)-ээр дамжуулан 12/192.168.112.12-ийн маршрутыг сонгосон болохыг харж болно. Wieght параметрийг өөрчлөхийн тулд та маршрутын зураглалыг ашиглан тодорхой чиглэлүүдийг тохируулах эсвэл хөршдөө жинг тушаалыг ашиглан оноож болно.
     neighbor 192.168.107.7 weight 200       

    Одоо энэ хөршийн бүх маршрут ийм жинтэй байх болно. Энэхүү заль мэхийн дараа маршрутын сонголт хэрхэн өөрчлөгдөхийг харцгаая.

    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

    Таны харж байгаагаар Router7-ээр дамжих замыг сонгосон боловч энэ нь бусад чиглүүлэгчид ямар ч нөлөө үзүүлэхгүй.

  3. Гуравдугаар байранд бид Орон нутгийн давуу эрхтэй. Энэ параметр нь сайн мэддэг сонголтын шинж чанар бөгөөд энэ нь заавал байх ёстой гэсэн үг юм. Энэ параметр нь зөвхөн нэг AS дотор хүчинтэй бөгөөд зөвхөн дотоод хөршүүдийн замыг сонгоход нөлөөлдөг. Тийм ч учраас энэ нь зөвхөн дотоод хөршид зориулагдсан шинэчлэлтийн мессежээр дамждаг. Энэ нь гадаад хөршүүдэд зориулсан шинэчлэлтийн мессежүүдэд байхгүй. Тиймээс үүнийг алдартай үзэмжээр ангилсан. Үүнийг Router5 дээр ашиглахыг хичээцгээе. Router5 дээр бид 9.9.9.0/24-ийн хоёр маршруттай байх ёстой - нэг нь Router6-аар, хоёр дахь нь Router7-ээр дамждаг.

    Бид харах:

    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

    Гэхдээ бид Router6-аар дамжих нэг замыг харж байна. Router7-ээр дамжин өнгөрөх зам хаана байдаг вэ? Магадгүй Router7-д бас байхгүй байх? Харцгаая:

    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 

    Хачирхалтай нь, бүх зүйл сайхан байх шиг байна. Яагаад үүнийг Router5 руу дамжуулахгүй байна вэ? Гол нь BGP нь дараах дүрэмтэй байдаг.

    Чиглүүлэгч нь зөвхөн ашигладаг маршрутаа дамжуулдаг.

    Router7 нь Router5-ээр дамжих замыг ашигладаг тул Router10-ээр дамжих замыг дамжуулахгүй. Орон нутгийн сонголт руу буцъя. Router7 дээр Local Preference-ийг тохируулж, Router5 үүнд хэрхэн хариу үйлдэл үзүүлэхийг харцгаая:

    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>

    Тиймээс бид бүх маршрутыг агуулсан маршрутын газрын зургийг бүтээж, Router7-д Local Preference параметрийг хүлээн авахдаа 250 болгож өөрчлөхийг хэлсэн бол анхдагч нь 100 байна. 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

    Бидний харж байгаагаар Router5 нь Router7-ээр дамжих замыг илүүд үздэг. Үүнтэй ижил зураг Router6 дээр байх болно, гэхдээ түүнд Router8-ээр дамжуулан маршрут сонгох нь илүү ашигтай байдаг. Мөн бид энэ параметрийг өөрчлөхөд өөрчлөлт хүчин төгөлдөр болохын тулд хөршөө дахин эхлүүлэх шаардлагатайг нэмж хэлэв. Унших энд. Бид Local Preference-ийг эрэмбэлсэн. Дараагийн параметр рүү шилжье.

  4. Next-hop параметр 0.0.0.0, өөрөөр хэлбэл орон нутгийн эсвэл нэгтгэсэн маршрутыг илүүд үзээрэй. Эдгээр маршрутуудад сүлжээний командыг оруулсны дараа хамгийн ихдээ-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. AS-аар дамжин өнгөрөх хамгийн богино зам. Хамгийн богино AS_Path параметрийг сонгосон. Маршрут цөөн байх тусам илүү сайн байдаг. Router9.9.9.0 дээрх 24/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

    Таны харж байгаагаар Router10 нь 192.168.112.12-ээр дамжуулан замыг сонгосон учир нь энэ маршрутын хувьд AS_Path параметр нь зөвхөн 45, өөр тохиолдолд 123 ба 45-ыг агуулдаг. Зөн совингоор ойлгомжтой.

  6. Дараагийн параметр нь Origin юм. IGP (BGP ашиглан олж авсан маршрут) нь EGP (BGP-ийн өмнөх хувилбарыг ашиглан олж авсан маршрут, одоо ашиглагдахгүй), EGP нь Бүрэн бусаас илүү сайн уу? (өөр аргаар олж авсан, жишээ нь дахин хуваарилах замаар).
  7. Дараагийн параметр нь MED юм. Бидэнд зөвхөн чиглүүлэгч дээр ажилладаг Wieght байсан. Зөвхөн нэг бие даасан системд ажилладаг Local Preference байсан. Таны таамаглаж байгаачлан ЭЗХЯ нь бие даасан системүүдийн хооронд дамжих параметр юм. Маш сайн нийтлэл Энэ параметрийн талаар.

Өөр шинж чанаруудыг ашиглахгүй, гэхдээ хоёр чиглүүлэлт ижил шинж чанартай бол дараах дүрмийг ашиглана.

  1. Хамгийн ойрын IGP хөршөөр дамжин өнгөрөх замыг сонгоно уу.
  2. eBGP замын хамгийн эртний замыг сонгоно уу.
  3. Хамгийн бага BGP чиглүүлэгч ID-тай хөршөөр дамжин өнгөрөх замыг сонгоно уу.
  4. Хамгийн бага IP хаягтай хөршөөр дамжин өнгөрөх замыг сонгоно уу.

Одоо BGP convergence-ийн асуудлыг авч үзье.

Хэрэв Router6 Router9.9.9.0-ээр дамжуулан 24/9 чиглүүлэлтийг алдсан тохиолдолд юу болохыг харцгаая. Router0-ийн Gi1/6 интерфэйсийг идэвхгүй болгоцгооё, энэ нь Router8-тэй BGP сессийг зогсоож, хөрш алга болсныг шууд ойлгох бөгөөд энэ нь түүнээс хүлээн авсан маршрут хүчингүй гэсэн үг юм. Router6 нь нэн даруй Шинэчлэх мессежийг илгээдэг бөгөөд энэ нь "Татагдсан маршрут" талбарт сүлжээ 9.9.9.0/24-ийг заадаг. Router5 ийм мессежийг хүлээн авмагц Router7 руу илгээнэ. Гэхдээ Router7 нь Router10-ээр дамждаг маршруттай тул тэр даруй шинэ маршрутын шинэчлэлтээр хариу өгөх болно. Интерфэйсийн төлөв байдалд үндэслэн хөршийн уналтыг илрүүлэх боломжгүй бол "Hold Timer" асаахыг хүлээх хэрэгтэй болно.

Холбоо.

Хэрэв та санаж байгаа бол бид ихэвчлэн бүрэн холбогдсон топологийг ашиглах хэрэгтэй болдог тухай ярьсан. Нэг AS-д олон тооны чиглүүлэгч байгаа бол энэ нь том асуудал үүсгэж болзошгүй тул үүнээс зайлсхийхийн тулд та конфедерацийг ашиглах хэрэгтэй. Нэг AS нь хэд хэдэн дэд AS-д хуваагддаг бөгөөд энэ нь тэдгээрийг бүрэн холбогдсон топологийн шаардлагагүйгээр ажиллах боломжийг олгодог.

BGP хэрхэн ажилладаг

Энэ тухай холбоосыг энд оруулав лабуболон энд GNS3-ийн тохиргоо.

Жишээлбэл, энэ топологийн тусламжтайгаар бид AS 2345-ийн бүх чиглүүлэгчдийг хооронд нь холбох хэрэгтэй болно, гэхдээ Конфедерацийг ашигласнаар бид зөвхөн өөр хоорондоо шууд холбогдсон чиглүүлэгчдийн хооронд зэргэлдээх харилцааг бий болгож чадна. Энэ талаар дэлгэрэнгүй ярилцъя. Хэрэв бид зөвхөн AS 2345-тай байсан бол laForge -аас марш хүлээн авлаа Пикард үүнийг чиглүүлэгчдэд хэлэх болно Өгөгдөл и Ворф, гэхдээ тэд энэ талаар чиглүүлэгчид хэлээгүй Бутлуур . Мөн чиглүүлэгч өөрөө тараасан маршрутууд laForge, шилжүүлэхгүй байх байсан Бутлуур үгүй Ворф-өө үгүй ​​ээ Өгөгдөл.

Та маршрутын тусгал эсвэл бүрэн холбогдсон хөршийн харилцааг тохируулах хэрэгтэй болно. Нэг AS 2345-ыг чиглүүлэгч бүрийн хувьд 4 дэд AS (2,3,4,5) болгон хувааснаар бид өөр үйлдлийн логиктой болно. Бүх зүйлийг төгс дүрсэлсэн энд.

Эх сурвалж:

  1. CCIE Routing and Switching v5.0 албан ёсны гэрчилгээний гарын авлага, 2-р боть, Тав дахь хэвлэл, Нарбик Кочарианс, Терри Винсон.
  2. вэб сайт xgu.ru
  3. вэб сайт GNS3Vault.

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх