Protocollo BGP: cos’è e a cosa serve

Protocollo BGP: cos’è e a cosa serve

Il BGP è uno dei pilastri fondamentali, ma spesso invisibili, del traffico su Internet, funzionando come una sorta di navigatore satellitare per i pacchetti dati. In pratica consente lo scambio di informazioni di raggiungibilità tra diversi sistemi autonomi, selezionando poi il percorso migliore e più efficiente per i dati.

Quando ad esempio una persona digita l’indirizzo di una pagina web o avvia una videochiamata, il collegamento non è immediato poiché i dati possono viaggiare da un continente all’altro, attraversando una network immensa composta da migliaia di reti distinte. Nei seguenti paragrafi analizziamo proprio il funzionamento di quei meccanismi che rendono possibile questa interconnessione tra i dati.

Che cos’è il protocollo BGP

Il termine BGP rappresenta l’acronimo di Border Gateway Protocol. Da un punto di vista strettamente tecnico, si tratta del protocollo standard usato per lo scambio di informazioni di instradamento e raggiungibilità tra diverse reti su scala globale.

Protocollo BGP: cos’è e a cosa serve

Per comprendere meglio il concetto, immaginiamo questo strumento come il linguaggio comune che usano i router sparsi per il mondo per comunicare tra loro. Senza un protocollo standardizzato che permetta a tutte le reti, pubbliche o private, di dialogare tra loro, i dati resterebbero confinati nelle loro reti originarie. Il BGP protocol quindi funge da traduttore ma anche da “vigile urbano”, garantendo che ogni pacchetto di informazioni sappia esattamente quale strada prendere per arrivare a destinazione, a prescindere dal dispositivo o dal provider originario.

A cosa serve il BGP e perché è essenziale per Internet

Il network BGP è lo strumento che tiene insieme tutta la rete e la sua funzione può essere paragonata a quella del sistema di smistamento postale internazionale. Immaginiamo di inviare una lettera dall’Italia al Giappone, in tal caso naturalmente non c’è un unico postino che compie l’intera tratta. La lettera attraversa vari uffici postali, aeroporti e centri di smistamento locali. Ogni centro non conosce l’intero percorso che farà la lettera, ma sa qual è il centro successivo dove dovrà consegnarla.

In ambito informatico, il BGP funziona allo stesso modo. Serve a mappare i percorsi ottimali per i dati ed è considerato il vero motore del routing globale. Senza di esso Internet non esisterebbe nella forma in cui lo conosciamo oggi, poiché i provider, le grandi aziende e i fornitori di contenuti non potrebbero scambiarsi i dati in modo automatizzato e scalabile.

Sistemi autonomi e funzionamento del routing BGP

Per comprendere bene il funzionamento del protocollo BGP, è necessario introdurre il concetto di Sistema Autonomo (Autonomous System, abbreviato in AS). Un Sistema Autonomo è una rete molto grande o un gruppo di reti, gestita da una singola organizzazione che possiede una sua politica di instradamento dei dati. Ogni AS è identificato da un numero univoco chiamato ASN (Autonomous System Number).

Ad esempio, un provider di infrastrutture IT che offre servizi cloud e server dedicati per aziende di tutto il mondo gestisce la propria enorme mole di traffico tramite uno o più Sistemi Autonomi. Il funzionamento si basa sull’annuncio continuo: ogni AS “urla” ai propri vicini quali indirizzi IP possiede e quali altre reti è in grado di raggiungere.

I dispositivi di confine ascoltano questi annunci, aggiornano le proprie tabelle interne e costruiscono una mappa in continuo mutamento delle connessioni mondiali, garantendo che i dati scorrano senza interruzioni.

Differenza tra eBGP e iBGP

Esistono due varianti del router BGP: l’eBGP (External Border Gateway Protocol) e l’iBGP (Internal Border Gateway Protocol). L’eBGP è utilizzata per connettere tra loro Sistemi Autonomi diversi, mentre l’iBGP viene utilizzata all’interno dello stesso sistema Autonomo.

Se l’eBGP rappresenta i voli internazionali tra nazioni, l’iBGP può invece essere paragonato ai voli domestici che distribuiscono i dati all’interno dello stesso paese.

Come BGP sceglie il percorso migliore

A differenza dei protocolli interni, che calcolano la strada più veloce basandosi unicamente sulla distanza fisica o sulla larghezza della banda, il BGP utilizza un sistema basato su “attributi” e politiche commerciali. È definito un protocollo path-vector, poiché non traccia la singola macchina, ma la sequenza di Sistemi Autonomi che un pacchetto deve attraversare (il cosiddetto AS-PATH).

Quando un pacchetto deve raggiungere una destinazione, il protocollo valuta la via migliore seguendo una serie di regole. La regola principale è scegliere il percorso che attraversa il minor numero di AS. Tuttavia gli amministratori di rete possono influenzare queste decisioni attraverso metriche specifiche.

Questo succede perché la scelta della rotta non dipende tanto dalla velocità tecnica, ma da accordi commerciali. Un provider potrebbe preferire instradare i dati attraverso un partner commerciale con cui ha un accordo gratuito, piuttosto che utilizzare una connessione più rapida ma a pagamento.

Rischi, vulnerabilità e BGP hijacking

Questa architettura presenta però una debolezza che risiede nella sua natura basata sulla fiducia. Quando il protocollo fu inventato alla fine degli anni ‘80, la rete era un ambiente sicuro e ristretto, dove tutti i partecipanti si conoscevano. L’intero sistema parte quindi dal presupposto che le informazioni fornite da un vicino siano affidabili e veritiere.

Col tempo però la rete si è allargata e questa fiducia cieca rischia di provocare problemi seri come il BGP hijacking, ossia il dirottamento BGP. Se un Sistema Autonomo annuncia, per errore di configurazione o proprio per un intento malevolo, di possedere i migliori percorsi per gli indirizzi IP di una banca o di un famoso social network, il traffico mondiale destinato a quei servizi verrà dirottato verso l’annunciatore falso.

Tutto questo causa enormi blackout e permette ad hacker e malintenzionati di intercettare dati sensibili, prima di reinstradarli verso la destinazione legittima, all’insaputa degli utenti.

Come proteggere il BGP

Per contrastare questi rischi, sono stati sviluppati diversi sistemi di difesa e la soluzione più efficace attualmente in uso è l’RPKI (Resource Public Key Infrastructure). Questo sistema associa un certificato crittografico agli annunci di instradamento, permettendo ai dispositivi di verificare matematicamente se un determinato Sistema Autonomo è effettivamente autorizzato ad annunciare un certo gruppo di indirizzi IP.

Oltre alla crittografia, un ruolo cruciale è svolto dal route filtering. Si tratta di una pratica tramite la quale i provider controllano manualmente o tramite database condivisi la correttezza degli annunci ricevuti dai propri clienti, scartando quelli sospetti o palesamente errati. L’adozione di queste buone pratiche dimostra come la collaborazione attiva tra tutti gli attori coinvolti in rete rafforzi la sicurezza dell’infrastruttura digitale mondiale.