w pewnym sensie BGP jest ładne i proste. Na przykład, istnieje tylko jeden BGP: BGP w wersji 4. Wielu specjalistów od sieci zadaje pytanie, czy BGP w wersji 4 zostanie wkrótce zastąpiony przez BGP 5. Jednak nie ma się czym martwić. Dzisiaj nadal Używamy BGP w wersji 4 jako naszego protokołu exterior Gateway Protocol (EGP). Nawet jeśli dzisiejszy BGP4 robi wszystkie rzeczy, których BGP4 sprzed 20 lat nie mógł zrobić, takie jak routing IPv6, multicast i VPN lub używanie społeczności. BGP okazał się być bardzo rozszerzalny, ale nadal jest to BGP – i jeden proces BGP. Ale BGP obsługuje tylko zewnętrzną stronę routingu—istnieje również wewnętrzne routing.

protokoły Interior Gateway
i jest o wiele większy wybór w protokołach Interior Gateway (IGPs). Stary faworyt to RIP, Routing Information Protocol. Nawet ulepszony RIPv2 jest obecnie zbyt prosty dla większości sieci, podobnie jak RIPng (next generation) dla IPv6. W związku z tym firma Cisco stworzyła własny protokół routingu bramy wewnętrznej (IGRP), a następnie ulepszoną wersję o trafnej nazwie Enhanced IGRP (EIGRP). Jednak najczęściej używanym IGP jest OSPF: Otwórz najpierw najkrótszą ścieżkę. OSPF jest” otwartą ” implementacją algorytmu Shortest Path First lub Dijkstra. (Nazwa nie odnosi się do możliwej otwartości najkrótszej ścieżki.) OSPF w wersji 2 jest używany dla IPv4; OSPF w wersji 3 dla IPv6. Sieci, które obsługują obie wersje IP i używają OSPF jako swojego IGP, muszą więc uruchamiać zarówno OSPFv2, jak i OSPFv3.

pod koniec lat 80., kiedy opracowano OSPF, rodzina protokołów sieciowych OSI (Open Systems Interconnect) była nadal przedmiotem sporów, a wiele technologii zostało zapożyczonych/skradzionych przez OSI Z IP i przez IP Z OSI. W rezultacie OSI ma protokół routingu IS-IS dla routingu OSI CLNP, który jest bardzo podobny do OSPF pod wieloma względami (lub odwrotnie). IS-is oznacza Intermediate System to Intermediate System, gdzie „intermediate system” oznacza „router”. IS – IS został później rozszerzony do obsługi najpierw IPv4, a następnie również IPv6 i jest używany głównie w bardzo dużych sieciach IP.

z tym wprowadzeniem z drogi, chcę skupić się na najczęstszym przypadku: sieć z BGP jako EGP i OSPF jako IGP i spojrzeć na to, jak obowiązki routingu są podzielone na oba protokoły i jak oba współdziałają.

redystrybucja
z OSPF jest IGP i BGP jest EGP sugeruje oczywisty podział pracy: OSPF obsługuje routing wewnętrzny, BGP routing do zewnętrznych miejsc docelowych. Jednak to nie takie proste. Tak, OSPF odpowiada za routing wewnętrzny. Trasy te są wyświetlane jako trasy ” O „na wyjściu” Pokaż trasę ip ” na routerze Cisco. Jeśli sieć jest podzielona na wiele obszarów OSPF-nie jest to naprawdę konieczne w dzisiejszych czasach, chyba że masz setki routerów—możesz również zobaczyć międzyobszarowe trasy „o IA”.trasy

O I O IA są tylko blokami adresowymi używanymi na interfejsach routera, które faktycznie uruchamiają OSPF. Nie obejmuje to interfejsów do serwerów, komputerów i innych urządzeń końcowych, a w przypadku dostawców usług internetowych-klientów. Aby te adresy pojawiły się w OSPF, musimy redystrybuować podłączone podsieci i/lub redystrybuować statyczne trasy:

!
router ospf 1
redystrybuuj podłączone podsieci
redystrybuuj statyczne podsieci
!

1 w „routerze ospf 1” jest numerem procesu lub instancji OSPF. Możliwe jest uruchamianie wielu instancji OSPF na tym samym routerze-co oczywiście wymaga starannego planowania, aby wszystko było proste. Jeśli redystrybucja wszystkich połączonych i/lub statycznych tras w OSPF jest większa niż potrzebujesz, możesz dodać „route-map <route-map-name>”, a następnie użyć wskazanej mapy trasy, aby odfiltrować niechciane trasy, aby zapobiec ich redystrybucji.

domyślnie redystrybuowane trasy są tworzone Na Zewnątrz typu 2 i wyświetlane jako „O E2”. Możliwe jest również redystrybucja jako zewnętrzny typ 1 (z „metric-type 1”). Różnica polega na tym, że w przypadku tras O E1 koszt OSPF obejmuje koszt połączeń do trasy zewnętrznej, podczas gdy w przypadku tras o E2 koszt połączeń wewnętrznych jest ignorowany.

iBGP
oczywiście BGP obsługuje trasy do zewnętrznych sieci, które są zdolne do BGP. Jednak byłoby trochę żenujące, gdyby wszystkie routery BGP w sieci mówiły swoim zewnętrznym sąsiadom zupełnie inne rzeczy. Tak więc wszystkie routery BGP w sieci muszą ze sobą rozmawiać, aby opowiedzieć spójną historię sieciom zewnętrznym. Do tego służy wewnętrzny BGP (iBGP). „Regularnym” BGP jest zatem zewnętrzny BGP (eBGP). Kiedy mówię wszystkie routery BGP, naprawdę mam na myśli wszystkie z nich: jeśli Twoja sieć ma 100 routerów BGP, każdy z nich musi utrzymywać sesje iBGP z innymi 99. Chyba, że użyjesz reflektorów, ale to historia na inny dzień.

jeśli jesteś przyzwyczajony do eBGP, iBGP wymaga trochę przyzwyczajenia. W przeciwieństwie do eBGP, iBGP jest po prostu w porządku
pracując nad wieloma chmiel. Jednak dodaje to komplikacji. Rozważ następującą sieć:
interfejsy pętli

Załóżmy, że sesja iBGP z routera A do routera D zostanie ustawiona w kierunku adresu routera D na łączu między B i D. Następnie, gdy łącze między routerami B I D spada, adres D w interfejsie łączącym się z tym łączem spada, a wraz z nim sesja iBGP skonfigurowana w kierunku adresu tego interfejsu. Zamiast konfigurować sesje iBGP w kierunku adresów interfejsu, ustawiamy dla tego interfejsy pętli zwrotnej. W przeciwieństwie do interfejsu pętli zwrotnej na serwerze lub innym hoście, który zawsze używa adresu 127.0.0.1, routery używają „prawdziwych” adresów na swoich interfejsach pętli zwrotnej, co działa tak:

!
interfejs loopback0
adres ip 192.0.2.65 255.255.255.255
!
router bgp 9000
sąsiad 192.0.2.67 remote-as 9000
sąsiad 192.0.2.67 update-source loopback0
!

w przeciwieństwie do innych interfejsów, interfejsy typu loopback mogą mieć długość przedrostka a / 32, więc używają tylko jednego adresu. Zdalny jak dla sąsiada 192.0.2.67 jest taki sam jak lokalny AS (9000), co czyni sesję BGP sesją iBGP. Linia” update-source loopback0 ” zapewnia, że adres źródłowy w wychodzących pakietach BGP jest adresem IP skonfigurowanym na interfejsie loopback0, więc pasuje do adresu, którego szuka zdalny router. Jeśli teraz jedna ścieżka między dwoma routerami iBGP pójdzie w dół, pakiety iBGP mogą zostać przekierowane na inną ścieżkę i nie ma wpływu na BGP. Zwróć uwagę, że aby to zadziałało, adresy interfejsu Pętli zwrotnej2 muszą być obecne w IGP—zazwyczaj połączone trasy będą redystrybuowane, aby tak się stało.
BGP w dużych sieciach eBook
również w przeciwieństwie do eBGP, iBGP nie aktualizuje ścieżki AS ani następnego adresu hop. Oznacza to, że następny adres hop w aktualizacjach iBGP nadal wskazuje na adres IP routera w sąsiedniej sieci, z którego trasa została poznana. Adres ten będzie znajdować się w podsieci punkt-punkt między routerem eBGP a routerem BGP sąsiedniej sieci. Twój router eBGP będzie znał ten adres, ponieważ jest on obecny na bezpośrednio podłączonym interfejsie, ale bez dalszych działań reszta routerów nie będzie znała tego adresu, więc następny adres hop dla tras iBGP nie zostanie rozwiązany i trasy iBGP nie mogą być używane. Ponownie, redystrybucja połączonych sieci do OSPF (lub wybranego przez Ciebie IGP) rozwiązuje ten problem. Alternatywnie możesz skonfigurować „next-hop-self” na swoich sesjach iBGP, a router zastąpi Następny adres hop w aktualizacjach iBGP własnym adresem.

redystrybucja BGP
możliwe jest również redystrybucja tras do BGP. Na przykład, w dużej sieci ISP możesz redystrybuować połączone i statyczne trasy w BGP, a nie w IS-IS, ponieważ to zachowa is-IS lean I mean. Dodatkowe trasy BGP są stosunkowo nieistotne, a miłą korzyścią jest to, że jeśli zostaną przekierowane wewnętrznie, nie spowoduje to żadnych aktualizacji BGP. Zamiast tego, kolejne adresy hop są rozwiązywane inaczej po zmianie IS-IS, co każdy router może zrobić niezależnie. Oczywiście wymaga to dobrych filtrów, które upewniają się, że duża liczba małych prefiksów używanych przez klientów nie wycieka do globalnej tabeli BGP. Dobrym sposobem na osiągnięcie takiego filtrowania jest dodanie społeczności do tras, które mogą być propagowane w eBGP, a następnie filtrowanie na podstawie tej społeczności.

w dawnych czasach nie było rzadkością redystrybucja wszystkich tras BGP do OSPF. Z pół miliona przedrostków w BGP, praktyka ta stała się mniej powszechna. Jeśli naprawdę chcesz żyć na krawędzi, możesz redystrybuować BGP do OSPF, a OSPF do BGP. Następnie, jeśli Twoje filtry nie są idealne, trasy mogą być w obie strony między BGP i OSPF, w wyniku czego ścieżka AS zostanie usunięta. Więc teraz reklamujesz przez BGP całą masę tras, które nie są Twoje, ale z jednym skokiem jako ścieżką, więc wielu twoich sąsiadów zacznie wysyłać Ci ruch na te trasy.

odległość administracyjna
wreszcie, co się dzieje, gdy ta sama trasa jest obecna zarówno w BGP, jak i OSPF? Oczywiście trudno jest porównać preferencje lokalne BGP do metryki OSPF. Tak więc router (Cisco) przypisuje „odległość administracyjną” do każdego protokołu routingu. Wygrywa trasa o najniższym dystansie. OSPF ma dystans 110. Trasy BGP mają odległość 20 (lepszą niż OSPF i inne IGP), gdy uczą się ponad eBGP i 200 (gorszą niż OSPF i inne IGP), gdy uczą się ponad iBGP. Trasy statyczne mają domyślnie odległość 1, ale można to zmienić, dodając wartość odległości na końcu polecenia ” ip route …”. Wartość odległości 250 powstrzyma ich od routingu protokołów. Odległość administracyjna jest pierwszą liczbą między nawiasami kwadratowymi w wyjściu „Pokaż trasę ip”.