Konfigurácia BGP pomocou Quagga na Vultr (CentOS 7)

Funkcia Bring Your IP Space od Vultr umožňuje bezprecedentnú slobodu pri prideľovaní vlastných IP zdrojov k serverom v cloude Vultr. Vo všeobecnosti odporúčame použiť BIRD na oznámenie vášho IP priestoru. Existuje niekoľko solídnych alternatív k BIRD v prípade, že nemôžete niečo dosiahnuť s BIRD (hoci je to veľmi zriedkavé) alebo jednoducho chcete použiť iný softvér.

Vzhľadom na administratívnu a technickú réžiu dôrazne neodporúčame používať BIRD a Quagga (alebo akýkoľvek iný softvér v tomto prípade) v rovnakej infraštruktúre a/alebo sieti. Majte na pamäti, že nasledujúca konfigurácia vám poskytne SPOF, pretože inštancia oznamujúca vašu prekrývajúcu sa podsieť nie je nadbytočná. Mali by ste si však uvedomiť, že Vultr má v každom stojane viacero smerovačov BGP.

Hoci táto príručka bola napísaná s ohľadom na CentOS 7 a testovaná iba na tejto verzii CentOS, s najväčšou pravdepodobnosťou bude fungovať aj na starších verziách, ako je CentOS 6. Prirodzene však dôrazne neodporúčame používať zastaraný softvér a dôrazne odporúčame aktualizáciu na novšiu, novšiu (a podporovanú) verziu, ako je CentOS 7.

Neexistuje žiadne praktické obmedzenie množstva podsietí alebo ich veľkosti, ktoré môžete oznámiť z jednej inštancie spustenej Quagga (alebo akéhokoľvek smerovača BGP v tomto prípade), hoci v akejkoľvek topológii siete by ste mali mať určitý druh šírenia rizika. To znamená, že by ste mali vytvoriť redundantné nastavenie alebo oznámiť rôzne podsiete z rôznych serverov podľa nižšie uvedeného návodu na viacerých serveroch.

Ak chcete postupovať podľa tohto návodu, budete potrebovať:

  • ASN, ktoré chcete/potrebujete použiť;
  • IP priestor (podsieť), ktorý chcete oznámiť;
  • BGP aktivovaný vo vašom účte Vultr

BIRD alebo Quagga?

Pre začiatok môže byť výber medzi BIRD alebo Quagga veľmi ťažký. Obe sú dobre známe a ukázali sa ako veľmi stabilné a robustné pre mnohé prípady použitia, vrátane prostredí a infraštruktúr s vysokou prevádzkou, kde spoľahlivosť zohráva kľúčovú úlohu. Hlavný rozdiel medzi BIRD a Quagga je v tom, že konfigurácia BIRDu je oddelená od démona a je viac orientovaná na štruktúru podobnú kódu.

Napríklad v prípade BIRD, ak chcete dosiahnuť nastavenie núdzového prepnutia, použite nasledujúci blok v bird.confkonfiguračnom súbore:

export filter {
    bgp_path.prepend(asnumber);
    accept;
};

Ako vidíte, konfigurácia vyzerá trochu ako blok kódu, ako by sa zdalo v programovacom jazyku. S Quagga by ste pridali alebo zmenili nastavenia pomocou programu v samotnom démonovi.

Nakoniec to väčšinou závisí od osobných preferencií a neexistuje žiadny „víťaz“ ani softvér, ktorý by ste mali použiť. Vo všeobecnosti sa BIRD ľahšie nastavuje kvôli jeho ľahko naučiteľnému spôsobu konfigurácie a je široko podporovaný komunitou.

Okrem toho, v prospech Quagga, vo všeobecnosti, v bežiacom produkčnom prostredí je Quagga jednoduchšie prekonfigurovať. S BIRD budete musieť upraviť príslušné konfiguračné súbory a nechať démona znova načítať svoje nastavenia. S Quagga môžete vstúpiť do jej shellu, prekonfigurovať nastavenia bez prílišnej práce alebo zmätku. Kontinuita tu hrá veľkú rolu, no v praxi je réžia minimálna. Vo väčšine infraštruktúr nebudete musieť tieto nastavenia príliš prekonfigurovať, takže je pravdepodobne dobré posudzovať podľa iných aspektov softvéru namiesto iba tohto detailu.

Rovnako ako BIRD, aj Quagga je krížovo kompatibilná vo viacerých distribúciách. Ak by ste niekedy chceli zmeniť distribúciu (distribúcie) používané pre smerovače, teoreticky by ste mohli jednoducho prejsť cez svoje konfigurácie a nič by sa nemuselo meniť ani sa nezmení.

V tejto príručke popíšeme proces inštalácie a konfigurácie Quagga. V prípade, že chcete vyskúšať aj BIRD, skúste postupovať podľa návoduKonfigurácia BGP na Vultr “.

Ako už bolo spomenuté, existuje niekoľko dobrých iných alternatív, ale najväčšia časť z nich má určité nedostatky, ktoré bránia ich použitiu v produkčnom prostredí. Napríklad implementácia BGP od XORP je relatívne zastaraná, čo vo všeobecnosti nie je dobrým začiatkom pre vytvorenie úplne novej infraštruktúry (hoci jej implementácia BGP je stabilná).

V porovnaní s mnohými alternatívami má BIRD nízku pamäťovú stopu a nie je veľmi náročný na zdroje. Na druhej strane, spustenie alebo inovácia na výkonnejšiu cloudovú inštanciu Vultr trvá len niekoľko kliknutí z ovládacieho panela Vultr.

IPv4 a IPv6

Vultr podporuje oznamovanie IPv4 aj IPv6 IP priestoru. Implementácia BGP od Quagga je relatívne aktuálna, čo umožňuje oznamovať aj priestor IPv6.

Hoci je táto príručka zameraná na oznamovanie priestoru IPv4, môžete použiť implementáciu IPv6 spoločnosti Quagga a použiť pokyny tohto článku. Toto však nie je explicitne zdokumentované, preto sa obráťte na alternatívny zdroj.

Dôležitá poznámka

Aby ste mohli prežiť bez smerovača BGP, cez ktorý by ste mohli prechádzať, najlepší spôsob, ako oznámiť svoj priestor IP, je nasledujúci:

  • Oznámte svoj /24 (alebo väčší) z vyhradenej inštancie Quagga;
  • Oznámte jednotlivé /32 (alebo väčšie) z inštancií, ktoré by mali byť presmerované na nich

Týmto spôsobom by ste mali jednu inštanciu, ktorá by oznamovala prekrývajúcu sa podsieť pre všetky adresy IP, ktoré rozdelíte na jednotlivé /32 alebo väčšie. Pomocou tohto dizajnu môžete rýchlo oznamovať adresy IP a smerovať prevádzku do správnych inštancií.

Prirodzene, môžete voľne experimentovať s viacerými prístupmi k oznamovaniu vášho IP priestoru podľa vašich predstáv. Teoreticky je použitie neobmedzené a nepozná hranice. Upozorňujeme, že servery spoločnosti Vultr sú spravované samostatne a nemôžeme vám pomôcť so žiadnymi problémami, ktoré môžu nastať. Okrem toho nemôže byť na škodu použiť riešenie podporované Vultrom a komunitou, takže ak sa vyskytnú nejaké problémy, môžete rýchlo určiť ich hlavnú príčinu.

Krok 1: Zakázanie SELinuxu

Dôrazne odporúčame vypnúť SELinux, aby ste zabránili zastaveniu fungovania Quagga. Máme príručku na deaktiváciu SELinuxu, postupujte podľa nej a po deaktivácii SELinuxu sa vráťte k tomuto návodu: Vypnutie SELinuxu na CentOS 7 .

Krok 2: Inštalácia Quagga

Môžeme pokračovať inštaláciou Quagga pomocou yum:

yum install quagga

Ak sa zobrazí chyba, najmä v novo nasadenej inštancii, skúste:

yum update

Nakonfigurujte systemdtak, aby sa Zebra (hlavný démon) automaticky spustil pri zavádzaní:

systemctl enable zebra

Nakoniec spustite Zebru:

systemctl start zebra

Proces musíme zopakovať pre BGPd takto:

systemctl start bgpd
systemctl enable bgpd

Zebra a BGPd

Quagga pozostáva z rôznych démonov umožňujúcich smerovanie. Keďže budeme využívať BGP, budeme musieť použiť démonov Zebra a BGPd. Zebra a BGPd spolupracujú. Keď niektorý z nich prestane fungovať, vaše trasy už nebudú inzerované, čím sa stane celý váš priestor IP nedostupný.

Quagga podporuje viacero smerovacích protokolov, okrem iného OSPF a BGP. Jadrom topológie ich implementácií je Zebra. Zebra je jadrový démon, čo je vrstva starajúca sa o komunikáciu UNIXového jadra (TCP) s klientmi Quagga. Na backende Zebra predstavuje Zserv API, ktoré umožňuje týmto smerovacím protokolom komunikovať aktualizácie smerovania. Jednou z implementácií so Zserv API je BGP.

Predvolená verzia používaná Quagga pre BGP je BGPv4+, ktorá zahŕňa podporu rodiny adries pre multicast a IPv6.

Krok 3: Konfigurácia smerovača BGP

Na konfiguráciu smerovača BGP podľa vašich predstáv použijeme vtyshshell. Najprv skopírujte vzorový konfiguračný súbor BGP:

cp /usr/share/doc/quagga-*/bgpd.conf.sample /etc/quagga/bgpd.conf

Po skopírovaní súboru zadajte shell:

vtysh

V niektorých starších verziách Quagga môžete nájsť nastavenie s AS7675. Nepotrebujeme to, pretože to bude iba v konflikte s naším nastavením, takže ho musíme odstrániť, ak existuje. Skontrolujte, či táto konfigurácia existuje vo vašej inštalácii Quagga vykonaním nasledujúceho príkazu vo vnútri shellu :

show running-config

Ak to vráti reťazec s alebo vrátane "router bgp 7675", odstráňte ho vykonaním:

configure terminal
no router bgp 7675
router bgp YOURAS
no auto-summary
no synchronization

Teraz by ste mali zadať informácie o BGP, ktoré vám poskytol Vultr.

neighbor NEIGHBORIP remote-as VULTRAS
neighbor NEIGHBORIP description "Vultr"

Na vytvorenie relácie BGP budete s najväčšou pravdepodobnosťou potrebovať heslo. Zadajte ho:

neighbor NEIGHBORIP password YOURBGPPASSWORD
exit

Nakoniec, ak ste si istí, že chcete zapísať tieto zmeny (platí len vtedy, ak pracujete na produkčnom nastavení), vykonajte nasledujúce, aby sa zmeny prejavili:

write

Uistite sa, že zmeny boli úspešné vykonaním:

show ip bgp summary

Teraz by sme mali úspešne vytvoriť reláciu BGP.

Krok 4: Oznámenie vášho IP priestoru

Hoci sme vytvorili reláciu BGP, zatiaľ neoznamujeme žiadne trasy ani adresy IP, takže to nebude mať v praxi žiadny vplyv. Našťastie nastavenie priestoru IP na oznamovanie je relatívne jednoduchý proces.

V aplikácii vtyshspustite nasledujúce príkazy, aby ste to dosiahli:

configure terminal
router bgp YOURAS

Teraz ste v konfigurácii. Uistite sa, že máte po ruke priestor IP, ktorý chcete oznámiť, a zadajte ho:

network YOURSUBNET/CIDR

Napríklad platný vstup by bol:

network 185.92.220.0/23

Prirodzene, toto nebude fungovať vo vašom konkrétnom nastavení, pretože vyššie uvedený priestor IP vlastní spoločnosť Vultr. Vymeňte to a všetko by malo fungovať dobre.

Ukončite a uložte zmeny:

exit
write

Skontrolujte, či boli vaše predpony úspešne oznámené:

show ip bgp neighbors NEIGHBORIP advertised-routes

Pokúste sa ping na IP adresu z podsiete a pokúste sa vykonať traceroute mimo siete.

Riešenie problémov

Riešenie problémov s Quagga je do značnej miery mimo rámca tohto článku, ale ak máte problémy, vždy sa môžete pokúsiť zastaviť svoju inštanciu Quagga a znova skúsiť oznámiť priestor IP cez BIRD, aby ste mohli vylúčiť množstvo možných príčin.

Keď BGP nefunguje správne na Quagga rovnako ako BIRD, je možné, že váš firewall nebol správne nakonfigurovaný. Port 179 by mal byť otvorený. V systéme CentOS 7 sa pokúste dočasne vypnúť bránu firewall:

systemctl stop firewalld

Ak používate iptables, skúste:

service iptables stop

Potom skúste znova spustiť reláciu BGP. Ak visí na 'Idle', 'Connect' alebo 'Active', je možné, že port je stále zablokovaný. So stavom „Zavedený“ bola relácia BGP úspešne nastavená a zobrazujú sa inzerované trasy.

Quagga je teraz nainštalovaná na váš server a mala by fungovať. Počas prvých dní od oznámenia vlastného IP priestoru by ste mali monitorovať jeho funkčnosť, aby ste zabránili nefunkčnosti celej vašej infraštruktúry.

Týmto končíme náš návod na Quagga, ďakujeme za prečítanie. Ak sa chcete dozvedieť viac o funkcii Bring Your IP Space od Vultr, prejdite na stránku BGP .


Leave a Comment

Install Plesk on CentOS 7

Install Plesk on CentOS 7

Using a Different System? Plesk is a proprietary web host control panel that allows users to administer their personal and/or clients websites, databases

Ako nainštalovať Squid Proxy na CentOS

Ako nainštalovať Squid Proxy na CentOS

Squid je populárny bezplatný linuxový program, ktorý vám umožňuje vytvoriť webový proxy server na presmerovanie. V tejto príručke uvidíte, ako nainštalovať Squid na CentOS, aby vás zmenil

Ako nainštalovať Lighttpd (LLMP Stack) na CentOS 6

Ako nainštalovať Lighttpd (LLMP Stack) na CentOS 6

Úvod Lighttpd je fork Apache, ktorého cieľom je byť oveľa menej náročný na zdroje. Je ľahký, odtiaľ jeho názov, a jeho použitie je celkom jednoduché. Installin

Konfigurácia statickej siete a IPv6 na CentOS 7

Konfigurácia statickej siete a IPv6 na CentOS 7

VULTR nedávno vykonal zmeny na ich konci a všetko by teraz malo fungovať dobre po vybalení so zapnutým NetworkManagerom. Ak chcete deaktivovať

Úprava Icinga2 na použitie modelu Master/Client na CentOS 6 alebo CentOS 7

Úprava Icinga2 na použitie modelu Master/Client na CentOS 6 alebo CentOS 7

Icinga2 je výkonný monitorovací systém a pri použití v modeli master-client môže nahradiť potrebu monitorovacích kontrol založených na NRPE. Hlavný klient

Ako nainštalovať Apache Cassandra 3.11.x na CentOS 7

Ako nainštalovať Apache Cassandra 3.11.x na CentOS 7

Používate iný systém? Apache Cassandra je bezplatný a otvorený systém správy databáz NoSQL, ktorý je navrhnutý tak, aby poskytoval škálovateľnosť, vysokú

Ako nainštalovať Microweber na CentOS 7

Ako nainštalovať Microweber na CentOS 7

Používate iný systém? Microweber je open source drag and drop CMS a online obchod. Zdrojový kód Microweber je umiestnený na GitHub. Tento návod vám to ukáže

Ako nainštalovať Mattermost 4.1 na CentOS 7

Ako nainštalovať Mattermost 4.1 na CentOS 7

Používate iný systém? Mattermost je open source, samostatne hosťovaná alternatíva k službe posielania správ Slack SAAS. Inými slovami, s Mattermostom môžete cca

Vytvorenie siete serverov Minecraft pomocou BungeeCord na Debian 8, Debian 9 alebo CentOS 7

Vytvorenie siete serverov Minecraft pomocou BungeeCord na Debian 8, Debian 9 alebo CentOS 7

Čo budete potrebovať Vultr VPS s aspoň 1 GB RAM. Prístup SSH (s oprávneniami root/administrátor). Krok 1: Inštalácia BungeeCord Najprv veci

Umožňuje šifrovanie na Plesku

Umožňuje šifrovanie na Plesku

Ovládací panel Plesk obsahuje veľmi peknú integráciu pre Lets Encrypt. Lets Encrypt je jedným z mála poskytovateľov SSL, ktorí rozdávajú kompletné certifikáty

Umožňuje šifrovanie na cPanel

Umožňuje šifrovanie na cPanel

Lets Encrypt je certifikačná autorita, ktorá sa venuje bezplatnému poskytovaniu certifikátov SSL. cPanel vytvoril úhľadnú integráciu, takže vy a váš klient

Ako nainštalovať Concrete5 na CentOS 7

Ako nainštalovať Concrete5 na CentOS 7

Používate iný systém? Concrete5 je open source CMS, ktorý ponúka mnoho charakteristických a užitočných funkcií, ktoré pomáhajú redaktorom jednoducho vytvárať obsah

Ako nainštalovať revíznu tabuľu na CentOS 7

Ako nainštalovať revíznu tabuľu na CentOS 7

Používate iný systém? Review Board je bezplatný a otvorený zdrojový nástroj na kontrolu zdrojového kódu, dokumentácie, obrázkov a mnohých ďalších. Je to webový softvér

Nastavte overenie HTTP pomocou Nginx na CentOS 7

Nastavte overenie HTTP pomocou Nginx na CentOS 7

V tejto príručke sa dozviete, ako nastaviť HTTP autentifikáciu pre webový server Nginx spustený na CentOS 7. Požiadavky Na začiatok budete potrebovať

Ako nainštalovať YOURLS na CentOS 7

Ako nainštalovať YOURLS na CentOS 7

YOURLS (Your Own URL Shortener) je open source aplikácia na skrátenie adresy URL a analýzu údajov. V tomto článku sa budeme zaoberať procesom inštalácie

Ako nainštalovať a nakonfigurovať ArangoDB na CentOS 7

Ako nainštalovať a nakonfigurovať ArangoDB na CentOS 7

Používate iný systém? Úvod ArangoDB je open source databáza NoSQL s flexibilným dátovým modelom pre dokumenty, grafy a hodnoty kľúča. to je

Použitie Etckeeper na kontrolu verzií /etc

Použitie Etckeeper na kontrolu verzií /etc

Úvod Adresár /etc/ hrá rozhodujúcu úlohu v spôsobe fungovania systému Linux. Dôvodom je skutočnosť, že takmer každá konfigurácia systému

Prečo by ste mali používať SSHFS? Ako pripojiť vzdialený súborový systém s SSHFS na CentOS 6

Prečo by ste mali používať SSHFS? Ako pripojiť vzdialený súborový systém s SSHFS na CentOS 6

Mnoho systémových administrátorov spravuje veľké množstvo serverov. Keď je potrebné pristupovať k súborom cez rôzne servery, prihlásenie do každého z nich samostatne ca

Nastavenie servera Half Life 2 na CentOS 6

Nastavenie servera Half Life 2 na CentOS 6

Tento tutoriál sa bude zaoberať procesom inštalácie herného servera Half Life 2 na systém CentOS 6. Krok 1: Inštalácia predpokladov Aby ste mohli nastaviť ou

Ako nainštalovať Laravel GitScrum na CentOS 7

Ako nainštalovať Laravel GitScrum na CentOS 7

Laravel GitScrum alebo GitScrum je nástroj na zvýšenie produktivity s otvoreným zdrojom určený na pomoc vývojovým tímom implementovať metodiku Scrum podobným spôsobom.

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umelá inteligencia nie je v budúcnosti, je tu priamo v súčasnosti V tomto blogu si prečítajte, ako aplikácie umelej inteligencie ovplyvnili rôzne sektory.

Útoky DDOS: Stručný prehľad

Útoky DDOS: Stručný prehľad

Ste aj vy obeťou DDOS útokov a máte zmätok ohľadom metód prevencie? Ak chcete vyriešiť svoje otázky, prečítajte si tento článok.

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Možno ste už počuli, že hackeri zarábajú veľa peňazí, ale premýšľali ste niekedy nad tým, ako môžu zarábať také peniaze? poďme diskutovať.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Chcete vidieť revolučné vynálezy od Google a ako tieto vynálezy zmenili život každého dnešného človeka? Potom si prečítajte na blogu a pozrite si vynálezy spoločnosti Google.

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Koncept samoriadených áut vyraziť na cesty s pomocou umelej inteligencie je snom, ktorý máme už nejaký čas. Ale napriek niekoľkým prísľubom ich nikde nevidno. Prečítajte si tento blog a dozviete sa viac…

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Ako sa veda vyvíja rýchlym tempom a preberá veľa nášho úsilia, zvyšuje sa aj riziko, že sa vystavíme nevysvetliteľnej singularite. Prečítajte si, čo pre nás môže znamenať singularita.

Vývoj ukladania dát – Infografika

Vývoj ukladania dát – Infografika

Spôsoby ukladania údajov sa môžu vyvíjať už od zrodu údajov. Tento blog sa zaoberá vývojom ukladania údajov na základe infografiky.

Funkcionality vrstiev referenčnej architektúry veľkých dát

Funkcionality vrstiev referenčnej architektúry veľkých dát

Prečítajte si blog, aby ste čo najjednoduchším spôsobom spoznali rôzne vrstvy architektúry veľkých dát a ich funkcie.

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

V tomto digitálnom svete sa inteligentné domáce zariadenia stali kľúčovou súčasťou života. Tu je niekoľko úžasných výhod inteligentných domácich zariadení o tom, ako robia náš život, ktorý stojí za to žiť, a ktorý zjednodušujú.

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Spoločnosť Apple nedávno vydala doplnkovú aktualizáciu macOS Catalina 10.15.4 na opravu problémov, ale zdá sa, že táto aktualizácia spôsobuje ďalšie problémy, ktoré vedú k blokovaniu počítačov Mac. Prečítajte si tento článok a dozviete sa viac