OpenBGPD è il demone di routing BGP sviluppato all’interno del progetto OpenBSD, scritto da zero anziché derivato da una base di codice preesistente. Henning Brauer ne presentò le prime versioni al FOSDEM nel febbraio 2004 e da allora fa parte del sistema base di OpenBSD. Il codice è distribuito con licenza ISC, una licenza permissiva molto breve che consente il riutilizzo in quasi ogni contesto, anche commerciale.
Esiste una variante detta portable, curata da Claudio Jeker, che permette di compilarlo su altri sistemi operativi. Secondo la pagina di download del progetto, la versione 9.3 di questa variante è uscita il 30 settembre 2026 ed è dichiarata funzionante su Linux e FreeBSD.
A cosa serve OpenBGPD
BGP, Border Gateway Protocol, è il protocollo con cui le reti autonome che compongono Internet, operatori, hosting provider, punti di interscambio, si comunicano a vicenda quali prefissi IP sanno raggiungere. Un demone come OpenBGPD trasforma un server qualunque in un router capace di dialogare con questi vicini, ricevere i loro annunci, scegliere i percorsi migliori e riversare il risultato nella tabella di routing del kernel. Tutto si governa da un unico file di testo, bgpd.conf, la cui sintassi richiama quella del firewall pf di OpenBSD, mentre lo strumento bgpctl interroga e comanda il demone in esecuzione.
Il programma è suddiviso in tre processi che cooperano, una scelta progettuale pensata per la sicurezza quanto per la stabilità. Il motore di sessione mantiene le connessioni TCP con ogni vicino, il motore di decisione filtra i percorsi ricevuti e costruisce la tabella di routing interna, e il processo padre, l’unico a conservare i privilegi, tiene quella tabella sincronizzata con il kernel. Compromettere uno dei due processi esposti alla rete frutta quindi molto poco. OpenBGPD convalida inoltre l’origine delle rotte con i dati prodotti da rpki-client, un altro strumento di OpenBSD, e gestisce i record ASPA, che verificano il percorso degli AS.
Il confronto con FRRouting, l’altra grande suite libera della categoria, ne chiarisce la collocazione. FRRouting discende da Quagga e implementa una decina di protocolli, tra cui BGP, OSPF, IS-IS, RIP e PIM, dietro una riga di comando ispirata agli apparati Cisco. OpenBGPD fa soltanto BGP, e lo fa per scelta: gli obiettivi dichiarati del progetto sono sicurezza, affidabilità e snellezza, coprendo bene i casi d’uso comuni invece di ogni opzione possibile. I demoni OSPF e RIP che lo affiancano su OpenBSD non fanno parte del pacchetto portable.
Sul campo lo si incontra soprattutto come route server nei punti di interscambio Internet, dove regge tabelle complete davanti a decine di peer, come router di confine per piccoli operatori e hosting provider, e come speaker BGP installato direttamente sui server che fanno anycast. L’archivio portable include anche bgplgd, un piccolo demone di looking glass che espone in sola lettura lo stato del router via HTTP.
Per chi è?
OpenBGPD è pensato per amministratori di rete e ingegneri di esercizio che gestiscono già un numero di AS, o stanno per farlo, e preferiscono un file di configurazione leggibile a una console interattiva. È la scelta naturale per chi lavora su OpenBSD o FreeBSD, ed è apprezzato dagli operatori che vogliono diversificare le implementazioni BGP, così che un singolo bug non colpisca tutti i router nello stesso momento.
I suoi limiti derivano dal perimetro. Non c’è interfaccia grafica, non ci sono OSPF né IS-IS nella versione portable, e per partire bisogna conoscere BGP, le politiche di filtraggio e le community. I pacchetti delle distribuzioni Linux possono essere indietro di diverse versioni rispetto all’archivio ufficiale. Chi ha bisogno di più protocolli in un solo prodotto, o di una console familiare a chi viene da Cisco, sarà servito meglio da FRRouting o da un sistema di routing completo come VyOS. Chi vuole imparare BGP in laboratorio può combinare più implementazioni dentro GNS3 o EVE-NG senza comprare hardware.
Scaricare OpenBGPD in sicurezza
Su OpenBSD non c’è nulla da installare, perché bgpd fa parte del sistema base. Per le altre piattaforme, la pagina di download di openbgpd.org rimanda all’archivio sorgente openbgpd-9.3.tar.gz ospitato sui mirror di OpenBSD, accompagnato da una firma signify e da una controfirma GPG per la verifica. Il listato dei mirror indica una dimensione di circa 847 KB. Il codice portable è disponibile anche su GitHub nell’organizzazione openbgpd, che pubblica pure un’immagine OCI per Docker o Podman. La compilazione segue la consueta sequenza configure, make e make install, con libmnl richiesta su Linux e libevent necessaria solo per bgplgd.
Il software è del tutto gratuito, senza edizioni commerciali, senza account da creare né chiavi di licenza da inserire. La maggior parte delle distribuzioni Linux e FreeBSD offre inoltre un pacchetto openbgpd nei propri repository ufficiali. Un binario precompilato proposto da un sito estraneo, o un archivio la cui firma non corrisponde alla chiave pubblicata su openbgpd.org, va considerato un rischio: è il componente che decide dove passa il vostro traffico.
Domande frequenti
OpenBGPD è gratuito?
Sì. È rilasciato con licenza ISC dal progetto OpenBSD, senza versioni a pagamento né funzioni bloccate. Si può usare, modificare e ridistribuire liberamente, anche dentro un prodotto commerciale, purché si conservi la nota di licenza.
Funziona su Linux?
Sì, tramite la versione portable. Secondo le note di rilascio della 9.3 viene provata su Alpine, Debian, Fedora, RHEL e derivate e Ubuntu, oltre che su FreeBSD. Si compila dall’archivio ufficiale oppure si installa il pacchetto della propria distribuzione, spesso un po’ meno recente.
In cosa differisce da FRRouting?
OpenBGPD gestisce solo BGP e punta su un file di configurazione conciso e su un’architettura a compartimenti. FRRouting offre una suite completa di protocolli di routing con una console in stile Cisco. I due convivono spesso nei punti di interscambio, proprio per non dipendere da una sola implementazione.