BGP konfigureerimine Quagga abil Vultris (CentOS 7)

Vultri Bring Your IP Space funktsioon võimaldab enneolematut vabadust oma IP-ressursside määramisel Vultri pilves olevatele serveritele. Üldiselt soovitame kasutada IP-ruumi teatamiseks BIRD-i . BIRD-ile on mõned kindlad alternatiivid juhuks, kui te ei saa BIRDiga midagi saavutada (kuigi see on väga haruldane) või soovite lihtsalt kasutada muud tarkvara.

Haldus- ja tehniliste kulude tõttu ei soovita me BIRD-i ja Quagga (või mis tahes muu tarkvara) kasutamist samas infrastruktuuris ja/või võrgus. Pidage meeles, et järgmine konfiguratsioon annaks teile SPOF-i, kuna teie kattuvast alamvõrgust teatav eksemplar ei ole üleliigne. Peaksite siiski arvestama, et Vultril on igas riiulis mitu BGP-ruuterit.

Kuigi see juhend on kirjutatud CentOS 7 silmas pidades ja seda on testitud ainult sellel CentOS-i versioonil, töötab see tõenäoliselt ka vanemate versioonidega, nagu CentOS 6. Kuid loomulikult ei soovita me vananenud tarkvara kasutamist ja soovitame tungivalt värskendada uuemale, uuemale (ja toetatud) versioonile, nagu CentOS 7.

Quagga (või mis tahes BGP-ruuteri) ühest eksemplarist teatatavate alamvõrkude arvul või suurusel pole praktilisi piiranguid, kuigi mis tahes võrgutopoloogias peaks teil olema mingisugune riskide levik. See tähendab, et peaksite looma kas üleliigse seadistuse või teatama erinevate serverite erinevatest alamvõrkudest, järgides allolevat juhendit mitme serveri puhul.

Selle juhendi järgimiseks vajate:

  • ASN, mida soovite/peate kasutama;
  • IP-ruum (alamvõrk), millest soovite teatada;
  • BGP on teie Vultri kontol aktiveeritud

LINN või Quagga?

Alustuseks võib BIRDi või Quagga vahel valimine olla väga raske. Mõlemad on hästi tuntud ja on osutunud väga stabiilseteks ja vastupidavateks paljudel kasutusjuhtudel, sealhulgas suure liiklusega keskkondades ja infrastruktuurides, kus usaldusväärsus mängib võtmerolli. Peamine erinevus BIRDi ja Quagga vahel seisneb selles, et BIRDi konfiguratsioon on deemonist eraldatud ja paremini sihitud kooditaolisele struktuurile.

Näiteks BIRD-i puhul, kui soovite saavutada tõrkesiirde seadistuse, kasutage bird.confkonfiguratsioonifailis järgmist plokki :

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

Nagu näete, näeb konfiguratsioon välja nagu koodiplokk, nagu see näiks programmeerimiskeelega. Quagga abil saate sätteid lisada või muuta, kasutades deemoni enda programmi.

Lõpuks taandub see enamasti isiklikele eelistustele ja pole "võitjat" ega tarkvara, mida peaksite kasutama. Üldiselt on BIRDi hõlpsam seadistada selle hõlpsasti õpitava konfigureerimisviisi tõttu ja kogukond toetab seda laialdaselt.

Lisaks on Quagga kasuks üldiselt töötavas tootmiskeskkonnas Quaggat lihtsam ümber konfigureerida. BIRDiga peate redigeerima sobivaid konfiguratsioonifaile ja laskma deemonil oma sätted uuesti laadida. Quagga abil saate siseneda selle kesta ja seadistada sätteid ilma liigse lisatööta. Siin mängib suurt rolli järjepidevus, kuid praktikas on üldkulud minimaalsed. Enamikus infrastruktuurides ei pea te neid sätteid liiga palju ümber konfigureerima, seega on ilmselt hea mõte hinnata tarkvara muude aspektide, mitte ainult selle detaili järgi.

Nii nagu BIRD, on ka Quagga ristühilduv mitme distributsiooniga. Kui soovite kunagi muuta ruuterite jaoks kasutatavat distributsiooni (jaotusi), võiks teoreetiliselt lihtsalt oma konfiguratsioonid üle liikuda ja midagi ei peaks muutma ega muutu.

Selles juhendis kirjeldame Quagga installimise ja konfigureerimise protsessi. Kui soovite proovida ka BIRD-i, järgige juhendit " BGP konfigureerimine Vultris ".

Nagu mainitud, on seal veel mõned head alternatiivid, kuid enamikul neist on mõned vead, mis takistavad nende kasutamist tootmiskeskkonnas. Näiteks XORP-i BGP-rakendus on suhteliselt vananenud, mis ei ole üldiselt hea algus täiesti uue infrastruktuuri loomiseks (kuigi selle BGP-rakendus on stabiilne).

Võrreldes paljude alternatiividega on BIRD-l väike mälumaht ja see ei ole väga ressursimahukas. Teisest küljest võtab võimsama Vultri pilveeksemplari üles keeramine või täiendamine Vultri juhtpaneelil vaid mõne klõpsuga.

IPv4 ja IPv6

Vultr toetab nii IPv4 kui ka IPv6 IP-ruumi väljakuulutamist. Quagga BGP-rakendus on suhteliselt ajakohane, võimaldades teatada ka IPv6 ruumist.

Kuigi selle juhendi eesmärk on teavitada IPv4 ruumist, võite kasutada Quagga IPv6 juurutamist ja kasutada selle artikli juhiseid. See ei ole aga selgesõnaliselt dokumenteeritud, seega vaadake selle jaoks mõnda alternatiivset allikat.

Oluline märkus

Et saaksite ellu jääda ilma liiklust läbiva BGP-ruuterita, on parim viis oma IP-ruumist teada anda järgmiselt.

  • Teatage oma /24 (või suurem) spetsiaalselt Quagga eksemplarilt;
  • Teatage üksikjuhtumite /32-de (või suuremate) kohta liiklus tuleks suunata neile

Nii oleks teil üks eksemplari seadistus, mis teataks kattuvast alamvõrgust kõigi IP-de jaoks, mille te jagate üksikuteks /32-deks või suuremateks. Seda kujundust kasutades saate kiiresti teada anda IP-d ja suunata liikluse õigetesse eksemplaridesse.

Loomulikult võite oma IP-ruumi oma maitse järgi väljakuulutamiseks katsetada erinevate lähenemisviisidega. Teoreetiliselt on kasutus piiramatu ja ei tunne piire. Pange tähele, et Vultri serverid on isehallatavad ja me ei saa teid aidata võimalike probleemide korral. Pealegi ei tee haiget Vultri ja kogukonna toetatud lahenduse kasutamine, nii et kui probleemid võivad tekkida, saate nende algpõhjuse kiiresti kindlaks teha.

1. samm: SELinuxi keelamine

Soovitame tungivalt SELinuxi keelata, et see ei takistaks Quagga töötamist. Meil on SELinuxi keelamise juhend, järgige seda ja naaske selle õpetuse juurde pärast SELinuxi keelamist: SELinuxi keelamine CentOS 7-s .

2. samm: Quagga installimine

Saame jätkata Quagga installimisega, kasutades yum:

yum install quagga

Kui saate veateate, eriti äsja juurutatud eksemplari puhul, proovige:

yum update

Seadistage systemdnii, et Zebra (tuumdeemon) käivitub alglaadimisel automaatselt:

systemctl enable zebra

Lõpuks käivitage Zebra:

systemctl start zebra

Peame BGPd jaoks protsessi kordama järgmiselt:

systemctl start bgpd
systemctl enable bgpd

Sebra ja BGPd

Quagga koosneb erinevatest deemonitest, mis võimaldavad marsruutimist. Kuna me hakkame kasutama BGP-d, peame kasutama Zebra ja BGPd deemoneid. Sebra ja BGPd töötavad koos. Kui üks neist lakkab töötamast, siis teie marsruute enam ei reklaamita, mistõttu kogu teie IP-ruum muutub kättesaamatuks.

Quagga toetab mitut marsruutimisprotokolli, sealhulgas OSPF-i ja BGP-d. Nende rakenduste topoloogia tuum on Zebra. Zebra on tuumdeemon, mis on kiht, mis hoolitseb UNIX-i kerneli suhtluse (TCP) eest Quagga klientidega. Taustaprogrammis esitleb Zebra Zserv API-t, mis võimaldab nendel marsruutimisprotokollidel edastada marsruutimise värskendusi. Üks Zserv API rakendustest on BGP.

Quagga BGP jaoks kasutatav vaikeversioon on BGPv4+, mis sisaldab multisaadete ja IPv6 aadressipere tuge.

3. samm: BGP-ruuteri konfigureerimine

BGP-ruuteri oma maitse järgi konfigureerimiseks kasutame vtyshkesta. Kõigepealt kopeerige BGP konfiguratsioonifaili näidis:

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

Pärast faili kopeerimist sisestage kest:

vtysh

Mõnes vanemas Quagga versioonis võite leida seadistuse AS7675-ga. Me ei vaja seda, kuna see on ainult meie seadistusega vastuolus, seega peame selle kustutama, kui see on olemas. Kontrollige, kas see konfiguratsioon on teie Quagga installis olemas, käivitades kestas järgmise käsu :

show running-config

Kui see tagastab stringi, mis sisaldab või sisaldab "ruuter bgp 7675", kustutage see käivitades:

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

Nüüd peaksite sisestama BGP teabe, mille Vultr teile andis.

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

Tõenäoliselt vajate BGP-seansi loomiseks parooli. Sisestage see:

neighbor NEIGHBORIP password YOURBGPPASSWORD
exit

Lõpuks, kui olete kindel, et soovite need muudatused kirjutada (kehtib ainult siis, kui töötate tootmisseadistusega), tehke muudatuste jõustumiseks järgmist.

write

Veenduge, et muudatused olid edukad, käivitades:

show ip bgp summary

Nüüd oleksime pidanud BGP seansi edukalt sisse seadma.

4. samm: teatage oma IP-ruumist

Kuigi oleme loonud BGP-seansi, ei avalda me veel ühtegi marsruuti ega IP-aadressi, seega pole sellel praktikas mingit mõju. Õnneks on IP-ruumi seadistamine teatamiseks suhteliselt lihtne protsess.

In vtysh, teostada järgmised käsud seda saavutada:

configure terminal
router bgp YOURAS

Olete nüüd konfiguratsioonis. Veenduge, et IP-ruum, millest soovite teatada, oleks käepärast ja sisestage see:

network YOURSUBNET/CIDR

Näiteks oleks kehtiv sisend järgmine:

network 185.92.220.0/23

Naturally, this won't work in your specific setup as above IP space is owned by Vultr. Replace this and everything should work fine.

Exit and save the changes:

exit
write

Check if your prefixes have successfully been announced:

show ip bgp neighbors NEIGHBORIP advertised-routes

Attempt to ping an IP address from the subnet, and try to perform a traceroute from outside the network.

Troubleshooting

Troubleshooting Quagga is largely outside of the scope of this article, but if you're experiencing difficulties you could always attempt to stop your Quagga instance and retry announcing the IP space via BIRD to be able to exclude a number of possible causes.

When BGP doesn't function correctly on Quagga as well as BIRD, there's a chance your firewall hasn't been properly configured. Port 179 should be open. On CentOS 7, attempt temporarily disabling the firewall:

systemctl stop firewalld

If you use iptables, try:

service iptables stop

Then attempt to initiate the BGP session again. If it hangs on 'Idle', 'Connect' or 'Active' there's a possibility the port is still blocked. With the 'Established' state, the BGP session has successfully been setup and advertised routes are shown.

Quagga has now been installed onto your server, and should function. During the first few days of announcing your own IP space, you should monitor its functionality to prevent your entire infrastructure from not functioning.

That concludes our Quagga tutorial, thank you for reading. To learn more about Vultr's Bring Your IP Space feature, please head over to the BGP page.

Jäta kommentaar

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit