Konfiguriranje BGP z uporabo Quagga na Vultr (CentOS 7)

Vultrova funkcionalnost Bring Your IP Space omogoča svobodo brez primere pri dodeljevanju lastnih virov IP strežnikom v oblaku Vultr. Na splošno priporočamo uporabo BIRD za objavo vašega IP prostora. Obstaja nekaj dobrih alternativ za BIRD, če ne morete doseči nečesa s BIRD (čeprav je to zelo redko) ali preprosto želite uporabiti drugo programsko opremo.

Zaradi administrativnih in tehničnih stroškov zelo odsvetujemo uporabo programov BIRD in Quagga (ali katere koli druge programske opreme) v isti infrastrukturi in/ali omrežju. Upoštevajte, da bi vam naslednja konfiguracija dala SPOF, saj primer, ki oznanja vaše prekrivajoče se podomrežje, ni odveč. Upoštevajte pa, da ima Vultr več usmerjevalnikov BGP v vsakem omari.

Čeprav je bil ta priročnik napisan z mislijo na CentOS 7 in preizkušen samo na tej različici CentOS, bo najverjetneje deloval tudi na starejših različicah, kot je CentOS 6. Seveda pa močno odsvetujemo uporabo zastarele programske opreme in toplo priporočamo posodobitev na novejšo, novejšo (in podprto) različico, kot je CentOS 7.

Ni praktične omejitve količine podomrežij ali njihove velikosti, ki jih lahko najavite iz enega primerka, v katerem se izvaja Quagga (ali kateri koli usmerjevalnik BGP, če že to zadevo), čeprav bi v kateri koli topologiji omrežja morali imeti nekakšno širjenje tveganja. To pomeni, da bi morali ustvariti odvečno nastavitev ali najaviti različna podomrežja iz različnih strežnikov, tako da sledite spodnjim navodilom na več strežnikih.

Če želite slediti tem navodilom, boste potrebovali:

  • ASN, ki ga želite / morate uporabiti;
  • Prostor (podomrežje) IP, ki ga želite objaviti;
  • BGP aktiviran v vašem računu Vultr

BIRD ali Quagga?

Za začetek je lahko izbiranje med BIRD ali Quaggo zelo težko. Oba sta dobro znana in sta se izkazala za zelo stabilna in robustna za številne primere uporabe, vključno z visokoprometnimi okolji in infrastrukturami, kjer ima zanesljivost ključno vlogo. Glavna razlika med BIRD in Quaggo je v tem, da je BIRD-jeva konfiguracija ločena od demona in je opazno bolj usmerjena k strukturi, podobni kodi.

Na primer, pri BIRD, če želite doseči nastavitev preklopa, uporabite naslednji blok v bird.confkonfiguracijski datoteki:

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

Kot lahko vidite, je konfiguracija nekoliko podobna kodnemu bloku, kot bi bilo videti v programskem jeziku. S Quaggo bi dodali ali spremenili nastavitve s programom v samem demonu.

Na koncu je večinoma odvisno od osebnih preferenc in ni "zmagovalca" ali programske opreme, ki bi jo morali uporabiti. Na splošno je BIRD lažje nastaviti zaradi načina konfiguracije, ki se ga je enostavno naučiti, in ga široko podpira skupnost.

Poleg tega je v korist Quagga na splošno v delujočem produkcijskem okolju Quagga lažje ponovno konfigurirati. Pri BIRD bi morali urediti ustrezne konfiguracijske datoteke in demonu znova naložiti svoje nastavitve. S Quaggo lahko vnesete njeno lupino, ponovno konfigurirate nastavitve brez preveč dodatnega dela ali napora. Kontinuiteta igra tukaj veliko vlogo, v praksi pa so stroški minimalni. V večini infrastruktur vam teh nastavitev ne bo treba preveč znova konfigurirati, zato je verjetno dobro, da sodite po drugih vidikih programske opreme namesto samo po tej podrobnosti.

Tako kot BIRD je tudi Quagga navzkrižno združljiv v več distribucijah. Če bi kdaj želeli spremeniti distribucijo(-e), ki se uporablja(-e) za usmerjevalnike, bi teoretično lahko preprosto premikali svoje konfiguracije in nič ne bi bilo treba spreminjati oziroma se ne bo spremenilo.

V tem priročniku bomo opisali postopek namestitve in konfiguracije Quagga. Če želite preizkusiti tudi BIRD, poskusite slediti vodniku " Konfiguriranje BGP na Vultru ".

Kot že omenjeno, obstaja nekaj dobrih drugih alternativ, vendar ima večina teh nekaj pomanjkljivosti, ki preprečujejo njihovo uporabo v produkcijskem okolju. Na primer, implementacija BGP XORP je razmeroma zastarela, kar na splošno ni dober začetek za vzpostavitev popolnoma nove infrastrukture (čeprav je njena implementacija BGP stabilna).

V primerjavi z mnogimi alternativami ima BIRD nizek pomnilniški odtis in ne zahteva veliko virov. Po drugi strani pa za vrtenje ali nadgradnjo na zmogljivejši primerek oblaka Vultr potrebujete le nekaj klikov na nadzorni plošči Vultr.

IPv4 in IPv6

Vultr podpira objavo tako IPv4 kot IPv6 prostora IP. Quaggina implementacija BGP je razmeroma posodobljena, kar omogoča tudi možnost objave prostora IPv6.

Čeprav je ta vodnik namenjen objavi prostora IPv4, lahko uporabite Quagga implementacijo IPv6 in uporabite navodila tega članka. Vendar to ni izrecno dokumentirano, zato se za to obrnite na alternativni vir.

Pomembna opomba

Če želite preživeti brez usmerjevalnika BGP, ki bi prenašal promet, je najboljši način, da objavite svoj prostor IP, kot sledi:

  • Najavite svoj /24 (ali večji) iz namenskega primerka Quagga;
  • Najavite posamezne /32 (ali večje) iz instanc, promet naj bo preusmerjen nase

Na ta način bi imeli eno nastavitev primerka za najavo prekrivajočega se podomrežja za vse IP-je, ki jih razbijete v posamezne /32 ali več. S to zasnovo lahko hitro objavite IP-je in promet usmerite na pravilne primerke.

Seveda lahko eksperimentirate z različnimi pristopi k razglasitvi vašega IP prostora po vaših željah. V teoriji je uporaba neomejena in ne pozna meja. Upoštevajte, da so strežniki Vultr sami upravljani in vam ne moremo pomagati pri morebitnih težavah. Poleg tega ne more škoditi uporaba rešitve, ki jo podpirata Vultr in skupnost, tako da lahko hitro ugotovite njihov osnovni vzrok, če se pojavijo težave.

1. korak: Onemogočanje SELinuxa

Zelo priporočamo, da onemogočite SELinux, da preprečite, da bi preprečil delovanje Quagga. Imamo vodnik za onemogočanje SELinuxa, sledite mu in se vrnite na to vadnico, ko je SELinux onemogočen: Onemogočanje SELinuxa v CentOS 7 .

2. korak: Namestitev Quagga

Nadaljujemo lahko z namestitvijo Quagga z uporabo yum:

yum install quagga

Če se prikaže napaka, zlasti pri na novo nameščenem primerku, poskusite:

yum update

Konfigurirajte systemdtako, da se Zebra (jedrni demon) samodejno zažene ob zagonu:

systemctl enable zebra

Končno zaženite Zebro:

systemctl start zebra

Postopek moramo ponoviti za BGPd, ​​kot sledi:

systemctl start bgpd
systemctl enable bgpd

Zebra in BGPd

Quagga je sestavljena iz različnih demonov, ki omogočajo usmerjanje. Ker bomo uporabljali BGP, bomo morali uporabiti demona Zebra in BGPd. Zebra in BGPd delujeta skupaj. Ko kateri koli od njih preneha delovati, vaše poti ne bodo več objavljene, zaradi česar bo vaš celoten prostor IP dejansko nedostopen.

Quagga podpira več usmerjevalnih protokolov, med drugim OSPF in BGP. Jedro topologije njihovih izvedb je Zebra. Zebra je osrednji demon, ki je plast, ki skrbi za komunikacijo jedra UNIX (TCP) z odjemalci Quagga. Na zadnji strani Zebra predstavlja API Zserv, ki omogoča, da ti protokoli usmerjanja sporočajo posodobitve usmerjanja. Ena od implementacij z API-jem Zserv je BGP.

Privzeta različica, ki jo Quagga uporablja za BGP, je BGPv4+, ki vključuje podporo za družino naslovov za multicast in IPv6.

3. korak: Konfiguriranje usmerjevalnika BGP

Da bi konfigurirali usmerjevalnik BGP po vaših željah, bomo uporabili vtyshlupino. Najprej kopirajte vzorčno konfiguracijsko datoteko BGP:

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

Ko je datoteka kopirana, vnesite lupino:

vtysh

V nekaterih starejših različicah Quagga boste morda našli nastavitev z AS7675. Tega ne potrebujemo, ker bo v nasprotju samo z našo nastavitvijo, zato jo moramo izbrisati, če obstaja. Preverite, ali ta konfiguracija obstaja v vaši namestitvi Quagga, tako da v lupini izvedete naslednji ukaz :

show running-config

Če to vrne niz z ali vključno z "router bgp 7675", ga izbrišite tako, da izvedete:

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

Zdaj morate vnesti podatke BGP, ki vam jih je posredoval Vultr.

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

Najverjetneje potrebujete geslo za vzpostavitev seje BGP. Vnesite:

neighbor NEIGHBORIP password YOURBGPPASSWORD
exit

Končno, če ste prepričani, da želite napisati te spremembe (velja samo, če delate na produkcijski nastavitvi), izvedite naslednje, da bodo spremembe začele veljati:

write

Prepričajte se, da so bile spremembe uspešne, tako da izvedete:

show ip bgp summary

Zdaj bi morali uspešno vzpostaviti sejo BGP.

4. korak: Razglasite svoj IP prostor

Čeprav smo vzpostavili sejo BGP, še ne objavljamo nobenih poti ali naslovov IP, tako da to v praksi ne bo imelo učinka. Na srečo je nastavitev prostora IP za objavo razmeroma enostaven postopek.

V vtysh, izvedite naslednje ukaze, da to dosežete:

configure terminal
router bgp YOURAS

Zdaj ste v konfiguraciji. Prepričajte se, da imate pri roki prostor IP, ki ga želite objaviti, in ga vnesite:

network YOURSUBNET/CIDR

Veljaven vnos bi bil na primer:

network 185.92.220.0/23

Seveda to ne bo delovalo v vaši specifični nastavitvi, saj je zgornji prostor IP v lasti Vultra. Zamenjajte to in vse bo delovalo v redu.

Zapustite in shranite spremembe:

exit
write

Preverite, ali so bile vaše predpone uspešno objavljene:

show ip bgp neighbors NEIGHBORIP advertised-routes

Poskusite ping naslov IP iz podomrežja in poskusite izvesti sledenje izven omrežja.

Odpravljanje težav

Odpravljanje težav Quagga je večinoma izven obsega tega članka, vendar če imate težave, lahko vedno poskusite ustaviti svoj primerek Quagga in znova poskusite objaviti prostor IP prek BIRD, da boste lahko izključili številne možne vzroke.

Če BGP ne deluje pravilno na Quagga in BIRD, obstaja možnost, da vaš požarni zid ni bil pravilno konfiguriran. Vrata 179 bi morala biti odprta. V CentOS 7 poskusite začasno onemogočiti požarni zid:

systemctl stop firewalld

Če uporabljate iptables, poskusite:

service iptables stop

Nato poskusite znova začeti sejo BGP. Če visi na 'Idle', 'Connect' ali 'Active', obstaja možnost, da so vrata še vedno blokirana. V stanju 'Ustanovljeno' je bila seja BGP uspešno nastavljena in prikazane so oglaševane poti.

Quagga je zdaj nameščen na vaš strežnik in bi moral delovati. V prvih nekaj dneh po objavi lastnega prostora IP morate spremljati njegovo funkcionalnost, da preprečite, da vaša celotna infrastruktura ne deluje.

S tem je naša vadnica Quagga zaključena, hvala za branje. Če želite izvedeti več o Vultrovi funkciji Bring Your IP Space, pojdite na stran BGP .


Namestite Plesk na CentOS 7

Namestite Plesk na CentOS 7

Uporaba drugega sistema? Plesk je lastniška nadzorna plošča spletnega gostitelja, ki uporabnikom omogoča upravljanje svojih osebnih in/ali strank spletnih mest, baz podatkov

Kako namestiti Squid Proxy na CentOS

Kako namestiti Squid Proxy na CentOS

Squid je priljubljen brezplačen program za Linux, ki vam omogoča ustvarjanje spletnega proxyja za posredovanje. V tem priročniku boste videli, kako namestiti Squid na CentOS, da vas obrne

Kako namestiti Lighttpd (LLMP Stack) na CentOS 6

Kako namestiti Lighttpd (LLMP Stack) na CentOS 6

Uvod Lighttpd je razdelek Apache, katerega namen je biti veliko manj intenziven vir. Je lahek, od tod tudi njegovo ime, in je precej preprost za uporabo. Namestite

Konfiguriranje statičnega omrežja in IPv6 na CentOS 7

Konfiguriranje statičnega omrežja in IPv6 na CentOS 7

VULTR je pred kratkim naredil spremembe na svoji strani in zdaj bi moralo vse delovati v redu iz škatle z omogočenim NetworkManagerjem. Če želite onemogočiti

Spreminjanje Icinga2 za uporabo modela Master/Client na CentOS 6 ali CentOS 7

Spreminjanje Icinga2 za uporabo modela Master/Client na CentOS 6 ali CentOS 7

Icinga2 je zmogljiv sistem za spremljanje in če se uporablja v modelu glavni-odjemalec, lahko nadomesti potrebo po nadzornih pregledih, ki temeljijo na NRPE. Glavni naročnik

Kako namestiti Apache Cassandra 3.11.x na CentOS 7

Kako namestiti Apache Cassandra 3.11.x na CentOS 7

Uporaba drugega sistema? Apache Cassandra je brezplačen in odprtokodni sistem za upravljanje baz podatkov NoSQL, ki je zasnovan tako, da zagotavlja razširljivost, visoko

Kako namestiti Microweber na CentOS 7

Kako namestiti Microweber na CentOS 7

Uporaba drugega sistema? Microweber je odprtokodna povleci in spusti CMS in spletna trgovina. Izvorna koda Microweber gostuje na GitHubu. Ta vodnik vam bo pokazal

Kako namestiti Mattermost 4.1 na CentOS 7

Kako namestiti Mattermost 4.1 na CentOS 7

Uporaba drugega sistema? Mattermost je odprtokodna alternativa sporočilni storitvi Slack SAAS, ki jo gosti sami. Z drugimi besedami, z Mattermostom si pribl

Ustvarjanje omrežja strežnikov Minecraft z BungeeCord na Debian 8, Debian 9 ali CentOS 7

Ustvarjanje omrežja strežnikov Minecraft z BungeeCord na Debian 8, Debian 9 ali CentOS 7

Kaj potrebujete Vultr VPS z vsaj 1 GB RAM-a. SSH dostop (z root/administrativnimi pravicami). 1. korak: Namestitev BungeeCord Najprej najprej

Omogočamo šifriranje na Plesku

Omogočamo šifriranje na Plesku

Nadzorna plošča Plesk ima zelo lepo integracijo za Lets Encrypt. Lets Encrypt je eden edinih ponudnikov SSL, ki izdaja potrdila v celoti

Namestite MariaDB 10 na CentOS 6

Namestite MariaDB 10 na CentOS 6

V času pisanja je MariaDB 10.1 razvojna različica MariaDB. Temelji na MariaDB 5.5 in vključuje funkcije, prenesene nazaj iz MySQL 5.6. Ther

Omogoča šifriranje na cPanelu

Omogoča šifriranje na cPanelu

Lets Encrypt je certifikacijski organ, ki je namenjen brezplačnemu zagotavljanju certifikatov SSL. cPanel je zgradil lepo integracijo za vas in vašo stranko

Kako namestiti Concrete5 na CentOS 7

Kako namestiti Concrete5 na CentOS 7

Uporaba drugega sistema? Concrete5 je odprtokodni CMS, ki ponuja številne značilne in uporabne funkcije za pomoč urednikom pri preprosti izdelavi vsebine.

Kako namestiti pregledno ploščo na CentOS 7

Kako namestiti pregledno ploščo na CentOS 7

Uporaba drugega sistema? Review Board je brezplačno in odprtokodno orodje za pregledovanje izvorne kode, dokumentacije, slik in še veliko več. Gre za spletno programsko opremo

Nastavite preverjanje pristnosti HTTP z Nginxom na CentOS 7

Nastavite preverjanje pristnosti HTTP z Nginxom na CentOS 7

V tem priročniku se boste naučili, kako nastaviti preverjanje pristnosti HTTP za spletni strežnik Nginx, ki deluje na CentOS 7. Zahteve Za začetek boste potrebovali

Kako namestiti YOURLS na CentOS 7

Kako namestiti YOURLS na CentOS 7

YOURLS (Your Own URL Shortener) je odprtokodna aplikacija za krajšanje URL-jev in analitiko podatkov. V tem članku bomo obravnavali postopek namestitve

Kako namestiti in konfigurirati ArangoDB na CentOS 7

Kako namestiti in konfigurirati ArangoDB na CentOS 7

Uporaba drugega sistema? Uvod ArangoDB je odprtokodna baza podatkov NoSQL s prilagodljivim podatkovnim modelom za dokumente, grafe in ključe-vrednosti. je

Uporaba Etckeeperja za nadzor različic /etc

Uporaba Etckeeperja za nadzor različic /etc

Uvod Imenik /etc/ igra ključno vlogo pri delovanju sistema Linux. Razlog za to je skoraj vsaka sistemska konfiguracija

Zakaj bi morali uporabljati SSHFS? Kako namestiti oddaljeni datotečni sistem s SSHFS na CentOS 6

Zakaj bi morali uporabljati SSHFS? Kako namestiti oddaljeni datotečni sistem s SSHFS na CentOS 6

Številni sistemski skrbniki upravljajo velike količine strežnikov. Ko je treba do datotek dostopati prek različnih strežnikov, se prijavite v vsakega posebej ca

Nastavitev strežnika Half Life 2 na CentOS 6

Nastavitev strežnika Half Life 2 na CentOS 6

Ta vadnica bo obravnavala postopek namestitve igralnega strežnika Half Life 2 na sistem CentOS 6. 1. korak: Namestitev predpogojev Za nastavitev ou

Vzpon strojev: aplikacije AI v resničnem svetu

Vzpon strojev: aplikacije AI v resničnem svetu

Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.

DDOS napadi: kratek pregled

DDOS napadi: kratek pregled

Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.

Razvoj shranjevanja podatkov – Infografika

Razvoj shranjevanja podatkov – Infografika

Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več