05_-_bgp.pdf
TRANSCRIPT
-
1
Using Multiple Routing Protocols on a Network
BGP koncepti, terminologija, funkcionisanje
-
2
IGP vs. EGP
Interni protokol rutiranja (IGP) Protokol koji funkcionie unutar autonomnog sistema (AS).
RIP, OSPF i EIGRP
Eksterni protokol rutiranja (EGP) Protokol koji funkcionie izmeu razliitih AS-ova.
BGP
-
3
Autonomni sistemi (AS)
AS predstavlja grupu rutera koji dijele polisu rutiranja i operiu u zajednikom administrativnom domenu.
AS tipino pripada jednoj organizaciji.
Jedan ili vie IGP-ova moe da se koristi unutar AS-a.
U oba sluaja AS se posmatra kao jedan entitet.
Ako se AS povezuje na Internet pomou BGP-a, onda mu mora biti dodijeljen jedinstven AS broj od strane
organizacije IANA.
-
4
IANA
IANA je zaduena za dodjelu AS brojeva preko svojih pet registara.
Registri predstavljaju neprofitne korporacije koje su zaduene za administraciju i registraciju IP adresnog prostora i AS brojeva u
odreenom geografskom podruju.
-
5
Registri
Naziv Geografsko pokrivanje Link
AfriNIC Afrika www.afrinic.net
APNIC
(Asia Pacific Network
Information Centre)
Azijsko Pacifika regija www.apnic.net
ARIN
(American Registry for
Internet Numbers)
Kanada, SAD i nekoliko
ostrva u Karipskom moru i
Atlantskom okeanu.
www.arin.net
LACNIC
(Latin America and Caribbean
Internet Addresses Registry)
Centralna i Juna Amerika, ako i dijelovi Kariba.
www.lacnic.net
RIPE
(Rseaux IP Europens)
Evropa, Bliski Istok i
centralna Azija www.ripe.net
-
6
AS brojevi
AS brojevi mogu biti izmeu 1 i 65,535.
Registri su zadueni za AS brojeve izmeu 1 i 64,512.
Brojevi od 64,512 - 65,535 su rezervisani za privatnu upotrebu (slino IP privatnim adresama).
IANA radi na osnovu polise po kojoj organizacije koje se povezuju na jednog provajdera koriste AS broj iz privatnog opsega.
Napomena:
Trenutni AS opseg e uskoro biti potroen.
Zbog toga je organizacija IETF izdala RFC dokumente 4893 i 5398 po kojima se broj bita za numerisanje AS-a poveava sa 16 na 32, ime se broj moguih AS-ova poveava sa 65,536 na 4,294,967,296.
-
7
BGP osnove
Internet predstavlja kolekciju AS-ova.
BGP omoguava rutiranje izmeu njih.
BGP predstavlja path vector protokol.
BGP je jedini protokol rutiranja koji koristi TCP.
OSPF i EIGRP poruke se direktno enkapsuliraju u IP paket.
RIP koristi usluge UDP protokola na transportnom sloju.
-
8
BGP osnove
BGP verzije 4 (BGP-4) je zadnja verzija protokola BGP.
Definisana je u RFC dokumentu 4271.
Podrava supermree, CIDR i VLSM .
BGP4 i CIDR spreavaju da Internet tabela rutiranja postane prevelika.
Bez CIDR-a, tabela rutiranja na Internetu bi imala preko 2,000,000 unosa.
Sa CIDR-om, Internet ruteri imaju preko 400,000 unosa.
http://bgp.potaroo.net/
-
9
BGP pregled
Kada dva rutera uspostave TCP vezu radi razmjene BGP informacija, oni se nazivaju susjedi ili peers.
Svaki ruter koji ima konfigurisan BGP protokol popularno se naziva BGP speaker.
-
10
BGP pregled
Kada BGP susjedi uspostave vezu, oni meusobno razmjene sve BGP rute.
Nakon inicijalne razmjene, alju se samo inkrementalna auriranja kada doe do promjene u topologiji.
-
11
BGP se koristi izmeu AS-ova
BGP omoguava rutiranje izmeu domena koji garantuje razmjenu informacija izmeu sistema bez postojanja petlji rutiranja.
-
12
Poreenje BGP-a sa internim protokolima
BGP radi razliito od internih protokola rutiranja poto odluku o putanji ne donosi na osnovu metrike najbolje
putanje.
Umjesto toga, BGP predstavlja protokol rutiranja zasnovan na polisama koje dozvoljavaju AS-u da vri kontrolu saobraaja koritenjem BGP atributa.
Ruteri koji rade sa BGP-om razmjenjuju mrene atribute koji ukljuuju punu putanju izraenu pomou liste AS brojeva koje paket treba da proe da bi stigao do cilja.
-
13
Poreenje BGP-a sa internim protokolima
Protokol Interni ili
eksterni Tip
Potrebna
hijerarhija? Metrika
RIP Interni Distance
vector Ne Hop count
OSPF Interni Link state Da Cost
IS-IS Interni Link state Da Metric
EIGRP Interni
Advanced
distance
vector
Ne BW, delay
BGP Eksterni Path vector Ne Path vectors
(atributi)
-
14
Povezivanje mrea na ISP
Moderne IP mree se moraju povezati na globalnu mreu.
Zadaci koji se moraju ispuniti prilikom prikljuivanja na ISP su:
Javni IP adresni prostor
Tip linka i propusni opseg
Redundantnost veze
Protokol rutiranja
-
15
Koritenje statikih ruta u svrhu povezivanja
Statike rute predstavljaju najjednostavniji nain da se uspostavi rutiranje prema ISP-u.
Tipino klijent ima jednu konekciju prema ISP-u i koristi default rutu prema ISP-u, dok istovremeno ISP ima konfigurisanu statiku rutu prema klijentovoj mrei.
PE(config)# ip route 10.0.0.0 255.0.0.0 serial 0/0/1
PE(config)# ip route 172.16.0.0 255.255.0.0 serial 0/0/1
PE(config)# ip route 172.17.0.0 255.255.0.0 serial 0/0/1
Company A
Internet
PE R1 S0/0/1
10.0.0.0 172.16.0.0 172.17.0.0
ISP
S0/0/0
R1(config)# router eigrp 110
R1(config-router)# network 10.0.0.0
R1(config-router)# exit
R1(config)# ip default-network 0.0.0.0
R1(config)# ip route 0.0.0.0 0.0.0.0 serial 0/0/0
-
16
Koritenje BGP-a
BGP se moe iskoristiti za dinamiko razmjenjivanje informacija o rutiranju.
BGP se takoe moe konfigurisati da reaguje na promjene u topologiji i dalje od linka prema ISP-u.
Company A AS 65010
Internet
PE R1 S0/0/1
ISP AS 65020
S0/0/0
-
17
Redundantne konekcije
Redundantnost se moe realizovati pomou redundantnih linkova, redundantnih ureaja i koritenjem redundantnih komponenata unutar rutera.
Konekcija prema ISP-u se takoe moe nainiti redundantnom.
Kada se klijent povezuje na jedan ISP, konekcija se naziva single-homed ili dual-homed.
Kada se klijent povezuje na vie ISP-ova, konekcija se naziva multihomed ili dual-multihomed.
-
18
Redundantne konekcije
Dual-multihomed Dual-homed
Multihomed Single-homed
Povezivanje na vie ISP-ova Povezivanje na jedan ISP
-
19
Povezivanje na jedan ISP: Single-Homed Slika prikazuje dvije mogunosti:
Opcija 1: Statika ruta + default ruta.
Opcija 2: Kada se koristi BGP, klijent dinamiki oglaava svoje javne mree, a ISP propagira default rutu prema klijentu.
Company A AS 65010
Internet
PE R1 S0/0/1
ISP AS 65020
S0/0/0
Static Route(s) Default Route
BGP
Option 1:
Option 2:
-
20
Povezivanje na jedan ISP: Dual-Homed
Slika prikazuje dvije mogunosti :
Opcija 1: Oba linka su povezana na jedan klijentski ruter.
Opcija 2: Radi poveanja elastinosti topologije, dva linka mogu da budu povezana na razliite klijentske rutere.
Company A
Internet
ISP Option 1:
PE R1
Company A
Internet
ISP Option 2:
PE R1
R2
-
21
Povezivanje na vie ISP-ova: Multihomed
Mora biti omogueno reagovanje na dinamike promjene pa se tipino koristi BGP.
Prednosti ovakve topologije je nezavisnost od pada jednog ISP-a, kao i mogui load balancing prema razliitim odreditima.
Company A
Internet
ISP 1
PE
R1
R2 ISP 2
PE
-
22
Povezivanje na vie ISP-ova: Dual-Multihomed
Ovakva topologija ukljuuje sve prednosti koje donosi multihomed opcija, uz poboljanu elastinost.
Company A
Internet
ISP 1
PE
R1
R2 ISP 2
PE
-
23
Koritenje BGP protokola u praksi
Kada je BGP konfigurisan izmeu rutera u razliitim AS-ovima, naziva se Eksterni BGP (EBGP).
Kada je BGP konfigurisan izmeu rutera u istom AS-u, naziva se Interni BGP (IBGP).
EBGP
EBGP
IBGP
IBGP
IBGP
-
24
Eksterni BGP
EBGP susjedi su u razliitim AS-ovima.
EBGP susjedi treba da budu direktno povezani.
-
25
EBGP susjedstva zahtjevi
Definisanje susjeda:
TCP sesija (three-way handshake) mora biti uspostavljena prije razmjene BGP informacija.
Dostupnost:
EBGP susjedi su uglavnom direktno povezani.
Razliiti AS brojevi:
EBGP susjedi moraju imati razliite AS brojeve.
-
26
Interni BGP
IBGP susjedi pripadaju istom AS-u.
IBGP susjedi ne moraju da budu direktno povezani.
-
27
IBGP susjedstva zahtjevi
Definisanje susjeda:
TCP sesija (three-way handshake) mora biti uspostavljena prije razmjene BGP informacija.
Dostupnost:
IBGP susjedi moraju biti dostupni jedan drugom, uglavnom uz pomo internog protokola rutiranja.
Loopback IP adrese se tipino koriste radi identifikovanja IBGP susjeda.
Isti AS broj:
IBGP susjedi moraju da imaju konfigurisan isti AS broj.
-
28
IBGP u tranzitnom AS-u
Tranzitni AS je AS koji rutira saobraaj iz jednog eksternog AS-a u drugi eksterni AS.
U primjeru sa slike, AS 65102 predstavlja ISP mreu. Samo dva ivina rutera (B i E) imaju konfigurisan BGP i imaju
uspostavljeno IBGP susjedstvo koritenjem protokola OSPF.
Iako EBGP rute mogu da se redistribuiraju uz pomo OSPF-a, potencijalno veliki broj BGP ruta moe da preoptereti OSPF pa se takvo rjeenje ne preporuuje.
-
29
IBGP u tranzitnom AS-u
Bolje rjeenje bi bilo da postoji potpuno povezanu BGP mreu.
BGP je konfigurisan na svim internim ruterima i svi ruteri imaju meusobno uspostavljenu IBGP sesiju.
IBGP ruteri imaju potpuno znanje o eksternim rutama.
-
30
IBGP u netranzitnom AS-u
Netranzitni AS je AS koji ne rutira saobraaj iz jednog eksternog AS-a prema drugom eksternom AS-u.
Netranzitne AS mree su tipino klijentske mree.
Svi ruteri u netranzitnom AS-u jo uvijek moraju imati potpuno znanje o eksternim rutama.
Radi izbjegavanja petlji rutiranja unutar AS-a, BGP specifikuje da se rute nauene preko IBGP protokola nikad ne propagiraju drugim IBGP vorovima.
Pretpostavlja se da je IBGP susjed koji alje BGP informacije potpuno povezan sa svim drugim IBGP vorovima.
-
31
BGP u praksi primjer
Ruteri u AS 65500 ue rute od ISP-A i ISP-B preko EBGP-a i
takoe imaju konfigurisan IBGP.
Ako konekcija prema jednom od ISP-ova padne, saobraaj e biti upuen prema drugom ISP-u.
Neeljena situacija bi se mogla desiti ako je posmatrani AS
konfigurisan kao tranzitni AS.
Na primjer, AS 65500 ui o mrei 172.18.0.0/16 preko ISP-A.
Ako ruter B oglaava tu rutu prema ISP-B, onda ISP-B moe da odlui da je koristi.
Ovakva neeljena situacija moe da se izbjegne paljivom BGP konfiguracijom.
-
32
Tri multihoming opcije
1. Svaki ISP prosljeuje samo default rutu prema AS-u.
2. Svaki ISP prosljeuje samo default rutu i neke specifine rute prema AS-u.
3. Svaki ISP prosljeuje sve rute prema AS-u.
-
33
Default rute od svih provajdera
-
34
Default rute i parcijalne informacije
-
35
Sve rute od svih provajdera
-
36
BGP Path Vector karakteristike
Interni protokoli rutiranja oglaavaju listu mrea i metriku do svake od njih.
Za razliku od njih, BGP ruteri razmjenjuju informacije o dostupnosti mrea, koje se nazivaju vektori putanje (eng. path vectors), a koji se sastoje od atributa putanje (eng.
path attributes).
-
37
BGP Path Vector karakteristike
Path vector informacije ukljuuju:
Listu pune putanje BGP AS brojeva (hop by hop) potrebnih da se preu da bi se dolo do odredine mree.
Preostali atributi ukljuujui IP adresu da bi se stiglo do sljedeeg AS-a (atribut next-hop) i kako su mree na kraju putanje predstavljene BGP-u (atribut origin code).
-
38
Kada koristiti BGP?
AS ima vie konekcija prema drugim AS-ovima.
AS dozvoljava paketima da prou kroz AS da bi stigli do drugih AS-ovima (npr. ISP).
Mora da se vri manipulisanje polisom rutiranja i selekcijom rute za saobraaj koji ulazi i izlazi iz AS-a.
-
39
Kada ne koristiti BGP?
Jedna konekcija prema Internetu ili drugom AS-u.
Nedostatak memorijske ili procesorske moi na ruterima za procesiranje konstantnih BGP informacija.
Administrator ima limitirano razumijevanje filtriranja ruta i procesa selekcije BGP putanje.
U ovim sluajevima, treba da se koriste statike ili default rute.
-
40
BGP sinhronizacija
Pravilo o BGP sinhronizaciji glasi:
BGP ruter ne treba da koristi, ili oglaava eksternom susjedu, rutu koju je nauio od protokola IBGP, osim ako je ta ruta lokalna ili nauena od strane internog protokola rutiranja.
Ako je sinhronizacija omoguena, ruter koji je ui od IBGP susjeda eka dok interni protokol rutiranja ne propagira rutu kroz AS i onda je oglaava eksternim susjedima.
Sinhronizacija je podrazumijevano onemoguena, pa BGP moe koristiti i oglaavati eksternim BGP susjedima rute koje su nauene od strane IBGP susjeda, a nisu prisutne u lokalnoj tabeli rutiranja.
BGP sinhronizacija je onemoguena od Cisco IOS Software Release 12.2(8)T.
-
41
BGP tabela
BGP odrava svoju vlastitu tabelu o BGP informacijama primljenih od BGP susjeda i poslanih prema njima.
Ruter najbolje rute iz BGP tabele kandiduje za IP tabelu rutiranja.
-
42
BGP tabele
Tabela susjeda
Lista BGP susjeda
BGP tabela
Lista svih mrea nauenih od svakog susjeda
Moe sadravati vie putanja prema istoj odredinoj mrei
Sadri BGP atribute za svaku putanju
IP tabela rutiranja
Lista najboljih putanja prema odredinim mreama
-
43
Atributi putanje
Atributi putanje predstavljaju skup BGP metrika koje opisuju putanju (rutu) do odredine mree.
BGP koristi atribute putanje radi utvrivanja najboljih putanja do odredinih mrea.
Neki atributi su obavezni i automatski su ukljueni u rutirajue informacije, dok se drugi mogu opcionalno konfigurisati.
BGP atributi se koriste za realizaciju polise rutiranja.
Konfigurisanje BGP atributa omoguava administratorima veliki broj opcija za kontrolisanje putanje.
-
44
Atributi putanje
BGP update poruka ukljuuje sekvencu atributa putanje varijabilne veliine koja opisuje rutu.
Atribut putanje se sastoji od tri polja:
Tip atributa
Veliina atributa
Vrijednost atributa
16 2 1 2 Variable 2 Variable Variable
Marker Length Type Unfeasible
Routes Length
Withdrawn
Routes
Attribute
Length
Path
Attributes NLRI
Octets
Update Message Path Attributes
Information
BGP Attribute Type
Type code 1 ORIGIN Type code 2 AS_PATH Type code 3 NEXT_HOP Type code 4 MULTI_EXIT_DISC Type code 5 LOCAL_PREF Type code 6 ATOMIC_AGGREGATE Type code 7 AGGREGATOR Type code 8 Community (Cisco-defined) Type code 9 Originator-ID (Cisco-defined) Type code 10 Cluster list (Cisco-defined)
-
45
Atributi putanje u update porukama
-
46
Atributi
Atribut EBGP IBGP
AS_PATH Well-known Mandatory Well-known
Mandatory
NEXT_HOP Well-known Mandatory Well-known
Mandatory
ORIGIN Well-known Mandatory Well-known
Mandatory
LOCAL_PREF Not allowed Well-known Discretionary
ATOMIC_AGGREGATE Well-known Discretionary Well-known Discretionary
AGGREGATOR Optional Transitive Optional
Transitive
COMMUNITY Optional Transitive Optional
Transitive
MULTI_EXIT_DISC Optional Nontransitive Optional
Nontransitive
Automatski ukljueni u
update poruku
Mogu se konfigurisati radi lakeg
biranja putanje.
-
47
Atributi putanje
Postoje etiri razliita tipa atributa. Nisu svi podrani od svih proizvoaa
-
48
Well-Known Mandatory atributi
Atribut je prepoznatljiv od strane svih implementacija BGP-a i mora se pojaviti u BGP update poruci.
Ako nedostaje, bie generisana poruka o greci.
Well-known mandatory atributi osiguravaju da se sve BGP implementacije sloe o standardnom skupu atributa.
-
49
Well-Known Mandatory: AS_PATH
Atribut AS_PATH sadri listu AS brojeva do
odredine mree.
Kad god update prolazi kroz AS, AS broj se dodaju
na poetak atributa AS_PATH prije
oglaavanja sljedeem EBGP susjedu.
-
50
Well-Known Mandatory: AS_PATH
-
51
Well-Known Mandatory: NEXT_HOP
Atribut NEXT_HOP indicira IP adresu koja se koristi da bi se dolo do odredine mree.
IP adresa je ulazna taka sljedeeg AS-a u putanji prema odredinoj mrei.
Stoga, za EBGP, next-hop adresa je IP adresa susjeda od koga je stigao update.
-
52
Well-Known Mandatory: ORIGIN
Atribut ORIGIN definie porijeklo putanje, a moe da bude:
IGP:
Ruta je interna u izvornom AS-u i uglavnom se koristi komandom network
unutar BGP protokola.
IGP porijeklo se oznaava sa slovom i u BGP tabeli.
EGP:
(zastarjelo) Ruta je nauena uz pomo EGP protokola, koji se smatra istorijskim protokolom rutiranja i nije podran na Internetu.
EGP porijeklo se oznaava sa slovom e u BGP tabeli.
Incomplete:
Porijeklo rute nije poznato ili je nauena na neki drugi nain. Ovo porijeklo se obino pojavljuje kada se ruta redistribuira u BGP.
Incomplete porijeklo se oznaava sa znakom ? u BGP tabeli.
-
53
Well-Known Mandatory: ORIGIN
R1# show ip bgp
BGP table version is 24, local router ID is 172.16.1.2
Status codes: s suppressed, d damped, h history, * valid, > best, i -
internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 192.208.10.0 192.208.10.5 0 0 300 i
*> 172.16.1.0 0.0.0.0 0 32768 i
R1# show ip bgp
Network Next Hop Metric LocPrf Weight Path
*> 10.1.1.0/24 0.0.0.0 0 32768 ?
*> 192.168.1.0/24 10.1.1.2 84 32768 ?
*> 192.168.2.0/24 10.1.1.2 74 32768 ?
i = Ruta generisana pomou network komande.
? = Ruta generisana pomou nepoznate metode (obino redistribucijom).
-
54
Well-Known Discretionary
Atribut je prepoznatljiv od strane svih implementacija BGP-a, ali se ne mora pojaviti u svakoj BGP update poruci.
-
55
Well-Known Discretionary: LOCAL_PREF
Atribut Local Preference oznaava lokalne rutere unutar AS-a koji se preferiraju da bi se preko njih poslao saobraaj van AS-a.
Preferira se putanja sa veim local preference atributom.
Podrazumijevana vrijednost za atribut local preference je 100.
Konfigurie se na ruteru i razmjenjuje izmeu IBGP rutera.
Ne prenosi se EBGP susjedima.
-
56
Well-Known Discretionary: LOCAL_PREF
Ruteri A i B su IBGP susjedi u AS-u 64520 i oba primaju update poruke o mrei 172.16.0.0 iz razliitih pravaca. Atribut local preference na ruteru A je postavljen na 200.
Atribut local preference na ruteru B je postavljen na 150.
Poto je atribut local preference na ruteru A vei, onda se on bira kao povoljnija izlazna taka iz AS-a 64520.
-
57
Optional Transitive
Atribut moe, ali i ne mora biti prepoznatljiv od strane svih BGP implementacija.
Poto je atribut tranzitivan, BGP prihvata i oglaava atribut ak i ako ga ne prepoznaje.
-
58
Optional Transitive: Community
Atribut BGP Community moe da se koristi za filtriranje ulaznih ili izlaznih ruta.
BGP ruteri mogu da taguju rute sa indikatorom (community) i da time dozvole drugim ruterima da donesu odluku na osnovu postavljenog
taga.
Ako ruter ne razumije ovaj atribut, prosljeuje ga sljedeem ruteru.
Community atributi nisu ogranieni na jedan AS.
-
59
Optional Nontransitive
Atribut moe, ali i ne mora biti prepoznatljiv od strane svih BGP implementacija.
Bez obzira da li BGP ruter prepoznaje atribut, on nije tranzitivan i ne prosljeuje se drugim BGP susjedima.
-
60
Optional Nontransitive: MED
Atribut MED (eng. Multiple Exit Discriminator), popularno nazvan metrika, prua hint eksternim susjedima kako da alju saobraaj u AS ako postoje vie ulaznih taaka.
Manja MED vrijednost se preferira u odnosu na veu!
MED se alje EBGP susjedima i ovi ruteri propagiraju MED vrijednost kroz svoj AS.
Ruteri unutar AS-a koriste MED, ali ga ne prosljeuju van AS-a.
Kada se ista update poruka prosljeuje drugom AS-u, metrika se setuje na podrazumijevanu vrijednost (0).
Koritenjem atributa MED, BGP postaje jedini protokol koji moe da utie na to kako e saobraaj da se alje u AS.
-
61
Optional Nontransitive: MED
Ruteri B i C ukljuuju atribut MED u svoje update poruke prema ruteru A.
Ruter B MED atribut je postavljen na 150.
Ruter C MED atribut je postavljen na 200.
Kada A primi update poruke od strane B i C, on bira ruter B kao najbolji next hop zbog manje MED vrijednosti.
-
62
Atribut Cisco Weight
Weight predstavlja atribut koji je pod vlasnitvom Cisca.
Po funkciji je slian atributu Local preference, poto se primijenjuje kada jedan ruter ima vie izlaznih taaka.
Atribut Local preference se koristi kada 2+ rutera predstavljaju izlazne take iz AS-a.
Konfigurie se lokalno na ruteru i ne propagira se drugim ruterima.
Rute sa veom vrijednou weight atributa se preferiraju kada postoji vie ruta prema istom odreditu.
Weight atribut moe da ima vrijednost izmeu 0 i 65535.
Putanje koje potiu od strane rutera imaju atribut weight podrazumijevano postavljen na 32768, a druge putanje imaju
podrazumijevanu vrijednost 0.
-
63
Atribut Cisco Weight
Ruteri B i C ue o mrei 172.20.0.0 iz AS-a 65250 i propagiraju update poruke prema ruteru A.
Samim tim, ruter A ima dvije putanje prema mrei 172.20.0.0.
Ruter A postavlja atribut weight na sljedei nain: Update poruke koje dolaze od B imaju weight postavljen na 200.
Update poruke koje dolaze od C imaju weight postavljen na 150.
Ruter A koristi ruter B zbog vee weight vrijednosti.
-
64
BGP proces selekcije rute
Odluka o BGP najboljoj putanji se bazira na vrijednosti atributa koje sadri update poruka.
BGP uzima u razmatranje samo sinhronizovane rute bez AS petlji i sa validnom next-hop adresom.
-
65
BGP proces selekcije rute
Preferirati rutu sa najveom vrijednou weight atributa.
Preferirati rutu sa najveom LOCAL_PREF vrijednou.
Preferirati lokalno generisanu rutu (network ili aggregate rute).
Preferirati rutu sa najkraim AS-PATH atributom.
Preferirati rutu sa najniim ORIGIN atributom (IGP
-
66
Using Multiple Routing Protocols on a Network
BGP konfiguracija
-
67
Omoguavanje BGP rutiranja
Definisanje BGP-a kao IP protokola rutiranja.
Router(config)#
router bgp autonomous-system
Vrijednost autonomous-system predstavlja ili interno generisan broj (ako mrea nije povezana na mreu provajdera) ili broj dobijen od ISP-a ili RIR-a.
Predstavlja obavezan parametar.
Pozitivan cijeli broj izmeu 1 i 65535.
Samo jedna instanca BGP protokola moe da se konfigurie na ruteru.
-
68
Definisanje BGP susjeda
Identifikovanje rutera sa kojim se uspostavlja BGP sesija.
Router(config-router)#
neighbor {ip-address | peer-group-name} remote-as
autonomous-system
Parametar ip-address predstavlja odredinu adresu BGP susjeda.
Adresa mora biti dostina prije uspostavljanja BGP veze.
Parametar autonomous-system se koristi za idenitifikovanje sesije, tj. da li je uspostavljena pomou IBGP-a ili EBGP-a.
Ako se ova vrijednost podudara sa ruterovim AS-om, onda se radi o IBGP sesiji.
Ako vrijednost nije ista kao ruterov AS, onda se radi o EBGP sesiji.
-
69
BGP neighbor komanda primjer
-
70
BGP peer grupe
Kod BGP-a, susjedi se esto konfiguriu prema istoj polisi.
Radi uproavanja konfiguracije, susjedi koji odgovaraju istoj polisi mogu da se grupiu u peer grupe.
Ovo je preporueno rjeenje kada postoji mnogo BGP vorova.
Umjesto posebnog definisanja iste polise za svakog od susjeda, moe se definisati peer grupa.
Pojedinani vorovi se tada proglaavaju lanovima peer grupe.
lanovi peer grupe nasljeuju uspostavljenu konfiguraciju.
-
71
Definisanje BGP peer grupe
Kreiranje peer grupe na lokalnom ruteru.
Router(config-router)#
neighbor peer-group-name peer-group
Parametar peer-group-name predstavlja ime BGP grupe koja se kreira.
Ime je lokalno za ruter na kojem se vre konfiguracija i ne proslijeuje se drugim ruterima.
-
72
Ulanjivanje susjeda u peer grupu
Ulanjivanje susjeda u peer grupu.
Router(config-router)#
neighbor ip-address peer-group peer-group-name
Parametar ip-address predstavlja IP adresu susjeda koji se proglaava lanom peer grupe.
peer-group-name mora ve da postoji..
-
73
IBGP problem sa izvorinom IP adresom
BGP funkcionie na principu da svaki ruter mora da bude svjestan postojanja svog susjeda i da mora da ima neighbor komandu konfigurisanu za njega.
Na primjer, kada ruter kreira ili prosljeuje paket, IP adresa izlaznog interfejsa se podrazumijevano koristi kao izvorina adresa paketa.
Za BGP pakete, ova izvorina IP adresa mora da se podudara sa IP adresom u odgovarajuoj neighbor komandi susjednog rutera ili
ruteri nee uspostaviti BGP sesiju.
Ovaj problem se ne vezuje za EBGP susjede poto su oni obino direktno povezani.
-
74
IBGP problem sa izvorinom IP adresom
Kada postoji vie putanja izmeu IBGP susjeda, BGP izvorina adresa moe da prouzrokuje probleme: Ruter D koristi komandu neighbor 10.3.3.1 remote-as 65102
da bi uspostavio susjedstvo sa A.
Meutim, ruter A alje BGP pakete prema D preko B pa je izvorina adresa paketa 10.1.1.1.
IBGP sesija izmeu A i D ne moe da se uspostavi poto D ne prepoznaje 10.1.1.1 kao BGP susjeda.
-
75
IBGP i izvorina IP adresa rjeenje
Uspostavljanje IBGP sesije pomou loopback interfejsa.
Router(config-router)#
neighbor {ip-address | peer-group-name} update-source
loopback interface-number
Informisanje rutera da koristi adresu loopback interfejsa za sve BGP pakete.
Prepisuje podrazumijevanu izvorinu IP adresu za BGP pakete.
Tipino se koristi samo kod IBGP sesija.
Dodatno, fiziki interfejs moe da otkae iz bilo kog razloga za razliku od loopback interfejsa.
-
76
IBGP i izvorina IP adresa primjer
AS 65102 AS 65100
R1 R4
Lo0 192.168.2.2
.1
192.168.1.1 172.16.1.1
R2 R3
10.1.1.0/24
10.2.2.0/24
.1 .2
.2
Lo0 192.168.3.3
AS 65101
EIGRP
R2(config)# router bgp 65101
R2(config-router)# neighbor 172.16.1.1 remote-as 65100
R2(config-router)# neighbor 192.168.3.3 remote-as 65101
R2(config-router)# neighbor 192.168.3.3 update-source loopback0
R2(config-router)# exit
R2(config)# router eigrp 1
R2(config-router)# network 10.0.0.0
R2(config-router)# network 192.168.2.0
R2(config-router)#
R3(config)# router bgp 65101
R3(config-router)# neighbor 192.168.1.1 remote-as 65102
R3(config-router)# neighbor 192.168.2.2 remote-as 65101
R3(config-router)# neighbor 192.168.2.2 update-source loopback0
R3(config-router)# exit
R3(config)# router eigrp 1
R3(config-router)# network 10.0.0.0
R3(config-router)# network 192.168.3.0
R3(config-router)#
-
77
EBGP dual-homed problem
R1 u AS 65102 je dual-homed sa R2 u AS 65101.
Problem se moe desiti ako R1 koristi samo jednu neighbor komandu koja pokazuje na adresu 192.168.1.18 rutera R2 .
Ako taj link padne, BGP sesija izmeu AS-ova je izgubljena i paketi se ne prosljeuju iz jednog AS-a u drugi uprkos postojanju drugog linka.
Rjeenje bi moglo biti konfigurisanje dvije neighbor komande na R1 koje pokazuju i na 192.168.1.18 i na 192.168.1.34.
Meutim, na ovaj nain se bespotrebno udvostruuje broj BGP update poruka koje se alju sa R1 prema R2.
-
78
EBGP dual-homed rjeenje
Idealno rjeenje je da se:
koriste loopback adrese.
konfiguriu statike rute prema loopback adresi drugog rutera,
Konfigurie komandu neighbor ebgp-multihop u svrhu
informisanja BGP procesa da je BGP susjed udaljen vie od jednog hopa.
-
79
Omoguavanje multihop EBGP-a
Poveati TTL za EBGP konekcije.
Router(config-router)#
neighbor {ip-address | peer-group-name} ebgp-multihop
[ttl]
Ova komanda je od znaaja kada postoje redundante putanje izmeu EBGP susjeda.
Podrazumijevani ttl je 1 pa BGP susjedi moraju biti direktno povezani.
Opseg je od 1 do 255.
Poveavanje ttl vrijednosti omoguava BGP-u da uspostavi EBGP konekcije izmeu rutera udaljenih vie od jednog hopa, ali omoguava i BGP load balancing.
-
80
Multihop EBGP primjer
AS 65102
Lo0 172.17.1.1
R1 R2
EBGP
EBGP
192.168.1.18 /28
Lo0 172.16.1.1
AS 65101
192.168.1. 34 /28
192.168.1.17 /28
192.168.1. 33 /28
R1(config)# router bgp 65102
R1(config-router)# neighbor 172.16.1.1 remote-as 65101
R1(config-router)# neighbor 172.16.1.1 update-source loopback0
R1(config-router)# neighbor 172.16.1.1 ebgp-multihop 2
R1(config-router)# exit
R1(config)# ip route 172.16.1.1 255.255.255.255 192.168.1.18
R1(config)# ip route 172.16.1.1 255.255.255.255 192.168.1.34
R1(config)#
R2(config)# router bgp 65101
R2(config-router)# neighbor 172.17.1.1 remote-as 65102
R2(config-router)# neighbor 172.17.1.1 update-source loopback0
R2(config-router)# neighbor 172.17.1.1 ebgp-multihop 2
R2(config-router)# exit
R2(config)# ip route 172.17.1.1 255.255.255.255 192.168.1.17
R2(config)# ip route 172.17.1.1 255.255.255.255 192.168.1.33
R2(config)#
-
81
Oglaavanje EBGP ruta IBGP vorovima
Kada EBGP ruter primi update poruku od drugog EBGP susjeda i nakon toga je proslijedi svojim IBGP susjedima,
izvorina IP adresa se nee promijeniti!
IBGP susjedi se moraju konfigurisati da bi im bila dostupna eksterna IP adresa.
Drugo rjeenje je da se poniti podrazumijevano ponaanje rutera i da se on postavi svoju adresu kao next-hop adresu
za rutu koju oglaava IBGP susjedima.
Da bi se ovo uradilo, koristi se neighbor next-hop-self
komanda.
-
82
neighbor next-hop-self komanda
Konfigurisanje rutera da bude next hop IBGP susjedu.
Router(config-router)#
neighbor {ip-address | peer-group-name} next-hop-self
Komanda tjera BGP ruter da oglaava sebe kao next hop za rute koje oglaava.
Parametar ip-address identifikuje susjedni ruter kojem se alju update poruke.
-
83
Next Hop Self primjer
R2(config)# router bgp 65101
R2(config-router)# neighbor 172.16.1.1 remote-as 65100
R2(config-router)# neighbor 192.168.3.3 remote-as 65101
R2(config-router)# neighbor 192.168.3.3 update-source loopback0
R2(config-router)# neighbor 192.168.3.3 next-hop-self
R2(config-router)# exit
R2(config)# router eigrp 1
R2(config-router)# network 10.0.0.0
R2(config-router)# network 192.168.2.0
R2(config-router)#
AS 65102 AS 65100
R1 R4
Lo0 192.168.2.2
.1
192.168.1.1 172.16.1.1
R2 R3
10.1.1.0/24
10.2.2.0/24
.1 .2
.2
Lo0 192.168.3.3
AS 65101
EIGRP
-
84
Definisanje mrea koje BGP oglaava
Postoje dvije mogunosti za oglaavanje mrea kod BGP-a: Komanda network,
Redistribucija ruta internog protokola rutiranja u BGP.
Napomena: Redistribucija se ne preporuuje poto moe da prouzrokuje nestabilne BGP tabele.
-
85
Identifikovanje BGP mrea
Omoguavanje BGP-a da oglaava mreu ako postoji.
Router(config-router)#
network network-number [mask network-mask] [route-map
map-tag]
Komanda network utvruje koje mree e ruter da oglaava. Za razliku od internih protokola rutiranja, komanda ne pokree BGP
na specifikovanim interfejsima.
Parametar mask pokazuje da BGP-4 podrava subnetting i supernetting.
Ako se maska ne specifikuje, ovom komandom se oglaava classful mrea
Prefiks mora tano da se podudara sa zapisom u IP tabeli rutiranja.
-
86
BGP ruta mora biti u IP tabeli rutiranja
Na primjer, da bi se sumarizovale mree i oglasio CIDR blok 192.168.0.0/16, konfiguracija treba da izgleda:
network 192.168.0.0 mask 255.255.0.0
ip route 192.168.0.0 255.255.0.0 null0
Sada BGP moe da pronae tano podudaranje u tabeli rutiranja i da oglasi mreu 192.168.0.0/16 svojim susjedima.
Oglaena statika ruta se nikada nee koristiti.
-
87
BGP MD5 autentikacija
R1(config)# router bgp 65000
R1(config-router)# neighbor 10.64.0.2 remote-as 65500
R1(config-router)# neighbor 10.64.0.2 password BGP-Pa55w0rd
R1(config-router)#
R2(config)# router bgp 65500
R2(config-router)# neighbor 10.64.0.1 remote-as 65000
R2(config-router)# neighbor 10.64.0.1 password BGP-Pa55w0rd
R2(config-router)#
AS 65500
R1 R2
10.64.0.0 /24 .1 .2
AS 65000
-
88
MD5 konfiguracija problemi
Ako jedan ruter ima konfigurisanu lozinku, a drugi nema pojavie se sljedea poruka na konzoli: %TCP-6-BADAUTH: No MD5 digest from 10.1.0.2(179) to
10.1.0.1(20236)
Ako dva rutera imaju konfigurisane razliite lozinke, pojavie se sljedea poruka: %TCP-6-BADAUTH: Invalid MD5 digest from
10.1.0.1(12293) to 10.1.0.2(179)
-
89
Hard Reset BGP sesija
Resetuje sve BGP konekcije na ruteru.
Router#
clear ip bgp {* | neighbor-address}
Cijela BGP tabela se odbacuje.
Sve rute moraju ponovo da se naue.
Kada se koristi parametar neighbor-address, resetuje se samo BGP sesija prema tom susjedu.
-
90
Monitoring BGP ruta
Komanda Opis
show ip bgp neighbors
{address} received-routes
Prikazuje sve primljene rute (i prihvaene i odbaene) od specifikovanog susjeda.
show ip bgp neighbors
{address} routes
Prikazuje sve rute koje su primljene i prihvaene od strane specifikovanog susjeda.
Ovaj ispis predstavlja podskup prethodnog ispisa.
show ip bgp Prikazuje ispis BGP tabele.
show ip bgp neighbors
{address} advertised-routes Prikazuje BGP rute koje se oglaavaju susjedima.
-
91
BGP konfiguracija primjer #1
R1(config)# router bgp 64520
R1(config-router)# neighbor 10.1.1.2 remote-as 65000
R1(config-router)# network 172.16.0.0
R1(config-router)#
R2(config)# router bgp 65000
R2(config-router)# neighbor 10.1.1.1 remote-as 64520
R2(config-router)# network 172.17.0.0
R2(config-router)#
AS 65000
R1 R2
10.1.1.0 .1 .2
AS 64520
172.17.0.0 172.16.0.0
-
92
BGP konfiguracija primjer #2
R2(config)# router bgp 65010
R2(config-router)# neighbor 10.1.1.2 remote-as 65020
R2(config-router)# network 10.2.2.0 mask 255.255.255.0
R2(config-router)# network 10.4.4.0 mask 255.255.255.0
R2(config-router)#
AS 65020
R2
10.1.1.0 /24 .2
AS 65010
10.2.2.0 /24
R1
.1
R3 10.3.3.0 /24 .2
Lo0 10.4.4.4
.1
Lo0 10.5.5.5
-
93
BGP bez peer grupe primjer
R1(config)# router bgp 65100
R1(config-router)# neighbor 192.168.24.1 remote-as 65100
R1(config-router)# neighbor 192.168.24.1 update-source loopback 0
R1(config-router)# neighbor 192.168.24.1 next-hop-self
R1(config-router)# neighbor 192.168.24.1 distribute-list 20 out
R1(config-router)#
R1(config-router)# neighbor 192.168.25.1 remote-as 65100
R1(config-router)# neighbor 192.168.25.1 update-source loopback 0
R1(config-router)# neighbor 192.168.25.1 next-hop-self
R1(config-router)# neighbor 192.168.25.1 distribute-list 20 out
R1(config-router)#
R1(config-router)# neighbor 192.168.26.1 remote-as 65100
R1(config-router)# neighbor 192.168.26.1 update-source loopback 0
R1(config-router)# neighbor 192.168.26.1 next-hop-self
R1(config-router)# neighbor 192.168.26.1 distribute-list 20 out
R1(config-router)#
-
94
BGP sa peer grupom primjer
R1(config)# router bgp 65100
R1(config-router)# neighbor INTERNAL peer-group
R1(config-router)# neighbor INTERNAL remote-as 65100
R1(config-router)# neighbor INTERNAL update-source loopback 0
R1(config-router)# neighbor INTERNAL next-hop-self
R1(config-router)# neighbor INTERNAL distribute-list 20 out
R1(config-router)# neighbor 192.168.24.1 peer-group INTERNAL
R1(config-router)# neighbor 192.168.25.1 peer-group INTERNAL
R1(config-router)# neighbor 192.168.26.1 peer-group INTERNAL
R1(config-router)#
-
95
IBGP & EBGP primjer
R2(config)# router bgp 65000
R2(config-router)# neighbor 10.1.1.1 remote-as 64520
R2(config-router)# neighbor 192.168.3.3 remote-as 65000
R2(config-router)# neighbor 192.168.3.3 update-source loopback 0
R2(config-router)# neighbor 192.168.3.3 next-hop-self
R2(config-router)# network 172.16.20.0 mask 255.255.255.0
R2(config-router)# network 192.168.1.0
R2(config-router)# network 192.168.3.0
R2(config-router)# no synchronization
R2(config-router)#
172.16.30.0 172.16.20.0
Lo0 192.168.2.2 /32
.2 R2 R3
192.168.1.0 /24
192.168.4.0 /24
.2 .3
.3
Lo0 192.168.3.3 /32
AS 65000
10.1.1.0 /24 .1
R1
AS 64520
.2
172.16.10.0
-
96
Using Multiple Routing Protocols on a Network
BGP verifikacija & troubleshooting
-
97
BGP verifikacija & troubleshooting
Komanda Opis
show ip bgp Prikazuje unose u BGP tabeli.
show ip bgp neighbors Prikazuje detaljne informacije o TCP i BGP vezama prema
susjedima.
show ip bgp summary Prikazuje status svih BGP veza.
show ip bgp neighbors
{address} advertised-
routes Prukazuje sve BGP rute koje se oglaavaju susjedima.
show ip bgp rib-
failure
Prikazuje BGP rute koje nisu instalirane u tabelu rutiranja, i
razlog zbog ega nisu.
debug ip bgp
[dampening | events |
keepalives | updates]
-
98
BGP verifikacija: show ip bgp
R1# show ip bgp
BGP table version is 14, local router ID is 172.31.11.1
Status codes: s suppressed, d damped, h history, * valid, > best, i -
internal, r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 10.1.0.0/24 0.0.0.0 0 32768 i
* i 10.1.0.2 0 100 0 i
*> 10.1.1.0/24 0.0.0.0 0 32768 i
*>i10.1.2.0/24 10.1.0.2 0 100 0 i
*> 10.97.97.0/24 172.31.1.3 0 64998 64997 i
* 172.31.11.4 0 64999 64997 i
* i 172.31.11.4 0 100 0 64999 64997 i
*> 10.254.0.0/24 172.31.1.3 0 0 64998 i
* 172.31.11.4 0 64999 64998 i
* i 172.31.1.3 0 100 0 64998 i
r> 172.31.1.0/24 172.31.1.3 0 0 64998 i
r 172.31.11.4 0 64999 64998 i
r i 172.31.1.3 0 100 0 64998 i
*> 172.31.2.0/24 172.31.1.3 0 0 64998 i
Prikaz BGP tabele
Status:.
- * znai da je next-hop adresa (u petoj kolomni) validna.
- r znai da se desio RIB failure i da ruta nije instalirana u tabelu rutiranja.
Zadnja kolona predstavlja atribut ORIGIN.
- i oznaava da je izvorni ruter pomou komande network uveo mreu u BGP proces.
- ? oznaava da je ruta redistribuirana iz internog protokola rutiranja u BGP proces.
Trea kolona je ili prazna ili ima slovo i.
- Ako ima i, IBGP susjed je oglasio rutu ovom ruteru.
- Ako je kolona prazna, BGP je nauio rutu od strane eksternog susjeda.
Znak > znai da je to najbolja ruta izabrana od strane BGP-a.
Ruta je ponuena od strane BGP-a kao kandidat za tabelu rutiranja.
Sekcija Path izlistava AS path. Zadnji AS broj predstavlja AS iz kojeg potie ruta.
Ako je ovo polje prazno, ruta potie iz trenutnog AS-a.
Ova sekcija izlistava tri BGP atributa putanje: metriku (MED), local preference i weight.
-
99
BGP verifikacija: show ip bgp summary
R1# show ip bgp summary
BGP router identifier 10.1.1.1, local AS number 65001
BGP table version is 124, main routing table version 124
9 network entries using 1053 bytes of memory
22 path entries using 1144 bytes of memory
12/5 BGP path/bestpath attribute entries using 1488 bytes of memory
6 BGP AS-PATH entries using 144 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP using 3829 total bytes of memory
BGP activity 58/49 prefixes, 72/50 paths, scan interval 60 secs
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
10.1.0.2 4 65001 11 11 124 0 0 00:02:28 8
172.31.1.3 4 64998 21 18 124 0 0 00:01:13 6
172.31.11.4 4 64999 11 10 124 0 0 00:01:11 6
Verifikacija BGP veza.
-
100
BGP verifikacija: debug ip bgp updates
R1# debug ip bgp updates
Mobile router debugging is on for address family: IPv4 Unicast
R1# clear ip bgp 10.1.0.2
*May 24 11:06:41.309: %BGP-5-ADJCHANGE: neighbor 10.1.0.2 Up
*May 24 11:06:41.309: BGP(0): 10.1.0.2 send UPDATE (format) 10.1.1.0/24, next 10.1.0.1, metric 0,
path Local
*May 24 11:06:41.309: BGP(0): 10.1.0.2 send UPDATE (prepend, chgflags: 0x0) 10.1.0.0/24, next
10.1.0.1, metric 0, path Local
*May 24 11:06:41.309: BGP(0): 10.1.0.2 NEXT_HOP part 1 net 10.97.97.0/24, next 172.31.11.4
*May 24 11:06:41.309: BGP(0): 10.1.0.2 send UPDATE (format) 10.97.97.0/24, next 172.31.11.4, metric
0, path 64999 64997
*May 24 11:06:41.309: BGP(0): 10.1.0.2 NEXT_HOP part 1 net 172.31.22.0/24, next 172.31.11.4
*May 24 11:06:41.309: BGP(0): 10.1.0.2 send UPDATE (format) 172.31.22.0/24, next 172.31.11.4,
metric 0, path 64999
*May 24 11:06:41.349: BGP(0): 10.1.0.2 rcvd UPDATE w/ attr: nexthop 10.1.0.2, origin i, localpref
100, metric 0
*May 24 11:06:41.349: BGP(0): 10.1.0.2 rcvd 10.1.2.0/24
*May 24 11:06:41.349: BGP(0): 10.1.0.2 rcvd 10.1.0.0/24
Verifikacija BGP veza.
-
101
BGP verifikacija: show ip bgp neighbors
R1# show ip bgp neighbors
BGP neighbor is 172.31.1.3, remote AS 64998, external link
BGP version 4, remote router ID 172.31.2.3
BGP state = Established, up for 00:19:10
Last read 00:00:10, last write 00:00:10, hold time is 180, keepalive
interval is 60 seconds
Neighbor capabilities:
Route refresh: advertised and received(old & new)
Address family IPv4 Unicast: advertised and received
Message statistics:
InQ depth is 0
OutQ depth is 0
Sent Rcvd
Opens: 7 7
Notifications: 0 0
Updates: 13 38
Verifikacija BGP veza.
-
102
Using Multiple Routing Protocols on a Network
BGP manipulacija putanje koritenjem route mapa
-
103
Route mape & BGP
Route mape se mogu koristiti prilikom filtriranja redistribucije ruta.
Takoe, pokazana je njihova primjena u implementaciji PBR-a.
Sada je demonstrirana njihova primjena u BGP protokolu i to za dodjeljivanje i mijenjanje BGP atributa.
-
104
neighbor {ip-address | peer-group-name} route-map map-name
{in | out}
Router(config-router)#
Primjena route mape za filtriranje dolaznih ili odlaznih BGP ruta prema susjedu.
Implementiranje route mapa u BGP-u
route-map map-tag [permit | deny] [sequence-number]
Router(config)#
Definisanje route mape.
match {criteria}
Router(config-route-map)#
Definisanje uslova za meovanje.
set {actions}
Router(config-route-map)#
Definisanje akcije koja treba da se desi prilikom mea.
-
105
match komande kod BGP-a
Komanda Opis
match as-path Meuje AS_PATH atribut
match ip address Meuje sve rute ija je odredina adresa obuhvaena standardnom ili proirenom ACL
match metric Meuje rute sa specifikovanom metrikom (MED atributom)
match community Meuje BGP community atribut.
match interface Meuje sve rute koje imaju next hop preko jednog od specifikovanih interfejsa.
match ip next-hop Meuje sve rute koje imaju next hop koji se dobija preko jedne od specifikovanih ACLs specified
match tag Meuje tag rute.
-
106
match ip-address komanda
Specifikovanje uslova za meovanje koritenjem ACL ili prefiks lista.
Router(config-route-map)#
match ip address {access-list-number | name} [...access-
list-number | name] | prefix-list prefix-list-name
[..prefix-list-name]
Parametar Opis
access-list-number | name
Broj ili naziv standardne ili proirene ACL koja se koristi za testiranje dolaznih
paketa.
Ako se specifikuje vie ACL, meovanje bilo koje od njih rezultuje meom.
prefix-list prefix-list-name
Ime prefiks liste koja se koristi za
testiranje paketa.
Ako se specifikuje vie prefiks lista, meovanje bilo koje od njih rezultuje meom.
-
107
set komande kod BGP-a
Komanda Opis
set weight Postavlja BGP weight.
set local-preference Postavlja LOCAL-PREF.
set as-path Modifikuje AS path za BGP rute.
set origin Postavlja vrijednost atributu ORIGIN.
set metric Postavlja MED.
set community Postavlja atribut BGP community.
set interface Odreuje interfejs na koji se alju paketi.
set ip next-hop Odreuje IP adresu na koju se alju paketi.
-
108
set weight komanda
Specifikovanje BGP weight atributa.
Router(config-route-map)#
set weight number
Parametar number predstavlja vrijednost weight atributa.
Cijeli broj izmeu 0 i 65535.
-
109
set local-preference komanda
Specifikovanje local preference vrijednosti.
Router(config-route-map)#
set local-preference number-value
Parametar number-value predstavlja vrijednost atributa.
Cijeli broj izmeu 0 i 4294967295.
Default = 100.
-
110
set metric komanda
Specifikovanje MED vrijednosti.
Router(config-route-map)#
set metric metric-value
Parametar metric-value predstavlja vrijednost atributa.
Cijeli broj izmeu 0 i 294967295.
-
111
BGP manipulacija putanje
Za razliku od internih protokola rutiranja, BGP nije dizajniran da za biranje najbre putanje.
BGP je dizajniran da manipulie saobraajem tako da se maksimizira ili minimizira koritenje propusnog opsega.
-
112
Promjena atributa Weight
Atribut weight se koristi iskljuivo kada jedan ruter predstavlja izlaznu taku iz AS-a. Koristi se za odreivanje najbolje putanje za izlazak iz AS-a.
Atribut vrijedi samo na lokalnom ruteru.
Vea vrijednost, bolja putanja!
Dva naina za mijenjanje atributa weight:
Mijenjanje atributa za sve update poruke koje dou od rutera na kojeg je atribut primijenjen.
Za promjenu atributa za odreene rute / AS path-a, koriste se route mape.
BGP proces selekcije rute:
1. najvei Weight
2. najvei LOCAL_PREF
3. Lokalno generisane rute
4. najkrai AS_PATH
5. najmanji ORIGIN (IGP < EGP <
incomplete)
6. najmanji MED
7. EBGP > IBGP
8. najmanja IGP metrika
9. najnii BGP router ID
10. najnia susjedna IP adresa
-
113
Promjena podrazumijevanog weight-a
Dodijeljivanje podrazumijevanog weight-a svim rutama od susjeda.
Router(config-router)#
neighbor {ip-address | peer-group-name} weight number
Rute nauene od drugog BGP susjeda imaju default weight vrijednost od 0, a rute koje potiu od lokalnog rutera imaju weight postavljen na 32768.
Parametar number predstavlja vrijednost koja se dodijeljuje.
Prihvatljive vrijednosti su od 0 do 65535.
Ruta sa najveom vrijednou weight atributa e biti izabrana kao najbolja ako postoji vie ruta prema nekoj mrei.
Napomena: Vrijednosti dodijeljene pomou set weight route-map komande brie vrijednosti dodijeljene pomou neighbor weight
komande.
-
114
Promjena weight-a pomou route mape
Polisa rutiranja odreuje da mree iz AS 65040 koriste putanju preko AS 65030 kao primarnu prema AS 65020.
Ovo se moe realizovati postavljanjem vee vrijednosti atributu weight (150) na svim dolaznim update porukama iz AS 65030
(10.0.0.1), koje nose informacije o mreama iz AS 65020.
-
115
Promjena weight-a pomou route mape
R1(config)# route-map SET-WEIGHT permit 10
R1(config-route-map)# match as-path 10
R1(config-route-map)# set weight 150
R1(config-route-map)#
R1(config-route-map)# route-map SET-WEIGHT permit 20
R1(config-route-map)# set weight 100
R1(config-route-map)# exit
R1(config)# ip as-path access-list 10 permit _65020$
R1(config)#
R1(config)# router bgp 65040
R1(config-router)# neighbor 10.0.0.1 remote-as 65030
R1(config-router)# neighbor 10.0.0.1 route-map SET-WEIGHT in
-
116
Promjena atributa Local Preference
Atribut local preference ima znaenje samo unutar AS-a radi utvrivanja najbolje putanje iz AS-a.
Vea vrijednost, bolja putanja!
Default vrijednost = 100.
Dva naina za mijenjanje atributa local preference:
Podrazumijevani local preference za sve rute koje ruter oglaava se mijenja pomou komande bgp default local-preference
value.
Za promjenu vrijednosti atributa local preference samo za
specifine rute / AS path, koriste se route mape.
BGP proces selekcije rute:
1. najvei Weight
2. najvei LOCAL_PREF
3. Lokalno generisane rute
4. najkrai AS_PATH
5. najmanji ORIGIN (IGP < EGP <
incomplete)
6. najmanji MED
7. EBGP > IBGP
8. najmanja IGP metrika
9. najnii BGP router ID
10. najnia susjedna IP adresa
-
117
Postavljanje default local preference vrijednosti
Promjena default local preference vrijednosti za rute koje se alju.
Router(config-router)#
bgp default local-preference number
Atribut local preference daje stepen preferiranja ruti prilikom procesa selekcije najbolje BGP putanje.
Atribut se razmjenjuje samo izmeu iBGP vorova.
Preferira se ruta sa najveom vrijednou local preference atributa.
Parametar number je vrijednost izmeu 0 i 4294967295.
Podrazumijevana local preference vrijednost je 100.
-
118
Postavljanje default local preference vrijednosti
BGP polisa rutiranja u ovom primjeru diktira da:
Default local preference za sve rute na R1 bude 200.
Default local preference za sve rute na R2 bude 500.
-
119
Postavljanje default local preference vrijednosti
Posljedica konfiguracije je da IBGP ruteri u AS 65001 alju sav saobraaj na Internet preko R2, ali je link R1 - ISP1 neiskorien.
Route mape mogu da se konfiguriu tako da samo neke rute imaju vei local preference.
R2(config)# router bgp 65001
R2(config-router)# bgp default local-preference 500
R2(config-router)#
R1(config)# router bgp 65001
R1(config-router)# bgp default local-preference 200
R1(config-router)#
-
120
Local Preference & route mape primjer
Trenutna situacija:
Sve rute imaju weight = 0 i podrazumijevani local preference = 100.
BGP koristi najkrai AS-path da bi izabrao najbolje rute:
Prema mrei 172.16.0.0, najkrai AS-path je preko ISP1.
Prema mrei 172.24.0.0, najkrai AS-path je preko ISP2.
Prema mrei 172.30.0.0, najkrai AS-path je preko ISP2.
-
121
Local Preference & route mape primjer
R3# show ip bgp
BGP table version is 7, local router ID is 192.168.3.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r
RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
* i172.16.0.0 172.20.50.1 100 0 65005 65004 65003 i
*>i 192.168.28.1 100 0 65002 65003 i
*>i172.24.0.0 172.20.50.1 100 0 65005 i
* i 192.168.28.1 100 0 65002 65003 65004 65005 i
*>i172.30.0.0 172.20.50.1 100 0 65005 65004 i
* i 192.168.28.1 100 0 65002 65003 65004i
-
122
Local Preference & route mape primjer
Analiza saobraaja otkriva sljedee rezultate:
10% saobraaja sa R1 prema ISP1 ide prema mrei 172.16.0.0.
50% saobraaja sa R2 prema ISP2 ide prema mreama 172.24.0.0 i 172.30.0.0.
Preostalih 40% ide prema drugim odreditima.
Rjeenje je koritenje route mapa da bi se saobraaj prema 172.30.0.0 preusmjerio na R1.
-
123
Local Preference & route mape primjer
R1(config)# access-list 65 permit 172.30.0.0 0.0.255.255
R1(config)#
R1(config)# route-map LOCAL_PREF permit 10
R1(config-route-map)# match ip address 65
R1(config-route-map)# set local-preference 400
R1(config-route-map)#
R1(config-route-map)# route-map LOCAL_PREF permit 20
R1(config-route-map)# exit
R1(config)#
-
124
Local Preference & route mape primjer
R1(config)# router bgp 65001
R1(config-router)# neighbor 192.168.2.2 remote-as 65001
R1(config-router)# neighbor 192.168.2.2 update-source loopback0
R1(config-router)# neighbor 192.168.3.3 remote-as 65001
R1(config-router)# neighbor 192.168.3.3 update-source loopback0
R1(config-router)# neighbor 192.168.28.1 remote-as 65002
R1(config-router)# neighbor 192.168.28.1 route-map LOCAL_PREF in
R1(config-router)# exit
R1(config)#
-
125
Local Preference & route mape primjer
R3# show ip bgp
BGP table version is 7, local router ID is 192.168.3.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r
RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
* i172.16.0.0 172.20.50.1 100 0 65005 65004 65003 i
*>i 192.168.28.1 100 0 65002 65003 i
*>i172.24.0.0 172.20.50.1 100 0 65005 i
* i 192.168.28.1 100 0 65002 65003 65004 65005 i
* i172.30.0.0 172.20.50.1 100 0 65005 65004 i
*>i 192.168.28.1 400 0 65002 65003 65004i
-
126
Modifikovanje AS Path atributa
Ako nisu konfigurisani weight i local-preference koriste se
njihove podrazumijevane
vrijednosti, pa BGP koristi
najkrai AS path atribut za selekciju putanje, bez obzira na
dostupni bandwidth.
Da bi se uticalo na izbor putanje pomou AS_PATH atributa, moe se konfigurisati AS-path prepending.
AS path se proiruje sa nizom AS brojeva poiljaoca tako da se putanja ini duom.
BGP proces selekcije rute:
1. najvei Weight
2. najvei LOCAL_PREF
3. Lokalno generisane rute
4. najkrai AS_PATH
5. najmanji ORIGIN (IGP < EGP <
incomplete)
6. najmanji MED
7. EBGP > IBGP
8. najmanja IGP metrika
9. najnii BGP router ID
10. najnia susjedna IP adresa
-
127
Modifikovanje AS Path atributa primjer
BGP polisa u ovom primjeru diktira da:
Saobraaj koji ulazi u AS 65040 treba da dolazi preko R6 iz AS 65030, a ne preko R4 iz AS 65010.
Jedan nain da se ovo realizuje je da R1 oglaava AS 65040 mree sa duim AS path atributom pomou tehnike AS-path prepending.
-
128
Modifikovanje AS Path atributa primjer
R1(config)# route-map SET-AS-PATH permit 10
R1(config-route-map)# set as-path prepend 65040 65040 65040
R1(config-route-map)# exit
R1(config)# router bgp 65040
R1(config-router)# neighbor 172.16.1.1 remote-as 65010
R1(config-router)# neighbor 172.16.1.1 route-map SET-AS-PATH out
R1(config-router)# exit
R1(config)#
-
129
Postavljanje MED atributa
MED utie na odluku kako e saobraaj da ulazi u AS kada postoji vie putanja.
Kada se porede MED vrijednosti za istu odredinu mreu u BGP procesu selekcije rute, preferira se
najnia MED.
Default = 0.
Meutim, poto se MED evaluira prilino kasno u BGP procesu selekcije rute, esto nema uticaja.
Postoje dva naina da se promijeni MED: Za promjenu MED vrijednosti za
sve rute koristi se komanda default-metric.
Za promjenu MED vrijednosti za samo neke rute, koriste se route mape.
BGP proces selekcije rute:
1. najvei Weight
2. najvei LOCAL_PREF
3. Lokalno generisane rute
4. najkrai AS_PATH
5. najmanji ORIGIN (IGP < EGP <
incomplete)
6. najmanji MED
7. EBGP > IBGP
8. najmanja IGP metrika
9. najnii BGP router ID
10. najnia susjedna IP adresa
-
130
Postavljanje default MED vrijednosti
BGP polisa u ovom primjeru diktira da:
Default MED na R1 bude promijenjen na 1001.
Default MED na R2 bude promijenjen na 99.
-
131
Postavljanje default MED vrijednosti
Posljedice: R1 - ISP1 link se koristi samo za BGP update poruke.
R2 - ISP2 link se koristi za sve povratne pakete iz AS 65004.
Bolje rjeenje je konfigurisanje route mapa pomou kojih e se za neke mree podesiti da imaju manju MED vrijednost preko R1, a druge da imaju manji MED preko R2.
R1(config)# router bgp 65001
R1(config-router)# default metric 1001
R1(config-router)#
R2(config)# router bgp 65001
R2(config-router)# default metric 99
R2(config-router)#
-
132
Postavljanje MED-a & route mape - primjer
R1(config)# access-list 66 permit 192.168.25.0 0.0.0.255
R1(config)# access-list 66 permit 192.168.26.0 0.0.0.255
R1(config)#
R1(config)# route-map MED-65004 permit 10
R1(config-route-map)# match ip address 66
R1(config-route-map)# set metric 100
R1(config-route-map)#
R1(config-route-map)# route-map MED-65004 permit 100
R1(config-route-map)# set metric 200
R1(config-route-map)# exit
R1(config)#
-
133
Postavljanje MED-a & route mape - primjer
R1(config)# router bgp 65001
R1(config-router)# neighbor 192.168.2.2 remote-as 65001
R1(config-router)# neighbor 192.168.2.2 update-source loopback0
R1(config-router)# neighbor 192.168.3.3 remote-as 65001
R1(config-router)# neighbor 192.168.3.3 update-source loopback0
R1(config-router)# neighbor 192.168.28.1 remote-as 65004
R1(config-router)# neighbor 192.168.28.1 route-map MED-65004 out
R1(config-router)#exit
-
134
Postavljanje MED-a & route mape - primjer
R2(config)# access-list 66 permit 192.168.24.0 0.0.0.255
R2(config)#
R2(config)# route-map MED-65004 permit 10
R2(config-route-map)# match ip address 66
R2(config-route-map)# set metric 100
R2(config-route-map)#
R2(config-route-map)# route-map MED-65004 permit 100
R2(config-route-map)# set metric 200
R2(config-route-map)# exit
R2(config)#
-
135
Postavljanje MED-a & route mape - primjer
R2(config)# router bgp 65001
R2(config-router)# neighbor 192.168.1.1 remote-as 65001
R2(config-router)# neighbor 192.168.1.1 update-source loopback0
R2(config-router)# neighbor 192.168.3.3 remote-as 65001
R2(config-router)# neighbor 192.168.3.3 update-source loopback0
R2(config-router)# neighbor 172.20.50.1 remote-as 65004
R2(config-router)# neighbor 172.20.50.1 route-map MED-65004 out
R2(config-router)# exit
R2(config)#
-
136
Postavljanje MED-a & route mape - primjer
ISP3# show ip bgp
BGP table version is 7, local router ID is 192.168.1.1
Status codes: s suppressed, d damped, h history, * valid, > best, i -
internal, r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*>i192.168.24.0 172.20.50.2 100 100 0 65001 i
* i 192.168.28.2 200 100 0 65001 i
* i192.168.25.0 172.20.50.2 200 100 0 65001 i
*>i 192.168.28.2 100 100 0 65001 i
* i192.168.26.0 172.20.50.2 200 100 0 65001 i
*>i 192.168.28.2 100 100 0 65001 i