BIRD apo Quagga?
IPv4 dhe IPv6
Shënim i rëndësishëm
Zgjidhja e problemeve
Funksionaliteti i Vultr's Bring Your IP Space lejon liri të paprecedentë në caktimin e burimeve tuaja të IP-së për serverët në renë kompjuterike Vultr. Në përgjithësi rekomandojmë përdorimin e BIRD për të shpallur hapësirën tuaj IP. Ka disa alternativa të forta për BIRD në rast se nuk mund të arrini diçka me BIRD (edhe pse kjo është shumë e rrallë) ose thjesht dëshironi të përdorni softuer tjetër.
Për shkak të shpenzimeve administrative dhe teknike, ne dekurajojmë shumë përdorimin e BIRD dhe Quagga (ose çdo softuer tjetër për këtë çështje) në të njëjtën infrastrukturë dhe/ose rrjet. Mbani në mend se konfigurimi i mëposhtëm do t'ju japë një SPOF, pasi shembulli që njofton nënrrjetin tuaj të mbivendosur nuk është i tepërt. Sidoqoftë, duhet të keni parasysh se Vultr ka shumë ruterë BGP në çdo raft.
Megjithëse ky udhëzues është shkruar me CentOS 7 në mendje dhe është testuar vetëm në këtë version CentOS, ka shumë të ngjarë që ai të funksionojë edhe në versionet më të vjetra si CentOS 6. Sidoqoftë, natyrisht, ne dekurajojmë fuqimisht përdorimin e softuerit të vjetëruar dhe rekomandojmë shumë përditësimin në një version më të ri, më të fundit (dhe të mbështetur) si CentOS 7.
Nuk ka asnjë kufi praktik për sasinë e nënrrjetave ose madhësinë e tyre që mund të njoftoni nga një shembull që ekzekuton Quagga (ose ndonjë ruter BGP për këtë çështje), megjithëse në çdo topologji rrjeti duhet të keni një lloj rreziku të përhapjes. Kjo do të thotë që ju duhet të krijoni ose një konfigurim të tepërt ose të shpallni nënrrjeta të ndryshme nga serverë të ndryshëm duke ndjekur udhëzuesin më poshtë në shumë serverë.
Për të ndjekur këtë udhëzues, do t'ju duhet:
- ASN që dëshironi / duhet të përdorni;
- Hapësira IP (nënrrjet) që dëshironi të shpallni;
- BGP aktivizohet në llogarinë tuaj Vultr
BIRD apo Quagga?
Si fillim, zgjedhja midis BIRD ose Quagga mund të jetë shumë e vështirë. Të dyja janë të njohura dhe janë provuar të jenë shumë të qëndrueshme dhe të qëndrueshme për shumë raste përdorimi, duke përfshirë mjediset dhe infrastrukturat me trafik të lartë ku besueshmëria luan një rol kyç. Dallimi kryesor midis BIRD dhe Quagga është se konfigurimi i BIRD është i ndarë nga daemon dhe i dallueshëm më shumë i synuar drejt një strukture të ngjashme me kodin.
Për shembull, me BIRD, nëse dëshironi të arrini një konfigurim të dështimit, do të përdorni bllokun e mëposhtëm në bird.confskedarin e konfigurimit:
export filter {
bgp_path.prepend(asnumber);
accept;
};
Siç mund ta shihni, konfigurimi duket disi si një bllok kodi siç do të shfaqej me një gjuhë programimi. Me Quagga, ju mund të shtoni ose ndryshoni cilësimet duke përdorur një program në vetë demonin.
Në fund, varet kryesisht nga preferenca personale dhe nuk ka 'fitues' ose softuer që duhet të përdorni. Në përgjithësi, BIRD është më i lehtë për t'u konfiguruar për shkak të mënyrës së konfigurimit të lehtë për t'u mësuar dhe mbështetet gjerësisht nga komuniteti.
Për më tepër, në favor të Quagga, përgjithësisht, në një mjedis prodhimi funksional, Quagga është më e lehtë për t'u rikonfiguruar. Me BIRD, do t'ju duhet të redaktoni skedarët e duhur të konfigurimit dhe t'i ngarkoni demonit cilësimet e tij. Me Quagga, mund të futni guaskën e saj, të rikonfiguroni cilësimet pa shumë punë ose bujë shtesë. Vazhdimësia luan një rol të madh këtu, por në praktikë, shpenzimet janë minimale. Në shumicën e infrastrukturave, nuk do t'ju duhet t'i rikonfiguroni shumë këto cilësime, kështu që ndoshta është një ide e mirë të gjykoni nga aspektet e tjera të softuerit në vend të vetëm këtij detaji.
Ashtu si BIRD, Quagga është i përputhshëm me shpërndarje të shumta. Nëse dëshironi të ndryshoni shpërndarjen(et) e përdorura për ruterat, në teori ju thjesht mund të lëvizni mbi konfigurimet tuaja dhe asgjë nuk do të duhet të ndryshohet ose nuk do të ndryshojë.
Në këtë udhëzues, ne do të përshkruajmë procesin e instalimit dhe konfigurimit të Quagga. Në rast se dëshironi të provoni gjithashtu BIRD, provoni të ndiqni udhëzuesin " Konfigurimi i BGP në Vultr ".
Siç u përmend, ka disa alternativa të tjera të mira atje, por pjesa më e madhe e tyre kanë disa të meta, duke i ndaluar ato të përdoren në një mjedis prodhimi. Për shembull, zbatimi i BGP i XORP është relativisht i vjetëruar, gjë që në përgjithësi nuk është një fillim i mirë për ngritjen e një infrastrukture krejt të re (megjithëse zbatimi i tij BGP është i qëndrueshëm).
Krahasuar me shumë alternativa, BIRD ka një gjurmë të ulët memorie dhe nuk kërkon shumë burime. Nga ana tjetër, rrotullimi ose përmirësimi në një shembull më të fuqishëm të resë kompjuterike Vultr kërkon vetëm disa klikime nga paneli i kontrollit Vultr.
IPv4 dhe IPv6
Vultr mbështet njoftimin e hapësirës IP të IPv4 dhe IPv6. Zbatimi i BGP i Quagga është relativisht i përditësuar, duke lejuar gjithashtu mundësinë për të shpallur hapësirën IPv6.
Megjithëse ky udhëzues synon të shpallë hapësirën IPv4, ju mund të përdorni implementimin IPv6 të Quagga dhe të përdorni udhëzimet e këtij artikulli. Megjithatë, kjo nuk është e dokumentuar në mënyrë eksplicite, prandaj ju lutemi referojuni një burimi alternativ për këtë.
Shënim i rëndësishëm
Për të qenë në gjendje të mbijetoni pa një ruter BGP për të kaluar trafikun, mënyra më e mirë për të shpallur hapësirën tuaj IP është si më poshtë:
- Njoftoni /24 tuaj (ose më të madh) nga një shembull i dedikuar Quagga;
- Njoftoni /32 individuale (ose më të mëdha) nga rastet që trafiku duhet të drejtohet tek ata
Në këtë mënyrë, do të kishit një konfigurim shembulli për të shpallur nënrrjetin e mbivendosur për të gjitha IP-të që shpërndani në individuale /32 ose më të mëdha. Duke përdorur këtë dizajn, ju jeni në gjendje të njoftoni shpejt IP-të dhe të drejtoni trafikun në rastet e duhura.
Natyrisht, ju jeni të lirë të eksperimentoni me qasje të shumta për të shpallur hapësirën tuaj IP sipas dëshirës tuaj. Në teori përdorimi është i pakufishëm dhe nuk njeh kufij. Vini re se serverët e Vultr janë të vetë-menaxhuar dhe ne nuk mund t'ju ndihmojmë me asnjë problem që mund të lindë. Përveç kësaj, nuk mund të jetë e dëmshme përdorimi i një zgjidhjeje të mbështetur nga Vultr dhe komuniteti, kështu që nëse mund të lindin ndonjë problem, mund të identifikoni shpejt shkakun e tyre rrënjësor.
Hapi 1: Çaktivizimi i SELinux
Ne rekomandojmë shumë çaktivizimin e SELinux-it për të parandaluar që Quagga të ndalojë funksionimin. Ne kemi një udhëzues për të çaktivizuar SELinux, ju lutemi ndiqni atë dhe kthehuni te ky tutorial pasi SELinux të jetë çaktivizuar: Çaktivizimi i SELinux në CentOS 7 .
Hapi 2: Instalimi i Quagga
Mund të vazhdojmë duke instaluar Quagga duke përdorur yum:
yum install quagga
Nëse merrni një gabim, veçanërisht në një shembull të sapo vendosur, provoni:
yum update
Konfiguro systemdqë Zebra (daemon kryesor) të fillojë automatikisht në nisje:
systemctl enable zebra
Më në fund, filloni Zebra:
systemctl start zebra
Ne duhet të përsërisim procesin për BGPd, si më poshtë:
systemctl start bgpd
systemctl enable bgpd
Zebra dhe BGPd
Quagga përbëhet nga një shumëllojshmëri demonësh që lejojnë rrugëzimin. Ndërsa do të përdorim BGP, do të na duhet të përdorim demonët Zebra dhe BGPd. Zebra dhe BGPd punojnë së bashku. Kur njëri prej tyre ndalon së funksionuari, rrugët tuaja nuk do të reklamohen më, duke e bërë në mënyrë efektive të gjithë hapësirën tuaj IP të padisponueshme.
Quagga mbështet protokollet e shumëfishta të rrugëtimit, ndër të tjera OSPF dhe BGP. Thelbi i topologjisë së zbatimeve të tyre është Zebra. Zebra është daemon kryesor, i cili është një shtresë që kujdeset për komunikimin e kernelit UNIX (TCP) me klientët Quagga. Në pjesën e pasme Zebra paraqet Zserv API, i cili lejon që këto protokolle të rrugëtimit të komunikojnë përditësimet e rrugëtimit. Një nga implementimet me Zserv API është BGP.
Versioni i parazgjedhur i përdorur nga Quagga për BGP është BGPv4+, i cili përfshin mbështetjen e familjes së adresave për multicast dhe IPv6.
Hapi 3: Konfigurimi i ruterit BGP
Për të konfiguruar ruterin BGP sipas dëshirës tuaj, ne do të përdorim vtyshguaskën. Së pari, kopjoni mostrën e skedarit të konfigurimit BGP:
cp /usr/share/doc/quagga-*/bgpd.conf.sample /etc/quagga/bgpd.conf
Pasi të jetë kopjuar skedari, futni guaskën:
vtysh
Në disa versione më të vjetra Quagga mund të gjeni një konfigurim me AS7675. Nuk na nevojitet kjo pasi do të bie ndesh vetëm me konfigurimin tonë, ndaj duhet ta fshijmë nëse ekziston. Kontrolloni nëse ky konfigurim ekziston në instalimin tuaj Quagga duke ekzekutuar komandën e mëposhtme brenda shell :
show running-config
Nëse kjo kthen një varg me ose duke përfshirë "ruter bgp 7675", fshijeni atë duke ekzekutuar:
configure terminal
no router bgp 7675
router bgp YOURAS
no auto-summary
no synchronization
Tani duhet të futni informacionin BGP që ju ka dhënë Vultr.
neighbor NEIGHBORIP remote-as VULTRAS
neighbor NEIGHBORIP description "Vultr"
Me shumë mundësi, ju duhet një fjalëkalim për të vendosur seancën BGP. Futni atë:
neighbor NEIGHBORIP password YOURBGPPASSWORD
exit
Së fundi, nëse jeni i sigurt që dëshironi të shkruani këto ndryshime (të zbatueshme vetëm nëse jeni duke punuar në një konfigurim prodhimi), ekzekutoni sa më poshtë për të lejuar që ndryshimet të hyjnë në fuqi:
write
Sigurohuni që ndryshimet ishin të suksesshme duke ekzekutuar:
show ip bgp summary
Tani duhet të kishim krijuar me sukses një sesion BGP.
Hapi 4: Njoftimi i hapësirës suaj IP
Edhe pse ne kemi krijuar një sesion BGP, ne nuk po shpallim ende asnjë rrugë apo adresë IP, kështu që kjo nuk do të ketë asnjë efekt në praktikë. Për fat të mirë, vendosja e hapësirës IP për të shpallur është një proces relativisht i lehtë.
Në vtysh, ekzekutoni komandat e mëposhtme për ta arritur këtë:
configure terminal
router bgp YOURAS
Tani jeni në konfigurim. Sigurohuni që të keni në dispozicion hapësirën IP që dëshironi të shpallni dhe futeni atë:
network YOURSUBNET/CIDR
Për shembull, hyrja e vlefshme do të ishte:
network 185.92.220.0/23
Natyrisht, kjo nuk do të funksionojë në konfigurimin tuaj specifik pasi hapësira IP e mësipërme është në pronësi të Vultr. Zëvendësoni këtë dhe gjithçka duhet të funksionojë mirë.
Dilni dhe ruani ndryshimet:
exit
write
Kontrolloni nëse prefikset tuaja janë shpallur me sukses:
show ip bgp neighbors NEIGHBORIP advertised-routes
Përpiquni të shkruani një adresë IP nga nënrrjeti dhe provoni të kryeni një gjurmim nga jashtë rrjetit.
Zgjidhja e problemeve
Zgjidhja e problemeve të Quagga është kryesisht jashtë fushëveprimit të këtij artikulli, por nëse jeni duke përjetuar vështirësi, gjithmonë mund të përpiqeni të ndaloni shembullin tuaj Quagga dhe të riprovoni të shpallni hapësirën IP nëpërmjet BIRD për të qenë në gjendje të përjashtoni një sërë shkaqesh të mundshme.
Kur BGP nuk funksionon siç duhet në Quagga si dhe në BIRD, ekziston mundësia që muri juaj i zjarrit të mos jetë konfiguruar siç duhet. Porti 179 duhet të jetë i hapur. Në CentOS 7, përpiquni të çaktivizoni përkohësisht murin e zjarrit:
systemctl stop firewalld
Nëse përdorni iptables, provoni:
service iptables stop
Pastaj përpiquni të filloni përsëri seancën BGP. Nëse qëndron në "Idle", "Connect" ose "Active", ka mundësi që porti të jetë ende i bllokuar. Me gjendjen 'Themeluar', sesioni BGP është konfiguruar me sukses dhe tregohen rrugët e reklamuara.
Quagga tani është instaluar në serverin tuaj dhe duhet të funksionojë. Gjatë ditëve të para të shpalljes së hapësirës suaj IP, duhet të monitoroni funksionalitetin e saj për të parandaluar që e gjithë infrastruktura juaj të mos funksionojë.
Kjo përfundon tutorialin tonë Quagga, faleminderit që lexuat. Për të mësuar më shumë rreth veçorisë së Vultr's Bring Your IP Space, ju lutemi shkoni te faqja BGP .