BGP komunity

Naposledy aktualizováno: (UTC)

hlavním účelem směrovačů s podporou BGP je inzerovat předpony na jiné směrovače. Tyto předpony mohou být z několika různých adresových rodin, například IPv4 a VPNv4. Při reklamě předponu, BGP přikládá další informace, nazývané atributy. BGP používá tyto atributy k výběru nejlepší cesty.

BGP může obsahovat více informací s každou předponou ve formě komunitních řetězců. Řetězec komunity je číselná hodnota, kterou peer používá jako značku.

komunity vytvářejí zásady směrování mezi vrstevníky. Označením předpon komunitami říkáme vrstevníkovi, aby s předponami zacházel zvláštním způsobem.

jako příklad, Řekněme, že určitá skupina předpon musí mít jejich hmotnost nastavena na 10 pomocí peer routeru. Můžeme si vybrat číslo komunity, které chcete použít, a označit s ním předpony. Pokud uvidí předponu od nás označenou touto komunitou, nastaví váhu na 10.

musíme se s naším kolegou dohodnout, které komunity použít. Z technického hlediska je na nich, aby se rozhodli, jak s jakýmkoli komunitním řetězcem naloží. Mohli by se rozhodnout je úplně ignorovat, pokud chtějí.

poskytovatelé mohou mít seznam předdefinovaných komunit, které používají, a akcí, které podniknou. Jako zákazník, můžeme nastavit naše komunity tak, aby odpovídaly jejich zásadám, naladit, jak nakládají s našimi předponami.

komunity jsou volitelné a přechodné. Jsou přechodné, takže jeden peer je může předat dalšímu vrstevníkovi.

každá standardní komunita má 32bitovou hodnotu. Často jsou rozděleny do dvou 16bitových hodnot, aby byly snáze čitelné. Například komunita 4259840100 je stejná jako 65000: 100. První 16 bitů často představuje AS a druhé 16 bitů je vlastní hodnota.

existují také rozšířené komunity, které jsou pro zvláštní účely, například MPLS VPN. Jedná se o 64bitové hodnoty. Obsahují 16bitovou hodnotu typu, 16bitovou hodnotu AS nebo IP a 32 bitů pro vlastní hodnotu komunity.

některé komunity jsou vyhrazeny:

  • 0:0 – 0:65535
  • 65535:0 – 65535:63335

konfigurace

pojďme lab to vidět, jak to funguje. Mějte prosím na paměti, že se nejedná o scénář v reálném světě.

pro tuto laboratoř použijeme dva směrovače s různými ASN. R1 má několik sítí, které chce inzerovat na R2.

R2 přiřazuje předponám závaží v závislosti na připojených komunitách:

  • pokud je komunita nastavena na hodnotu 10: 100, nastaví váhu na hodnotu 100
  • , pokud je komunita nastavena na hodnotu 10:200, nastaví váhu na 10

Stáhněte si BGP Communities Lab

R1-přiřadit komunity

seznamy prefixů identifikují trasy, ke kterým mají být komunity přiřazeny. V tomto případě je 172.16.0.0 a 172.16.10.0 ve Skupině1 a 172.16.20.0 je ve Skupině2.

trasy-mapy odpovídají seznamům prefixů a poté nastaví komunitu na trase. Skupině 1 je přiděleno Společenství 100 a skupině 2 je přiděleno Společenství 200.

ve výchozím nastavení jsou komunity jedno velké číslo, které je těžko čitelné. Příkaz ip BGP-community new-format změní tuto hodnotu na formát ASN: Community. To usnadňuje ověření později.

ve výchozím nastavení směrovače Cisco neposílají komunity. Povolte to na souseda pomocí rozšířených příkazů send-community A send-community.

nakonec je mapa trasy aplikována na sousední odchozí. Při odesílání tras k sousedovi jsou obce připojeny.

R1-přiřaďte komunity
! Identify networks with prefix listsip prefix-list Group1 seq 5 permit 172.16.0.0/24ip prefix-list Group1 seq 10 permit 172.16.10.0/24ip prefix-list Group2 seq 5 permit 172.16.20.0/24! Match networks, and set community valuesroute-map R2_Peer permit 10 match ip address prefix-list Group1 set community 10:100route-map R2_Peer permit 20 match ip address prefix-list Group2 set community 10:200! Enable the new community formatip bgp-community new-formatrouter bgp 10 ! Enable sending communities neighbor 10.10.10.2 send-community neighbor 10.10.10.2 send-community extended ! Apply the route map to this neighbour neighbor 10.10.10.2 route-map R2_Peer out

ověřte komunity

zde vidíme, že komunity jsou nastaveny na trasách, které R2 přijímá.

ověření R2
! Enable the new community formatip bgp-community new-format! Verify that the community is setR2#show ip bgp 172.16.0.0BGP routing table entry for 172.16.0.0/24, version 2Paths: (1 available, best #1, table default) Not advertised to any peer Refresh Epoch 1 10 10.10.10.1 from 10.10.10.1 (172.16.20.1) Origin IGP, metric 0, localpref 100, valid, external, best Community: 10:100 rx pathid: 0, tx pathid: 0x0R2#show ip bgp 172.16.20.0BGP routing table entry for 172.16.20.0/24, version 4Paths: (1 available, best #1, table default) Not advertised to any peer Refresh Epoch 1 10 10.10.10.1 from 10.10.10.1 (172.16.20.1) Origin IGP, metric 0, localpref 100, valid, external, best Community: 10:200 rx pathid: 0, tx pathid: 0x0

nastavte zásady

Nyní, když R2 přijímá trasy s komunitami, může na ně použít zásady.

nejprve vytvoříme seznam komunit pro identifikaci konkrétních komunit. Jsou to jako použití ACL nebo prefixů k identifikaci IP adres. V tomto příkladu používáme pojmenovaný seznam komunit. Na rozdíl od číslovaných seznamů komunit podporují RegEx a mohou mít neomezené položky. Číslované seznamy mají limit 100 položek.

mapy tras odpovídají komunitě a nastavují váhu.

mapa trasy je aplikována na souseda pro příchozí předpony.

R2-Set Policies
! Create a named community list to identify the communitiesip community-list expanded High_Weight permit 10:100ip community-list expanded Low_Weight permit 10:200! Create a route-map to match the communities, and set the weightroute-map R1_Peer permit 10 match community High_Weight set weight 100route-map R1_Peer permit 20 match community Low_Weight set weight 10 ! Apply the route map to the neighbourrouter bgp 20 neighbor 10.10.10.1 route-map R1_Peer in

k těmto změnám nedojde u tras, které jsou již ve vaší směrovací tabulce. Nejjednodušší způsob, jak to přinutit, je resetovat sousedský vztah. Mějte na paměti, že je to rušivé, takže to nedělejte ve výrobní síti.

ověřte zásady

pokud se podíváte na tabulku BGP na R2, můžete vidět, že váhy byly nastaveny podle očekávání.

R2-verifikace
! Verify that the weights are setR2#show ip bgpBGP table version is 4, local router ID is 10.10.10.2Status 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, ? - incompleteRPKI validation codes: V valid, I invalid, N Not found Network Next Hop Metric LocPrf Weight Path *> 172.16.0.0/24 10.10.10.1 0 100 10 i *> 172.16.10.0/24 10.10.10.1 0 100 10 i *> 172.16.20.0/24 10.10.10.1 0 10 10 i

dobře známé komunity

existuje několik předdefinovaných komunit, nazývaných dobře známé komunity. Tyto komunity mají speciální předdefinované významy, které podporují všichni řečníci BGP.

mezi běžnější patří:

Internet – proprietární komunita Cisco. To umožňuje routeru inzerovat předponu všem sousedům. Toto je komunita „catch-all“ Na konci seznamu komunit. Toto je výjimka, protože ne všichni dodavatelé ji budou podporovat.

No-Export-zabraňuje inzerci předpony na všechny sousedy eBGP. To udržuje předponu v AS.

no-Advertise-tím se zabrání inzerci předpony všem sousedům.

Local-AS-Used with confederations to keep the prefix within the local AS. Umožňuje sdílení prefixů se sousedy eBGP v rámci konfederace.

projektování pro obce

při navrhování komunit zvažte tyto základní kroky:

  1. Definujte zásady správy směrování
    • rozhodněte, co filtrovat a kde filtrovat
    • rozhodněte, jaké atributy se mají změnit, aby ovlivnily tok provozu
  2. Navrhněte schéma Společenství
    • to znamená rozhodnout, které hodnoty použít, na základě zásad
  3. nasazení schématu pomocí map tras
  4. vytvoření dokumentace

při příjmu tras z externího zdroje zvažte jejich označení na základě místa, na kterém byly přijaty. Podobně, když původní trasy, zvažte jejich označení ID pro web, který je vytvořil.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.