Configurazione di BGP su Vultr

La funzione BGP di Vultr ti consente di portare il tuo spazio IP personale e utilizzarlo in una qualsiasi delle nostre sedi.

Iniziare

Per utilizzare BGP, devi:

  • Un'istanza del server Vultr distribuito.
  • Il tuo spazio IP (v4 o v6). Se hai il tuo ASN, puoi usarlo o possiamo assegnarne uno privato.

Se stai pubblicizzando un prefisso IPv4, l'istanza del server deve avere un indirizzo IPv4 assegnato automaticamente da Vultr. Se stai pubblicizzando un prefisso IPv6, l'istanza del server deve avere indirizzi IPv4 e IPv6 assegnati automaticamente da Vultr.

Si prega di compilare il modulo di configurazione BGP per iniziare. Assicurati di verificare la proprietà del tuo ASN e subnet (s) per evitare ritardi.

Una volta che questo è stato configurato sul tuo account, puoi procedere con la configurazione di BGP.

Impostazione BGP

Nota: se stai per configurare un'istanza che è stata distribuita prima che BGP fosse configurato sul tuo account, dovrai riavviarlo tramite il pannello di controllo. BGP non funzionerà su nessuna istanza esistente fino a quando non saranno stati riavviati (il riavvio tramite SSH non è sufficiente).

Si consiglia di utilizzare BIRD come demone BGP (ma è possibile utilizzare qualsiasi demone BGP desiderato). La maggior parte dei sistemi operativi ha un pacchetto disponibile per questo.

I nostri esempi assumeranno quanto segue:

  • ASN: 64512
  • IP dell'istanza :: 203.0.113.123
  • Blocco IPv4: 198.51.100.0/24
  • Password BGP: hunter2

Per confermare la connettività, impostiamo una sessione BGP senza annunciare alcun IP. Crea un /etc/bird.conffile con il seguente testo. Nota che su alcuni sistemi, come Ubuntu 16.04, questo sarà /etc/bird/bird.conf.

router id 203.0.113.123;

protocol bgp vultr
{
    local as 64512;
    source address 203.0.113.123;
    import none;
    export all;
    graceful restart on;
    multihop 2;
    neighbor 169.254.169.254 as 64515;
    password "hunter2";
}

Riavvia l'uccello e controlla lo stato della sessione:

[root@vultr ~]# birdc show proto all vultr
BIRD 1.4.5 ready.
name     proto    table    state  since       info
vultr    BGP      master   up     14:11:36    Established
  Preference:     100
  Input filter:   REJECT
  Output filter:  (unnamed)
  Routes:         0 imported, 581634 filtered, 1 exported, 0 preferred
  Route change stats:     received   rejected   filtered    ignored   accepted
    Import updates:         581674          0     581674          0          0
    Import withdraws:            2          0        ---     581675          0
    Export updates:              1          0          0        ---          1
    Export withdraws:            0        ---        ---        ---          0
  BGP state:          Established
    Neighbor address: 169.254.169.254
    Neighbor AS:      64515
    Neighbor ID:      169.254.169.254
    Neighbor caps:    refresh restart-able AS4
    Session:          external multihop AS4
    Source address:   203.0.113.123
    Hold timer:       208/240
    Keepalive timer:  57/80

Uno stato BGP di "Stabilito" significa che tutto funziona correttamente. Se non vedi uno stato di Stabilito, ecco alcune cose da provare:

  • Hai riavviato tramite il pannello di controllo da quando il supporto ha impostato BGP sul tuo account?
  • La porta BGP (TCP 179) è consentita attraverso il firewall?
  • La tua password BGP è corretta? (Questo può essere verificato nel tuo pannello di controllo, ogni abbonamento ha una scheda BGP che elenca i dettagli)
  • Stai utilizzando l'IP principale della tua istanza? (Non è possibile utilizzare altro che l'IP principale di un'istanza con BGP)

Note di FreeBSD

La configurazione predefinita di FreeBSD non funzionerà con BGP. Per poter effettivamente utilizzare BGP su FreeBSD, dovrai fare alcune cose:

1) Ricompila il kernel con queste opzioni aggiuntive abilitate:

device crypto
options IPSEC
options TCP_SIGNATURE

2) Configurare la scheda di rete con un IP statico.

3) Aggiorna ipsec.conf con la password BGP:

add 203.0.113.123 169.254.169.254 tcp 0x1000 -A tcp-md5 "hunter2";
add 169.254.169.254 203.0.113.123 tcp 0x1000 -A tcp-md5 "hunter2";

Percorsi di annuncio

Una volta che hai una sessione BGP funzionante, il passo successivo è iniziare a annunciare alcuni percorsi. Affinché lo spazio degli indirizzi sia visibile su Internet, è necessario annunciare almeno un / 24 (o / 48 per IPv6).

Il modo più semplice per iniziare è aggiungere un percorso statico alla tua configurazione BIRD, come ad esempio:

protocol static
{
    route  198.51.100.0/24 via 203.0.113.123;
}

protocol device
{
    scan time 5;
}

Il blocco "protocollo dispositivo" consente a BIRD di raccogliere informazioni sugli adattatori di rete collegati all'istanza. Senza di essa, i percorsi statici non verranno visualizzati.

Ricarica BIRD, quindi verifica che il percorso funzioni correttamente:

[root@vultr ~]# birdc show route
BIRD 1.4.5 ready.
198.51.100.0/24    via 203.0.113.123 on eth0 [static1 14:22:12] * (200)

A questo punto, il traffico per la tua sottorete dovrebbe ora fluire verso la tua istanza. Non sarai in grado di eseguire il ping di alcun IP fino a quando non sono configurati nel tuo sistema operativo. Un modo per verificarlo sarebbe usare tcpdump, 'tcpdump -i eth0 -n net 198.51.100.0/24'.

Configurazione IP

Una configurazione comune che vediamo è l'utilizzo di singoli indirizzi IP in istanze diverse. Ciò è possibile, sebbene ogni istanza debba eseguire il proprio server BGP.

Per fare questo, annunceremo / 32 rotte da singole istanze, oltre alla copertura / 24. Potremmo farlo con route statiche, ma consigliamo invece di utilizzare interfacce fittizie. Useremo 198.51.100.100 come IP che vogliamo instradare.

Configuralo su un'interfaccia:

# ip link add dev dummy1 type dummy
# ip link set dummy1 up
# ip addr add dev dummy1 198.51.100.100/32

Conferma che questo è stato configurato correttamente:

# ip addr show dev dummy1
5: dummy1: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/ether ba:23:57:2c:ad:bc brd ff:ff:ff:ff:ff:ff
    inet 198.51.100.100/32 scope global dummy1

Nota: consultare la documentazione del proprio sistema operativo per determinare come configurare questa interfaccia per l'avvio.

Ora configureremo BIRD per la ricerca di eventuali interfacce fittizie e annunceremo tutti gli IP che trova su di esse. Aggiungi quanto segue alla tua configurazione BIRD e ricarica BIRD:

protocol direct
{
    interface "dummy*";
    import all;
}

Verifica che BIRD abbia annunciato il percorso:

[root@vultr ~]# birdc show route
BIRD 1.4.5 ready.
198.51.100.0/24    via 203.0.113.123 on eth0 [static1 14:22:12] * (200)
198.51.100.100/32  dev dummy1 [direct1 14:36:56] * (240)

Puoi ripetere questo processo su altre istanze con altri IP. Quello che succede è che i nostri router useranno il percorso più specifico che hanno per un determinato indirizzo IP. Quando c'è un / 24 e / 32, il / 32 è il percorso più specifico, quindi qualsiasi traffico per quell'IP seguirà quel percorso.

Puoi avere più istanze che annunciano lo stesso / 32. Questo ti darebbe alta disponibilità (se una qualsiasi istanza fallisse, i suoi percorsi scomparirebbero e il traffico verrebbe eseguito il failover sull'altra istanza).

Le nostre sedi non sono collegate, pertanto è necessario assicurarsi di annunciare un / 24 (o IPv6 / 48) da ciascuna posizione in cui si desidera utilizzare gli IP. Non è possibile utilizzare uno / 24 per assegnare IP per più posizioni a meno che non si stia tentando di configurare una rete anycast.

Alcune delle nostre sedi supportano ECMP, nel qual caso il traffico verrà distribuito casualmente tra un massimo di 8 istanze che annunciano lo stesso IP. Le posizioni che attualmente supportano ECMP sono:

  • New Jersey
  • Chicago
  • Dallas
  • Atlanta
  • Tokyo
  • Singapore
  • Los Angeles
  • Miami
  • Silicon Valley
  • Parigi
  • Londra

Documenti correlati

Appunti

Per BIRD 1.5 e versioni successive, potrebbe essere necessario modificare la routesintassi delle linee da:

route  198.51.100.0/24 via 203.0.113.123;

per:

route  198.51.100.0/24 via "203.0.113.123";

** Risoluzione dei problemi **

I nostri sistemi richiedono l'autenticazione TCP MD5 per stabilire la connessione. Ciò significa che non è possibile testare la connettività utilizzando qualcosa come telnet. In genere consigliamo di guardare il traffico con tcpdump per risolvere i problemi di connettività.

Lascia un commento

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane

ReactOS: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.