Configuració de BGP amb Quagga a Vultr (CentOS 7)

La funcionalitat Bring Your IP Space de Vultr permet una llibertat sense precedents per assignar els vostres propis recursos IP als servidors del núvol Vultr. En general, recomanem utilitzar BIRD per anunciar el vostre espai IP. Hi ha algunes alternatives sòlides a BIRD per si no podeu aconseguir alguna cosa amb BIRD (tot i que això és molt rar) o simplement voleu utilitzar un altre programari.

A causa de la sobrecàrrega administrativa i tècnica, desaconsellem l'ús de BIRD i Quagga (o qualsevol altre programari per a aquest cas) a la mateixa infraestructura i/o xarxa. Tingueu en compte que la configuració següent us donaria un SPOF, ja que la instància que anuncia la vostra subxarxa superposada no és redundant. Tanmateix, heu de tenir en compte que Vultr té diversos encaminadors BGP a cada bastidor.

Tot i que aquesta guia s'ha escrit tenint en compte CentOS 7 i només s'ha provat en aquesta versió de CentOS, és probable que també funcioni en versions anteriors com CentOS 6. Tanmateix, naturalment, desaconsellem fermament l'ús de programari obsolet i recomanem l'actualització a una versió més recent i més recent (i compatible), com ara CentOS 7.

No hi ha cap límit pràctic per a la quantitat de subxarxes o la seva mida que podeu anunciar des d'una instància que executi Quagga (o qualsevol encaminador BGP per al cas), encara que en qualsevol topologia de xarxa hauríeu de tenir algun tipus de risc de propagació. Això vol dir que hauríeu de crear una configuració redundant o anunciar diferents subxarxes de diferents servidors seguint la guia següent en diversos servidors.

Per seguir aquesta guia, necessitareu:

  • L'ASN que voleu / necessiteu utilitzar;
  • L'espai IP (subxarxa) que voleu anunciar;
  • BGP activat al vostre compte Vultr

Ocell o Quagga?

Per començar, triar entre BIRD o Quagga pot ser molt difícil. Tots dos són coneguts i han demostrat ser molt estables i robusts per a molts casos d'ús, inclosos entorns de gran trànsit i infraestructures on la fiabilitat juga un paper clau. La diferència principal entre BIRD i Quagga és que la configuració de BIRD està separada del dimoni i es pot discernir més dirigida a una estructura semblant a un codi.

Per exemple, amb BIRD, si voleu aconseguir una configuració de failover, utilitzareu el bloc següent al bird.conffitxer de configuració:

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

Com podeu veure, la configuració sembla una mica un bloc de codi tal com apareixeria amb un llenguatge de programació. Amb Quagga, afegiríeu o alteraríeu la configuració utilitzant un programa al mateix dimoni.

Al final, principalment es redueix a les preferències personals i no hi ha cap "guanyador" ni programari que hàgiu d'utilitzar. En general, BIRD és més fàcil de configurar a causa de la seva forma de configuració fàcil d'aprendre i és àmpliament recolzat per la comunitat.

A més, a favor de Quagga, generalment, en un entorn de producció en execució, Quagga és més fàcil de reconfigurar. Amb BIRD, haureu d'editar els fitxers de configuració adequats i fer que el dimoni torni a carregar la seva configuració. Amb Quagga, podeu entrar al seu intèrpret d'ordres, reconfigurar els paràmetres sense massa feina o enrenou. La continuïtat juga un paper important aquí, però a la pràctica, la sobrecàrrega és mínima. A la majoria d'infraestructures, no haureu de reconfigurar massa aquests paràmetres, així que probablement sigui una bona idea jutjar per altres aspectes del programari en lloc d'aquest detall només.

Igual que BIRD, Quagga és compatible amb diverses distribucions. Si mai voleu canviar la distribució o les distribucions utilitzades per als encaminadors, en teoria només podríeu passar per les vostres configuracions i no s'hauria de canviar ni canviarà res.

En aquesta guia, descriurem el procés d'instal·lació i configuració de Quagga. En cas que també vulgueu provar BIRD, proveu de seguir la guia " Configuració de BGP a Vultr ".

Com s'ha esmentat, hi ha algunes bones alternatives, però la major part d'aquestes tenen alguns defectes, que impedeixen que s'utilitzin en un entorn de producció. Per exemple, la implementació BGP de XORP està relativament obsoleta, cosa que generalment no és un bon començament per configurar una infraestructura totalment nova (tot i que la seva implementació BGP és estable).

En comparació amb moltes alternatives, BIRD té una empremta de memòria baixa i no consumeix gaire recursos. D'altra banda, augmentar o actualitzar a una instància de núvol Vultr més potent només requereix uns quants clics des del tauler de control de Vultr.

IPv4 i IPv6

Vultr admet l'anunci d'espai IPv4 i IPv6. La implementació de BGP de Quagga està relativament actualitzada, permetent també la possibilitat d'anunciar espai IPv6.

Tot i que aquesta guia té com a objectiu anunciar l'espai IPv4, podeu utilitzar la implementació IPv6 de Quagga i fer servir les instruccions d'aquest article. Tanmateix, això no està documentat explícitament, així que consulteu una font alternativa per a això.

Nota important

Per poder sobreviure sense un encaminador BGP per passar el trànsit, la millor manera d'anunciar el vostre espai IP és la següent:

  • Anuncia el teu /24 (o més gran) des d'una instància Quagga dedicada;
  • Anunciar /32 individuals (o més grans) dels casos en què el trànsit s'hauria d'encaminar cap a ells mateixos

D'aquesta manera, tindreu una configuració d'instància per anunciar la subxarxa solapada per a totes les IP que inclogueu en /32 individuals o més grans. Amb aquest disseny, podeu anunciar ràpidament les IP i dirigir el trànsit a les instàncies correctes.

Naturalment, podeu experimentar amb diversos enfocaments per anunciar el vostre espai IP al vostre gust. En teoria l'ús és il·limitat i no coneix límits. Tingueu en compte que els servidors de Vultr són autogestionats i no us podem ajudar amb cap problema que pugui sorgir. A part, no pot fer mal utilitzar una solució compatible amb Vultr i la comunitat, de manera que si pot sorgir algun problema, podeu identificar-ne la causa arrel ràpidament.

Pas 1: desactivació de SELinux

Recomanem molt desactivar SELinux per evitar que deixi de funcionar Quagga. Tenim una guia per desactivar SELinux, si us plau, seguiu-la i torneu a aquest tutorial després que SELinux s'hagi desactivat: Desactivació de SELinux a CentOS 7 .

Pas 2: instal·lació de Quagga

Podem procedir instal·lant Quagga mitjançant yum:

yum install quagga

Si obteniu un error, especialment en una instància recentment desplegada, proveu:

yum update

Configureu systemdperquè Zebra (el dimoni principal) s'iniciï automàticament a l'arrencada:

systemctl enable zebra

Finalment, inicieu Zebra:

systemctl start zebra

Hem de repetir el procés per a BGPd, ​​de la següent manera:

systemctl start bgpd
systemctl enable bgpd

Zebra i BGPd

Quagga consta d'una varietat de dimonis que permeten l'encaminament. Com que farem ús de BGP, haurem d'utilitzar els dimonis Zebra i BGPd. Zebra i BGPd treballen junts. Quan qualsevol d'ells deixi de funcionar, les vostres rutes ja no s'anunciaran, la qual cosa farà que tot el vostre espai IP no estigui disponible.

Quagga admet múltiples protocols d'encaminament, entre d'altres OSPF i BGP. El nucli de la topologia de les seves implementacions és Zebra. Zebra és el dimoni principal, que és una capa que s'encarrega de la comunicació del nucli UNIX (TCP) amb els clients Quagga. Al fons, Zebra presenta l'API Zserv, que permet que aquests protocols d'encaminament comuniquin les actualitzacions d'encaminament. Una de les implementacions amb l'API Zserv és BGP.

La versió predeterminada que utilitza Quagga per a BGP és BGPv4+, que inclou suport per a famílies d'adreces per a multicast i IPv6.

Pas 3: Configuració de l'encaminador BGP

Per configurar l'encaminador BGP al vostre gust, farem servir l' vtyshintèrpret d'ordres. En primer lloc, copieu el fitxer de configuració BGP de mostra:

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

Després de copiar el fitxer, introduïu el shell:

vtysh

En algunes versions anteriors de Quagga, és possible que trobeu una configuració amb AS7675. No ho necessitem, ja que només entrarà en conflicte amb la nostra configuració, així que hem de suprimir-lo si existeix. Comproveu si aquesta configuració existeix a la vostra instal·lació de Quagga executant l'ordre següent dins del shell :

show running-config

Si això retorna una cadena amb o inclosa "router bgp 7675", suprimiu-la executant:

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

Ara hauríeu d'introduir la informació BGP que us ha proporcionat Vultr.

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

El més probable és que necessiteu una contrasenya per establir la sessió BGP. Introduïu-lo:

neighbor NEIGHBORIP password YOURBGPPASSWORD
exit

Finalment, si esteu segur que voleu escriure aquests canvis (només aplicables si esteu treballant en una configuració de producció), executeu el següent perquè els canvis tinguin efecte:

write

Assegureu-vos que els canvis han tingut èxit executant:

show ip bgp summary

Ara hauríem d'haver establert correctament una sessió BGP.

Pas 4: anunciant el vostre espai IP

Tot i que hem establert una sessió BGP, encara no anunciem cap ruta ni adreça IP, de manera que això no tindrà cap efecte a la pràctica. Afortunadament, configurar l'espai IP per anunciar és un procés relativament fàcil.

A vtysh, executeu les ordres següents per aconseguir-ho:

configure terminal
router bgp YOURAS

Ara esteu a la configuració. Assegureu-vos de tenir a mà l'espai IP que voleu anunciar i introduïu-lo:

network YOURSUBNET/CIDR

Per exemple, una entrada vàlida seria:

network 185.92.220.0/23

Naturalment, això no funcionarà a la vostra configuració específica, ja que l'espai IP anterior és propietat de Vultr. Substituïu-ho i tot hauria de funcionar bé.

Sortiu i deseu els canvis:

exit
write

Comproveu si els vostres prefixos s'han anunciat correctament:

show ip bgp neighbors NEIGHBORIP advertised-routes

Intenteu fer ping a una adreça IP des de la subxarxa i proveu de fer un seguiment des de fora de la xarxa.

Resolució de problemes

La resolució de problemes de Quagga està fora de l'abast d'aquest article, però si teniu dificultats, sempre podeu intentar aturar la vostra instància de Quagga i tornar a provar d'anunciar l'espai IP mitjançant BIRD per poder excloure una sèrie de possibles causes.

Quan BGP no funciona correctament a Quagga com a BIRD, hi ha la possibilitat que el vostre tallafoc no s'hagi configurat correctament. El port 179 hauria d'estar obert. A CentOS 7, intenteu desactivar temporalment el tallafoc:

systemctl stop firewalld

Si utilitzeu iptables, proveu:

service iptables stop

A continuació, intenteu tornar a iniciar la sessió BGP. Si es penja a "Idle", "Connect" o "Active", hi ha la possibilitat que el port encara estigui bloquejat. Amb l'estat "establert", la sessió BGP s'ha configurat correctament i es mostren les rutes anunciades.

Quagga s'ha instal·lat al vostre servidor i hauria de funcionar. Durant els primers dies d'anunciar el vostre propi espai IP, hauríeu de supervisar-ne la funcionalitat per evitar que tota la vostra infraestructura no funcioni.

Amb això conclou el nostre tutorial de Quagga, gràcies per llegir-lo. Per obtenir més informació sobre la funció Bring Your IP Space de Vultr, aneu a la pàgina BGP .


Leave a Comment

Instal·leu Plesk a CentOS 7

Instal·leu Plesk a CentOS 7

Utilitzeu un sistema diferent? Plesk és un tauler de control d'amfitrió web propietari que permet als usuaris administrar els seus llocs web personals i/o de clients, bases de dades

Com instal·lar Squid Proxy a CentOS

Com instal·lar Squid Proxy a CentOS

Squid és un popular programa Linux gratuït que us permet crear un servidor intermediari web de reenviament. En aquesta guia, veureu com instal·lar Squid a CentOS per convertir-vos-hi

Com instal·lar Lighttpd (LLMP Stack) a CentOS 6

Com instal·lar Lighttpd (LLMP Stack) a CentOS 6

Introducció Lighttpd és una bifurcació d'Apache destinada a ser molt menys intensiu en recursos. És lleuger, d'aquí el seu nom, i és bastant senzill d'utilitzar. Instal·lant

Configuració de xarxes estàtiques i IPv6 a CentOS 7

Configuració de xarxes estàtiques i IPv6 a CentOS 7

Recentment, VULTR ha fet canvis al seu extrem, i ara tot hauria de funcionar bé des de la caixa amb NetworkManager habilitat. Si voleu desactivar

Modificació dIcinga2 per utilitzar el model mestre/client a CentOS 6 o CentOS 7

Modificació dIcinga2 per utilitzar el model mestre/client a CentOS 6 o CentOS 7

Icinga2 és un sistema de supervisió potent i, quan s'utilitza en un model de client mestre, pot substituir la necessitat de controls de monitoratge basats en NRPE. El mestre-client

Com instal·lar Apache Cassandra 3.11.x a CentOS 7

Com instal·lar Apache Cassandra 3.11.x a CentOS 7

Utilitzeu un sistema diferent? Apache Cassandra és un sistema de gestió de bases de dades NoSQL gratuït i de codi obert dissenyat per proporcionar escalabilitat, alta

Com instal·lar Microweber a CentOS 7

Com instal·lar Microweber a CentOS 7

Utilitzeu un sistema diferent? Microweber és un CMS d'arrossegar i deixar anar de codi obert i una botiga en línia. El codi font de Microweber està allotjat a GitHub. Aquesta guia us mostrarà

Com instal·lar Vanilla Forum a CentOS 7

Com instal·lar Vanilla Forum a CentOS 7

Utilitzeu un sistema diferent? Vanilla Forum és una aplicació de fòrum de codi obert escrita en PHP. És totalment personalitzable, fàcil d'utilitzar i admet externa

Com instal·lar Mattermost 4.1 a CentOS 7

Com instal·lar Mattermost 4.1 a CentOS 7

Utilitzeu un sistema diferent? Mattermost és una alternativa autoallotjada de codi obert al servei de missatgeria Slack SAAS. En altres paraules, amb Mattermost, ca

Creació duna xarxa de servidors de Minecraft amb BungeeCord a Debian 8, Debian 9 o CentOS 7

Creació duna xarxa de servidors de Minecraft amb BungeeCord a Debian 8, Debian 9 o CentOS 7

Què necessitareu Un Vultr VPS amb almenys 1 GB de RAM. Accés SSH (amb privilegis d'arrel/administrador). Pas 1: instal·lació de BungeeCord Primer de tot

Permet xifrar a Plesk

Permet xifrar a Plesk

El tauler de control de Plesk inclou una integració molt agradable per Lets Encrypt. Lets Encrypt és un dels únics proveïdors SSL que ofereix certificats complets

Permet xifrar a cPanel

Permet xifrar a cPanel

Lets Encrypt és una autoritat de certificació dedicada a proporcionar certificats SSL de manera gratuïta. cPanel ha creat una integració perfecta perquè tu i el teu client

Com instal·lar Concrete5 a CentOS 7

Com instal·lar Concrete5 a CentOS 7

Utilitzeu un sistema diferent? Concrete5 és un CMS de codi obert que ofereix moltes característiques distintives i útils per ajudar els editors a produir continguts fàcilment i

Com instal·lar el tauler de revisió a CentOS 7

Com instal·lar el tauler de revisió a CentOS 7

Utilitzeu un sistema diferent? Review Board és una eina gratuïta i de codi obert per revisar el codi font, la documentació, les imatges i molts més. És un programari basat en web

Configura lautenticació HTTP amb Nginx a CentOS 7

Configura lautenticació HTTP amb Nginx a CentOS 7

En aquesta guia, aprendràs a configurar l'autenticació HTTP per a un servidor web Nginx que s'executa a CentOS 7. Requisits Per començar, necessitareu el

Com instal·lar GoAccess a CentOS 7

Com instal·lar GoAccess a CentOS 7

Utilitzeu un sistema diferent? GoAccess és un analitzador de registres web de codi obert. Podeu utilitzar-lo per analitzar els registres en temps real al terminal o

Com instal·lar YOURLS a CentOS 7

Com instal·lar YOURLS a CentOS 7

YOURLS (Your Own URL Shortener) és una aplicació d'anàlisi de dades i escurçament d'URL de codi obert. En aquest article, tractarem el procés d'instal·lació

Com instal·lar i configurar ArangoDB a CentOS 7

Com instal·lar i configurar ArangoDB a CentOS 7

Utilitzeu un sistema diferent? Introducció ArangoDB és una base de dades NoSQL de codi obert amb un model de dades flexible per a documents, gràfics i claus-valors. És

Utilitzant Etckeeper per al control de versions de /etc

Utilitzant Etckeeper per al control de versions de /etc

Introducció El directori /etc/ té un paper crític en el funcionament d'un sistema Linux. La raó d'això és perquè gairebé totes les configuracions del sistema

Per què hauríeu dutilitzar SSHFS? Com muntar un sistema de fitxers remot amb SSHFS a CentOS 6

Per què hauríeu dutilitzar SSHFS? Com muntar un sistema de fitxers remot amb SSHFS a CentOS 6

Molts administradors de sistemes gestionen grans quantitats de servidors. Quan s'hagi d'accedir als fitxers a través de diferents servidors, inicieu sessió a cadascun individualment ca

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.

Atacs DDOS: una breu visió general

Atacs DDOS: una breu visió general

També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.

Us heu preguntat mai com guanyen diners els pirates informàtics?

Us heu preguntat mai com guanyen diners els pirates informàtics?

Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.

Invents revolucionaris de Google que us facilitaran la vida.

Invents revolucionaris de Google que us facilitaran la vida.

Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.

Divendres essencial: què va passar amb els cotxes impulsats per IA?

Divendres essencial: què va passar amb els cotxes impulsats per IA?

El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...

Singularitat tecnològica: un futur llunyà de la civilització humana?

Singularitat tecnològica: un futur llunyà de la civilització humana?

A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.

Evolució de lemmagatzematge de dades – Infografia

Evolució de lemmagatzematge de dades – Infografia

Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.

Funcionalitats de les capes darquitectura de referència de Big Data

Funcionalitats de les capes darquitectura de referència de Big Data

Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació