{"id":708,"date":"2026-09-01T06:31:17","date_gmt":"2026-09-01T06:31:17","guid":{"rendered":"https:\/\/junglelabs.uk\/"},"modified":"2026-09-01T06:35:13","modified_gmt":"2026-09-01T06:35:13","slug":"what-is-the-ripe-database","status":"publish","type":"post","link":"https:\/\/junglelabs.uk\/it\/what-is-the-ripe-database\/","title":{"rendered":"Che cos'\u00e8 il database RIPE e perch\u00e9 \u00e8 importante?"},"content":{"rendered":"<h2 class=\"wp-block-heading\">Che cos'\u00e8 il database RIPE?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il RIPE Database \u00e8 un database di registro pubblico che memorizza informazioni sulle risorse numeriche Internet e sui relativi oggetti tecnici. \u00c8 gestito dal RIPE NCC, il Registro Internet regionale che serve l\u2019Europa, il Medio Oriente e alcune parti dell\u2019Asia centrale. Il suo scopo \u00e8 contribuire a mantenere la trasparenza, la responsabilit\u00e0 e il coordinamento tecnico nell\u2019intera Internet pubblica.Il database include record per lo spazio di indirizzamento IPv4 e IPv6, ASN, organizzazioni, contatti di rete, criteri di routing, annunci di route, deleghe DNS inverso, contatti per la sicurezza e altre informazioni tecniche. Questi record sono organizzati come oggetti strutturati. Ogni oggetto ha un tipo, una chiave o un identificatore univoco, un insieme di attributi e uno o pi\u00f9 maintainer che controllano chi \u00e8 autorizzato ad aggiornarlo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ad esempio, un'allocazione di indirizzi IPv4 pu\u00f2 essere rappresentata da un <code>inetnum<\/code> object. An IPv6 allocation may be represented by an <code>inet6num<\/code> oggetto. Un ASN \u00e8 generalmente rappresentato da un <code>aut-num<\/code> oggetto. Una policy di routing BGP pu\u00f2 essere rappresentata da un <code>percorso<\/code> object for IPv4 or a <code>route6<\/code> object for IPv6. A company itself may be represented by an <code>organizzazione<\/code> oggetto, mentre un contatto tecnico pu\u00f2 essere rappresentato tramite un <code>persona<\/code> o <code>ruolo<\/code> oggetto. Questi oggetti sono collegati tra loro. Un blocco di indirizzi IP pu\u00f2 fare riferimento a un oggetto organizzazione. L'oggetto organizzazione pu\u00f2 essere associato a contatti amministrativi e tecnici. Un oggetto route pu\u00f2 collegare un prefisso IP a un ASN. Un oggetto maintainer pu\u00f2 definire chi ha il permesso di modificare il record. \u00c8 questa struttura collegata che rende il RIPE Database utile sia per le operazioni tecniche sia per l'amministrazione delle risorse.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c8 importante comprendere che il RIPE Database \u00e8 un sistema di registrazione e coordinamento, non un semplice certificato di propriet\u00e0. Un registro pubblico pu\u00f2 mostrare l'organizzazione responsabile di una risorsa o l'entit\u00e0 registrata come utente finale, ma il contesto giuridico, contrattuale e normativo pu\u00f2 essere pi\u00f9 complesso. Le aziende non dovrebbero basarsi esclusivamente su una ricerca nel database quando effettuano un trasferimento IPv4 di valore elevato, un'acquisizione, una revisione di una controversia o un importante processo di due diligence. In tali situazioni, il database \u00e8 un'importante fonte di prove, ma dovrebbe essere esaminato insieme alle procedure di registrazione vigenti, alla documentazione contrattuale e, ove appropriato, alla consulenza professionale.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">RIPE NCC, la comunit\u00e0 RIPE e il RIPE Database<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I termini \u201cRIPE\u201d, \u201cRIPE NCC\u201d e \u201cRIPE Database\u201d sono spesso usati insieme, ma non significano esattamente la stessa cosa. RIPE si riferisce alla comunit\u00e0 pi\u00f9 ampia di operatori di rete, fornitori di servizi Internet, specialisti tecnici e altri stakeholder coinvolti nello sviluppo e nel coordinamento delle operazioni Internet nella regione. RIPE NCC, ovvero R\u00e9seaux IP Europ\u00e9ens Network Coordination Centre, \u00e8 l\u2019organizzazione che fornisce servizi di registro e coordinamento, inclusa la gestione del RIPE Database.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">RIPE NCC \u00e8 uno dei cinque Regional Internet Registry del mondo. Gli altri quattro sono ARIN per gli Stati Uniti, il Canada e parti dei Caraibi e dell'Atlantico settentrionale; APNIC per la regione Asia-Pacifico; LACNIC per l'America Latina e gran parte dei Caraibi; e AFRINIC per l'Africa e la regione dell'Oceano Indiano. Ogni RIR gestisce le risorse numeriche Internet all'interno della propria regione di servizio in base a politiche sviluppate attraverso processi della comunit\u00e0.Il RIPE Database \u00e8 pertanto uno strumento operativo fondamentale per la regione del RIPE NCC. Un'azienda che riceve un ASN tramite un LIR sponsor del RIPE NCC, ad esempio, pu\u00f2 vedersi inserire o aggiornare informazioni nel RIPE Database nell'ambito del processo di registrazione. In seguito, l'azienda potrebbe dover gestire i record dell'organizzazione, i contatti tecnici, gli oggetti di instradamento, le autorizzazioni RPKI, le informazioni sui contatti per gli abusi e i dati relativi a BGP.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per gli operatori di rete, il database supporta le decisioni operative quotidiane. Un provider di transito pu\u00f2 utilizzare i dati degli oggetti di rotta nella creazione di filtri dei prefissi. Un analista della sicurezza pu\u00f2 utilizzare il database per identificare un contatto pertinente per gli abusi. Un'azienda pu\u00f2 cercare un ASN prima di instaurare una relazione di peering o di servizio. Un data center pu\u00f2 verificare i registri di assegnazione degli indirizzi durante una revisione del trasferimento di un IP. Un ingegnere che sta risolvendo un problema relativo a un annuncio di rotta pu\u00f2 confrontare il prefisso IP, l'ASN di origine, l'oggetto di rotta, lo stato RPKI e i requisiti del provider upstream.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Perch\u00e9 il database RIPE \u00e8 importante per le aziende<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il database RIPE \u00e8 importante perch\u00e9 l'infrastruttura Internet necessita di responsabilit\u00e0 pubblica. Quando un'azienda gestisce un prefisso IP o un ASN, altre reti hanno bisogno di un modo affidabile per determinare chi \u00e8 responsabile di quella risorsa. Ci\u00f2 \u00e8 particolarmente importante quando si verifica un incidente di routing, un attacco DDoS, una segnalazione di spam, una segnalazione di abuso, un modello di traffico sospetto, un dirottamento BGP, un'interruzione della connettivit\u00e0 o un'indagine sulla sicurezza.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un record del database RIPE ben mantenuto pu\u00f2 rendere un'azienda pi\u00f9 facile da identificare e contattare. Pu\u00f2 inoltre ridurre gli attriti quando si lavora con provider di transito upstream, Internet Exchange Point, partner di connettivit\u00e0 cloud, provider di mitigazione DDoS e altri operatori di rete. Se i record di un'organizzazione sono incompleti, inesatti o non aggiornati, questa potrebbe subire ritardi nel tentativo di annunciare prefissi, convalidare il routing BGP, dimostrare il controllo delle risorse, aggiornare i contatti o rispondere a un incidente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il database \u00e8 inoltre importante per la gestione della reputazione. Gli indirizzi IP pubblici possono sviluppare una reputazione in base al loro utilizzo storico. Un provider di hosting, un operatore VPN, una piattaforma email, un'azienda cloud o un servizio proxy potrebbe dover dimostrare di avere una struttura organizzativa legittima, un contatto per gli abusi attivo, contatti tecnici chiari e record di routing adeguatamente mantenuti. Sebbene una voce nel database RIPE non garantisca una buona reputazione, pu\u00f2 contribuire a una presenza di rete pi\u00f9 trasparente e professionale.Per le organizzazioni che utilizzano BGP, gli oggetti route e i record RPKI accurati sono particolarmente preziosi. Molti provider upstream utilizzano le informazioni dei registri di routing per creare filtri sui prefissi. Se una rete annuncia un prefisso ma non dispone di un oggetto route appropriato o di un'autorizzazione al routing, il provider potrebbe rifiutare la route. Ci\u00f2 pu\u00f2 causare interruzioni, ritardi nell'attivazione o una raggiungibilit\u00e0 globale incompleta.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il Database RIPE supporta anche la governance interna. Un'azienda pu\u00f2 avere diverse persone coinvolte nelle operazioni di rete, nella conformit\u00e0, nella gestione legale, nella fatturazione, nella gestione degli abusi e nella manutenzione dell'infrastruttura. Relazioni chiare tra gli oggetti e controlli dei maintainer possono aiutare l'azienda a definire chi pu\u00f2 aggiornare quali record. Ci\u00f2 riduce il rischio che ex dipendenti, consulenti di terze parti o soggetti non autorizzati mantengano il controllo di record critici delle risorse Internet.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Tipi di oggetti importanti del database RIPE<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il RIPE Database contiene molti tipi diversi di oggetti. Alcuni sono utilizzati principalmente dagli amministratori dei registri, mentre altri sono utilizzati regolarmente dagli ingegneri di rete e dai responsabili delle risorse IP. Gli oggetti pi\u00f9 importanti per una tipica azienda che utilizza spazio IP pubblico e un ASN sono l'oggetto organizzazione, l'oggetto indirizzo IP, l'oggetto ASN, l'oggetto contatto, l'oggetto maintainer e l'oggetto route.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An <code>organizzazione<\/code> l\u2019oggetto rappresenta una persona giuridica, un titolare di risorse, un utente finale o un\u2019altra organizzazione riconosciuta coinvolta nella registrazione delle risorse di numerazione Internet. Pu\u00f2 includere il nome dell\u2019organizzazione, il tipo, i riferimenti all\u2019indirizzo, i riferimenti ai contatti e le informazioni sul maintainer. Questo oggetto consente di associare gli intervalli di indirizzi IP e gli ASN a un\u2019organizzazione responsabile.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An <code>inetnum<\/code> l'oggetto rappresenta un intervallo di indirizzi IPv4. Pu\u00f2 contenere l'intervallo stesso, un nome descrittivo, un riferimento all'organizzazione, contatti amministrativi e tecnici, informazioni sullo stato, riferimenti ai contatti per gli abusi e controlli del maintainer. Un <code>inet6num<\/code> object performs a similar function for IPv6 address space. These records are critical because they identify the network operator or organization associated with an address block.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An <code>aut-num<\/code> l'oggetto rappresenta un Numero di Sistema Autonomo. Pu\u00f2 includere l'ASN, l'organizzazione responsabile, informazioni sulla politica di instradamento, riferimenti alle politiche di importazione ed esportazione, contatti tecnici e informazioni sul maintainer. Un'azienda che utilizza BGP dovrebbe assicurarsi che i dati relativi all'ASN siano accurati, poich\u00e9 questo record fa parte del contesto pubblico relativo all'identit\u00e0 di instradamento della rete.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A <code>persona<\/code> l'oggetto identifica un singolo contatto, mentre un <code>ruolo<\/code> l\u2019oggetto identifica un contatto funzionale come \u201cCentro operativo di rete\u201d, \u201cReparto abusi\u201d, \u201cSupporto tecnico\u201d o \u201cAmministrazione delle risorse IP\u201d. In molti casi, gli oggetti di ruolo sono pi\u00f9 pratici dei contatti personali perch\u00e9 rimangono validi anche quando cambiano i dipendenti. Un\u2019azienda ben gestita utilizza spesso indirizzi di ruolo funzionali per le operazioni di rete e la gestione degli abusi, invece di affidarsi interamente ai dati personali di un singolo dipendente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A <code>mntner<\/code> l'oggetto, abbreviazione di oggetto maintainer, \u00e8 uno dei controlli di sicurezza pi\u00f9 importanti nel Database RIPE. Specifica i requisiti di autenticazione e autorizzazione per la modifica degli oggetti correlati. Se un maintainer non \u00e8 configurato correttamente, l'azienda potrebbe perdere la possibilit\u00e0 di aggiornare i propri record nel database oppure esporsi a tentativi di modifica non autorizzati. Le credenziali del maintainer, le password, le credenziali API e le procedure di autorizzazione devono essere gestite con attenzione e non devono mai essere esposte in codice sorgente pubblico, script lato browser o documentazione non protetta.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A <code>percorso<\/code> object documents the relationship between an IPv4 prefix and an origin ASN. A <code>route6<\/code> l'oggetto fornisce il record equivalente per un prefisso IPv6. Ad esempio, un oggetto route pu\u00f2 indicare che <code>203.0.113.0\/24<\/code> \u00e8 destinato a essere annunciato da <code>AS64500<\/code>. Questi oggetti sono comunemente utilizzati dai provider e dai peer durante la creazione di filtri di routing. Un oggetto route non equivale a un annuncio BGP attivo, ma \u00e8 un'importante dichiarazione dell'intento di routing.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Come cercare nel database RIPE<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il database RIPE pu\u00f2 essere consultato tramite la sua interfaccia web, strumenti di interrogazione in stile WHOIS e API REST. Il metodo scelto dipende dallo scopo dell\u2019utente. Un responsabile aziendale pu\u00f2 preferire l\u2019interfaccia web perch\u00e9 \u00e8 facile da leggere. Un ingegnere di rete pu\u00f2 utilizzare query dalla riga di comando o le API REST per l\u2019automazione. Un team di sicurezza pu\u00f2 utilizzare una combinazione di ricerche nel database, strumenti di convalida RPKI, piattaforme di monitoraggio BGP e sistemi interni di risposta agli incidenti.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Una ricerca IP di base pu\u00f2 mostrare le informazioni di registrazione associate a un intervallo di indirizzi IPv4 o IPv6 pubblico. Se un utente cerca un indirizzo IP, il database pu\u00f2 restituire un oggetto relativo all'intervallo di indirizzi contenente l'intervallo allocato o assegnato, il nome della rete, il codice del Paese, il riferimento all'organizzazione, i contatti tecnici, i riferimenti ai contatti per gli abusi e le informazioni sul maintainer. A seconda dell'oggetto e delle norme sulla privacy applicabili, alcuni dettagli di contatto potrebbero essere oscurati o limitati.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Una ricerca ASN pu\u00f2 mostrare il <code>aut-num<\/code> oggetto associato a una rete. Pu\u00f2 includere l\u2019ASN stesso, una descrizione, riferimenti all\u2019organizzazione pertinente, contatti tecnici, informazioni sulla policy di routing e dettagli del maintainer. Un record ASN pu\u00f2 essere utile quando si indaga sull\u2019identit\u00e0 di routing di una rete o ci si prepara a una relazione BGP.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Una ricerca della route pu\u00f2 aiutare a determinare se un prefisso \u00e8 documentato come annunciato da uno specifico ASN. Ci\u00f2 \u00e8 utile quando un provider upstream richiede un oggetto route prima di accettare un annuncio BGP. Pu\u00f2 inoltre aiutare gli ingegneri a diagnosticare il motivo per cui un prefisso viene filtrato, rifiutato o trattato come imprevisto.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tuttavia, gli utenti devono comprendere i limiti dei dati. Un oggetto route non dimostra che la route sia attualmente visibile su Internet globale. Non dimostra che ogni provider accetti la route. Inoltre, non sostituisce la convalida RPKI. Per comprendere la visibilit\u00e0 attuale del routing, l'utente potrebbe dover consultare sistemi di monitoraggio BGP, collettori di route, looking glass dei provider, validatori RPKI o piattaforme di intelligence sul routing.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Analogamente, un record dell'indirizzo IP pu\u00f2 mostrare un'organizzazione registrata, ma non rivela necessariamente ogni azienda che utilizza servizi dietro quell'indirizzo. I provider di hosting, le piattaforme cloud, i servizi VPN e i rivenditori possono gestire infrastrutture per molti clienti utilizzando un blocco condiviso o delegato.<\/p>\n\n\n\n<section id=\"ripe-rest-api-tutorial\" class=\"ripe-api-tutorial\" aria-labelledby=\"ripe-rest-api-title\">\n  <header class=\"ripe-api-tutorial__hero\">\n    <span class=\"ripe-api-tutorial__eyebrow\">TUTORIAL TECNICO<\/span>\n    <h2 id=\"ripe-rest-api-title\">Come utilizzare l'API REST del database RIPE<\/h2>\n    <p>Apprendi il formato degli URI REST, le chiavi degli oggetti, le consultazioni sicure in sola lettura, gli aggiornamenti autenticati, la convalida in modalit\u00e0 dry-run, i formati delle risposte e le misure di sicurezza operative.<\/p>\n  <\/header>\n\n  <div class=\"ripe-api-tutorial__content\">\n    <p class=\"ripe-api-tutorial__lead\">L'API REST del RIPE Database fornisce accesso programmatico agli oggetti del RIPE Database tramite HTTPS. \u00c8 utile per gli inventari delle risorse, gli strumenti di gestione della rete, i portali interni, i flussi di monitoraggio e l'amministrazione controllata delle risorse. Ogni oggetto del RIPE Database dispone di un URI di localizzazione univoco, quindi un'applicazione pu\u00f2 recuperare o gestire un oggetto specifico quando conosce la fonte del database, il tipo di oggetto e la chiave primaria.<\/p>\n\n    <h3><span class=\"step-badge\">1<\/span> Informazioni sul formato URI REST<\/h3>\n    <p>Il formato URI standard dell'oggetto \u00e8 <code>https:\/\/rest.db.ripe.net\/source\/objecttype\/key<\/code>. Il <strong>fonte<\/strong> identifica la fonte del database, come <code>RIPE<\/code> per i dati di produzione o <code>TEST<\/code> quando si utilizza l'ambiente di test. Il <strong>tipo di oggetto<\/strong> identifica l'oggetto del Database RIPE, come <code>inetnum<\/code>, <code>inet6num<\/code>, <code>aut-num<\/code>, <code>persona<\/code>, <code>ruolo<\/code>, <code>mntner<\/code>, <code>percorso<\/code>, oppure <code>route6<\/code>. Il <strong>chiave<\/strong> \u00e8 l'identificatore primario dell'oggetto.<\/p>\n\n    <div class=\"ripe-api-tutorial__uri-card\">\n      <span>Pattern URI<\/span>\n      <code>https:\/\/rest.db.ripe.net\/source\/objecttype\/key<\/code>\n    <\/div>\n\n    <p>La maggior parte dei tipi di oggetto utilizza un valore di chiave primaria. Gli oggetti persona e ruolo utilizzano il <code>nic-hdl<\/code> il valore come chiave. Gli oggetti route e route6 usano una chiave combinata: il prefisso della route seguito immediatamente dall'ASN di origine. Ad esempio, un oggetto route per il prefisso <code>193.0.22.0\/23<\/code> originato da <code>AS3333<\/code> utilizza la chiave combinata <code>193.0.22.0\/23AS3333<\/code>. Utilizzare la codifica URL quando richiesto, quando una chiave include caratteri quali barre, spazi o altri caratteri URL riservati.<\/p>\n\n    <div class=\"ripe-api-tutorial__environment\">\n      <div>\n        <strong>Ambiente di produzione<\/strong>\n        <code>https:\/\/rest.db.ripe.net<\/code>\n        <p>Usa questo endpoint per gli oggetti live del database RIPE e gli aggiornamenti di produzione autorizzati.<\/p>\n      <\/div>\n      <div>\n        <strong>Ambiente di test<\/strong>\n        <code>https:\/\/rest-test.db.ripe.net<\/code>\n        <p>Utilizza questo endpoint per esercitarti con le richieste e convalidare la logica di integrazione senza modificare i dati di produzione.<\/p>\n      <\/div>\n    <\/div>\n\n    <h3><span class=\"step-badge\">2<\/span> Inizia con una ricerca di oggetti di sola lettura<\/h3>\n    <p>Il recupero in sola lettura \u00e8 il punto di partenza pi\u00f9 sicuro per un'integrazione. Il comando seguente richiede il pubblico <code>aut-num<\/code> oggetto per l'ASN di esempio <code>AS3333<\/code> e chiede all'API di restituire JSON. Sostituisci l'ASN di esempio solo con un ASN pubblico reale che sei autorizzato a interrogare. Questo comando non crea, modifica o elimina alcun oggetto del database.<\/p>\n\n    <pre><code>curl -H \"Accept: application\/json\" \\\n  \"https:\/\/rest.db.ripe.net\/ripe\/aut-num\/AS3333.json\"<\/code><\/pre>\n\n    <p>Puoi richiedere XML utilizzando <code>Accept: application\/xml<\/code> oppure utilizzando un <code>.xml<\/code> estensione. JSON pu\u00f2 essere richiesto con <code>Accept: application\/json<\/code> o un <code>.json<\/code> estensione. Se il formato della risposta non \u00e8 specificato, l'API utilizza XML per impostazione predefinita. Le applicazioni devono richiedere esplicitamente il formato preferito, in modo che il comportamento di analisi rimanga prevedibile.<\/p>\n\n    <h3><span class=\"step-badge\">3<\/span> Cerca dati quando non conosci la chiave esatta dell'oggetto<\/h3>\n    <p>Una richiesta di ricerca \u00e8 utile quando si dispone di un ASN, un indirizzo IP, un prefisso, un identificatore di organizzazione o un altro valore di ricerca, ma non si conosce ancora l'URI esatto dell'oggetto. L'esempio seguente cerca nella fonte RIPE i record relativi ad AS3333. Il <code>flags=no-referenced<\/code> il parametro richiede una risposta semplificata che non includa gli oggetti referenziati.<\/p>\n\n    <pre><code>curl --get \"https:\/\/rest.db.ripe.net\/search.json\" \\\n  --data-urlencode \"query-string=AS3333\" \\\n  --data-urlencode \"source=ripe\" \\\n  --data-urlencode \"flags=no-referenced\".<\/code><\/pre>\n\n    <p>Per una ricerca del routing, restringi la risposta in base al tipo di oggetto. Il seguente esempio cerca IPv4 <code>percorso<\/code> oggetti associati al prefisso della documentazione <code>203.0.113.0\/24<\/code>. Un oggetto route documenta le informazioni di routing previste; dovrebbe essere valutato insieme alla visibilit\u00e0 BGP in tempo reale e allo stato RPKI prima di prendere una decisione di routing.<\/p>\n\n    <pre><code>curl --get \"https:\/\/rest.db.ripe.net\/search.json\" \\\n  --data-urlencode \"query-string=203.0.113.0\/24\" \\\n  --data-urlencode \"type-filter=route\" \\\n  --data-urlencode \"source=ripe\"<\/code><\/pre>\n\n    <h3><span class=\"step-badge\">4<\/span> Usa POST, PUT e DELETE solo con la corretta autorizzazione<\/h3>\n    <p>L'API REST supporta <strong>PUBBLICA<\/strong> per creare un oggetto, <strong>PUT<\/strong> per aggiornare un oggetto esistente e <strong>ELIMINA<\/strong> per rimuovere un oggetto. Queste operazioni richiedono HTTPS, un'autorizzazione corretta e un corpo della richiesta o un oggetto di destinazione validi. Il corpo della richiesta per la creazione o l'aggiornamento di un oggetto \u00e8 una rappresentazione WhoisResource dell'oggetto. Per le richieste POST, PUT e DELETE, specificare appropriati <code>Tipo di contenuto<\/code> e <code>Accetta<\/code> intestazioni. Le rappresentazioni degli oggetti supportate includono <code>application\/json<\/code> e <code>application\/xml<\/code>.<\/p>\n\n    <div class=\"ripe-api-tutorial__method-grid\">\n      <article>\n        <span>PUBBLICA<\/span>\n        <h4>Crea un oggetto<\/h4>\n        <p>Usa <code>POST \/{source}\/{objecttype}<\/code> per creare un nuovo oggetto. Una richiesta completata correttamente restituisce l'oggetto appena creato, non filtrato.<\/p>\n      <\/article>\n      <article>\n        <span>PUT<\/span>\n        <h4>Aggiorna un oggetto<\/h4>\n        <p>Usa <code>PUT \/{source}\/{objecttype}\/{key}<\/code> inviare una nuova versione di un oggetto esistente.<\/p>\n      <\/article>\n      <article>\n        <span>ELIMINA<\/span>\n        <h4>Rimuovi un oggetto<\/h4>\n        <p>Usa <code>ELIMINA \/{source}\/{objecttype}\/{key}<\/code> solo quando l'oggetto non \u00e8 pi\u00f9 necessario e la cancellazione \u00e8 autorizzata.<\/p>\n      <\/article>\n    <\/div>\n\n    <p>Non inserire una chiave API, un valore di autenticazione di base, un certificato, una password o una credenziale del manutentore nell'HTML di WordPress, nel JavaScript del front-end, in un repository Git pubblico, in uno screenshot o in un'e-mail. Le richieste autenticate devono essere effettuate tramite un servizio sicuro lato server, un runner di automazione controllato o un ambiente professionale di gestione dei segreti.<\/p>\n\n    <h3><span class=\"step-badge\">5<\/span> Convalida prima le modifiche con un'esecuzione di prova<\/h3>\n    <p>Usa il <code>dry-run=true<\/code> parametro di query per convalidare una richiesta POST, PUT o DELETE proposta senza eseguire l'aggiornamento. Questo \u00e8 il metodo preferito per testare la struttura della richiesta, il contenuto dell'oggetto e il comportamento dell'autorizzazione prima di qualsiasi modifica in produzione. L'esempio seguente \u00e8 intenzionalmente rivolto all'endpoint di test e utilizza valori segnaposto. Deve essere adattato esclusivamente da un amministratore autorizzato che lavori con un oggetto di test valido e credenziali sicure.<\/p>\n\n    <pre><code>curl -X PUT \\\n  -H \"Content-Type: application\/json\" \\\n  -H \"Accept: application\/json\" \\\n  --data @object.json \\\n  \"https:\/\/rest-test.db.ripe.net\/test\/person\/EXAMPLE-TEST?dry-run=true\"<\/code><\/pre>\n\n    <p>L'opzionale <code>non formattato<\/code> parametro pu\u00f2 essere utilizzato quando un'applicazione deve preservare la formattazione fornita nella richiesta, inclusi spazi e interruzioni di riga. Per le richieste di eliminazione, l'opzionale <code>motivo<\/code> Il parametro pu\u00f2 essere fornito per documentare il motivo per cui l'oggetto viene rimosso. Un'esecuzione a secco convalida la richiesta, ma non crea, aggiorna o elimina l'oggetto di destinazione.<\/p>\n\n    <h3><span class=\"step-badge\">6<\/span> Interpretare i codici di stato HTTP e le risposte API<\/h3>\n    <p>Le applicazioni client dovrebbero utilizzare i codici di stato HTTP per determinare l'esito di un'operazione e dovrebbero leggere il corpo della risposta quando si verifica un errore. Il corpo della risposta viene restituito nel formato JSON o XML richiesto. Una risposta di aggiornamento riuscita contiene l'oggetto cos\u00ec come appare nel database dopo l'operazione, il che \u00e8 utile quando un'applicazione necessita di una conferma immediata del risultato memorizzato.<\/p>\n\n    <div class=\"ripe-api-tutorial__status-grid\">\n      <div><strong>200<\/strong><span>Richiesta o aggiornamento riusciti.<\/span><\/div>\n      <div><strong>400<\/strong><span>Richiesta non valida, ad esempio un tipo di oggetto o una chiave non validi.<\/span><\/div>\n      <div><strong>401<\/strong><span>Autenticazione non riuscita o credenziali richieste non fornite.<\/span><\/div>\n      <div><strong>403 \/ 429<\/strong><span>La richiesta \u00e8 stata rifiutata oppure \u00e8 stato superato un limite di query.<\/span><\/div>\n      <div><strong>404<\/strong><span>L'oggetto richiesto o il risultato della ricerca non \u00e8 stato trovato.<\/span><\/div>\n      <div><strong>409<\/strong><span>\u00c8 stato violato un vincolo di integrit\u00e0, ad esempio durante la creazione di un oggetto esistente.<\/span><\/div>\n      <div><strong>415<\/strong><span>Il tipo di supporto multimediale Accept o Content-Type \u00e8 mancante o non supportato.<\/span><\/div>\n      <div><strong>500<\/strong><span>Il servizio ha riscontrato una condizione interna imprevista.<\/span><\/div>\n    <\/div>\n\n    <h3><span class=\"step-badge\">7<\/span> Piano per la codifica e la latenza degli aggiornamenti<\/h3>\n    <p>Le risposte dell\u2019API REST vengono restituite in UTF-8. Gli oggetti del Database RIPE vengono memorizzati utilizzando il set di caratteri Latin-1, pertanto il contenuto della richiesta deve utilizzare UTF-8 rimanendo al contempo entro i caratteri Latin-1 validi. Se \u00e8 necessario convertire un carattere non supportato, il servizio pu\u00f2 sostituirlo con un carattere punto interrogativo e restituire un avviso. Dopo un\u2019operazione di scrittura, eseguire una query successiva oppure fare affidamento sulla risposta di modifica riuscita per confermare ci\u00f2 che \u00e8 stato memorizzato.<\/p>\n\n    <p>Gli aggiornamenti del database potrebbero non essere immediatamente visibili nelle operazioni di ricerca e consultazione. Il ritardo massimo documentato pu\u00f2 arrivare fino a dieci secondi. Gli oggetti non gerarchici, come gli oggetti person, role e organisation, sono spesso visibili pi\u00f9 rapidamente. I tipi di oggetti gerarchici, inclusi gli oggetti inetnum, inet6num, route, route6 e domain, possono impiegare diversi secondi prima di comparire nelle ricerche successive. L'automazione in produzione dovrebbe pertanto includere una logica di nuovi tentativi e non dovrebbe considerare una mancata corrispondenza immediata nella consultazione come prova del fallimento di un aggiornamento eseguito con successo.<\/p>\n\n    <aside class=\"ripe-api-tutorial__checklist\" aria-label=\"Lista di controllo per l&#039;implementazione delle API REST\">\n      <span>Prima di automatizzare<\/span>\n      <p>Usa HTTPS, richiedi esplicitamente JSON o XML, mantieni le credenziali sul lato server, inizia con query di sola lettura, testa le mutazioni con <code>dry-run=true<\/code>, esaminare i codici di stato HTTP, tenere conto della latenza degli aggiornamenti e verificare i record di routing rispetto ai dati BGP e RPKI in tempo reale.<\/p>\n    <\/aside>\n  <\/div>\n<\/section>\n\n<style>\n  #ripe-rest-api-tutorial.ripe-api-tutorial {\n    --rapi-navy: #062946;\n    --rapi-blue: #126ccc;\n    --rapi-sky: #eaf5ff;\n    --rapi-line: #d6e4f0;\n    --rapi-text: #30475c;\n    --rapi-muted: #62788d;\n    box-sizing: border-box;\n    max-width: 980px;\n    margin: 42px auto;\n    overflow: hidden;\n    border: 1px solid var(--rapi-line);\n    border-radius: 18px;\n    background: #ffffff;\n    box-shadow: 0 16px 42px rgba(22, 55, 87, .11);\n    color: var(--rapi-text);\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Arial, sans-serif;\n  }\n  #ripe-rest-api-tutorial *, #ripe-rest-api-tutorial *::before, #ripe-rest-api-tutorial *::after { box-sizing: border-box; }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__hero {\n    position: relative;\n    overflow: hidden;\n    padding: 44px;\n    background: linear-gradient(125deg, #05213d 0%, #0b4b85 57%, #1479d7 130%);\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__hero::after {\n    position: absolute;\n    top: -106px;\n    right: -51px;\n    width: 290px;\n    height: 290px;\n    border: 1px solid rgba(219, 243, 255, .29);\n    border-radius: 50%;\n    box-shadow: 0 0 0 27px rgba(219, 243, 255, .07), 0 0 0 57px rgba(219, 243, 255, .045);\n    content: \"\";\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__eyebrow {\n    position: relative;\n    z-index: 1;\n    display: block;\n    margin: 0 0 11px;\n    color: #a9dcff !important;\n    font-size: 11px !important;\n    font-weight: 800 !important;\n    letter-spacing: .14em;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__hero h2 {\n    position: relative;\n    z-index: 1;\n    max-width: 760px;\n    margin: 0 0 12px !important;\n    padding: 0 !important;\n    border: 0 !important;\n    background: transparent !important;\n    color: #ffffff !important;\n    -webkit-text-fill-color: #ffffff !important;\n    font-size: clamp(24px, 3.5vw, 34px) !important;\n    font-weight: 800 !important;\n    line-height: 1.25 !important;\n    text-decoration: none !important;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__hero p {\n    position: relative;\n    z-index: 1;\n    max-width: 760px;\n    margin: 0 !important;\n    color: #e5f3ff !important;\n    -webkit-text-fill-color: #e5f3ff !important;\n    font-size: 15px !important;\n    font-weight: 400 !important;\n    line-height: 1.6 !important;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__content { padding: 36px 44px 44px; }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__lead {\n    margin: 0 0 32px !important;\n    font-size: 16px !important;\n    font-weight: 400 !important;\n    line-height: 1.76 !important;\n  }\n  \n  \/* \u4f18\u5316\u6807\u9898\u6392\u7248\uff1a\u6e05\u9664\u4e3b\u9898\u81ea\u5e26\u7684\u8fb9\u6846\/\u4f2a\u5143\u7d20\uff0c\u5e76\u5f00\u542f\u5c45\u4e2d\u5bf9\u9f50 *\/\n  #ripe-rest-api-tutorial h3 {\n    display: flex !important;\n    align-items: center !important;\n    gap: 12px !important;\n    margin: 40px 0 16px !important;\n    padding: 0 0 12px !important;\n    border-top: 0 !important;\n    border-right: 0 !important;\n    border-left: 0 !important; \/* \u6e05\u9664\u5de6\u4fa7\u9ed1\u8272\u575a\u6761 *\/\n    border-bottom: 1px solid var(--rapi-line) !important;\n    color: var(--rapi-navy) !important;\n    font-size: 19px !important;\n    font-weight: 700 !important;\n    line-height: 1.4 !important;\n  }\n\n  \/* \u5f7b\u5e95\u6d88\u9664\u53ef\u80fd\u6765\u81ea\u7236\u7ea7\u4e3b\u9898\u7684 ::before \/ ::after \u88c5\u9970\u6761 *\/\n  #ripe-rest-api-tutorial h3::before,\n  #ripe-rest-api-tutorial h3::after {\n    display: none !important;\n    content: none !important;\n  }\n\n  #ripe-rest-api-tutorial h3:first-of-type { margin-top: 0 !important; }\n  \n  \/* \u72ec\u7acb\u7684\u6b65\u9aa4\u6570\u5b57\u5fbd\u7ae0\uff1a\u4e25\u683c\u4fdd\u6301\u5782\u76f4\u6c34\u5e73\u5c45\u4e2d *\/\n  #ripe-rest-api-tutorial .step-badge {\n    display: inline-flex !important;\n    align-items: center !important;\n    justify-content: center !important;\n    flex-shrink: 0 !important;\n    width: 26px !important;\n    height: 26px !important;\n    border-radius: 50% !important;\n    background: var(--rapi-sky) !important;\n    border: 1px solid #bdddfa !important;\n    color: var(--rapi-blue) !important;\n    font-family: ui-monospace, SFMono-Regular, Consolas, monospace !important;\n    font-size: 13px !important;\n    font-weight: 800 !important;\n    line-height: 1 !important;\n    text-align: center !important;\n  }\n\n  #ripe-rest-api-tutorial h4 {\n    margin: 0 0 7px !important;\n    padding: 0 !important;\n    color: var(--rapi-navy) !important;\n    font-size: 15px !important;\n    font-weight: 700 !important;\n    line-height: 1.4 !important;\n  }\n  #ripe-rest-api-tutorial p {\n    margin: 0 0 16px !important;\n    color: var(--rapi-text) !important;\n    font-size: 15px !important;\n    font-weight: 400 !important;\n    line-height: 1.7 !important;\n  }\n  #ripe-rest-api-tutorial strong { color: inherit !important; font-weight: 600; }\n  #ripe-rest-api-tutorial code {\n    padding: 2px 6px;\n    border-radius: 4px;\n    background: #edf5fb;\n    color: #0e5c97 !important;\n    font-family: ui-monospace, SFMono-Regular, Consolas, monospace !important;\n    font-size: .9em !important;\n    overflow-wrap: anywhere;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__uri-card {\n    display: flex;\n    gap: 14px;\n    align-items: center;\n    margin: 20px 0;\n    padding: 14px 18px;\n    border: 1px solid #bdddfa;\n    border-radius: 8px;\n    background: var(--rapi-sky);\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__uri-card span {\n    flex: 0 0 auto;\n    color: var(--rapi-blue) !important;\n    font-size: 11px !important;\n    font-weight: 800 !important;\n    letter-spacing: .07em;\n    text-transform: uppercase;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__uri-card code { background: transparent; color: var(--rapi-navy) !important; font-size: 14px !important; }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__environment {\n    display: grid;\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n    gap: 14px;\n    margin: 22px 0 6px;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__environment > div {\n    padding: 16px;\n    border: 1px solid var(--rapi-line);\n    border-radius: 8px;\n    background: #fbfdff;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__environment strong { display: block; margin-bottom: 6px; color: var(--rapi-navy) !important; font-size: 14px !important; }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__environment code { display: inline-block; margin-bottom: 8px; }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__environment p { margin: 0 !important; color: var(--rapi-muted) !important; font-size: 14px !important; line-height: 1.55 !important; }\n  #ripe-rest-api-tutorial pre {\n    margin: 18px 0 20px !important;\n    padding: 16px 18px !important;\n    overflow-x: auto;\n    border: 0 !important;\n    border-radius: 8px;\n    background: #061e36 !important;\n    color: #dff2ff !important;\n    font-size: 13px !important;\n    line-height: 1.65 !important;\n    white-space: pre !important;\n  }\n  #ripe-rest-api-tutorial pre code { padding: 0 !important; border-radius: 0 !important; background: transparent !important; color: #dff2ff !important; font-size: inherit !important; overflow-wrap: normal; }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__method-grid {\n    display: grid;\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n    gap: 12px;\n    margin: 20px 0;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__method-grid article {\n    padding: 16px;\n    border: 1px solid var(--rapi-line);\n    border-radius: 8px;\n    background: #fbfdff;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__method-grid article > span {\n    display: inline-block;\n    margin-bottom: 8px;\n    padding: 3px 6px;\n    border-radius: 4px;\n    background: #e3f2ff;\n    color: var(--rapi-blue) !important;\n    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;\n    font-size: 11px !important;\n    font-weight: 800 !important;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__method-grid p { margin: 0 !important; color: var(--rapi-muted) !important; font-size: 14px !important; line-height: 1.55 !important; }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__status-grid {\n    display: grid;\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n    gap: 10px;\n    margin-top: 20px;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__status-grid > div {\n    display: flex;\n    gap: 12px;\n    align-items: flex-start;\n    padding: 12px 14px;\n    border: 1px solid var(--rapi-line);\n    border-radius: 8px;\n    background: #ffffff;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__status-grid strong {\n    min-width: 46px;\n    color: var(--rapi-blue) !important;\n    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;\n    font-size: 13px !important;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__status-grid span { color: var(--rapi-muted) !important; font-size: 14px !important; line-height: 1.5; }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__checklist {\n    margin-top: 28px;\n    padding: 18px 20px;\n    border-left: 4px solid var(--rapi-blue);\n    border-radius: 0 8px 8px 0;\n    background: #f2f8fd;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__checklist > span {\n    display: block;\n    margin-bottom: 6px;\n    color: var(--rapi-blue) !important;\n    font-size: 11px !important;\n    font-weight: 800 !important;\n    letter-spacing: .08em;\n    text-transform: uppercase;\n  }\n  #ripe-rest-api-tutorial .ripe-api-tutorial__checklist p { margin: 0 !important; color: #3d566c !important; font-size: 14px !important; }\n\n  @media (max-width: 680px) {\n    #ripe-rest-api-tutorial.ripe-api-tutorial { margin: 20px auto; border-radius: 12px; }\n    #ripe-rest-api-tutorial .ripe-api-tutorial__hero { padding: 28px 20px; }\n    #ripe-rest-api-tutorial .ripe-api-tutorial__content { padding: 24px 18px; }\n    #ripe-rest-api-tutorial .ripe-api-tutorial__environment, \n    #ripe-rest-api-tutorial .ripe-api-tutorial__method-grid, \n    #ripe-rest-api-tutorial .ripe-api-tutorial__status-grid { \n      grid-template-columns: 1fr; \n    }\n    #ripe-rest-api-tutorial .ripe-api-tutorial__uri-card { display: block; }\n    #ripe-rest-api-tutorial .ripe-api-tutorial__uri-card span { display: block; margin-bottom: 6px; }\n    #ripe-rest-api-tutorial h3 { \n      align-items: flex-start !important;\n      margin-top: 28px !important; \n      font-size: 17px !important; \n    }\n    #ripe-rest-api-tutorial .step-badge {\n      margin-top: 2px !important;\n    }\n  }\n<\/style>\n\n\n\n<h2 class=\"wp-block-heading\">Come gli oggetti di instradamento del database RIPE supportano il filtraggio BGP<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">BGP \u00e8 il protocollo di routing che consente ai Sistemi autonomi di scambiare informazioni sulla raggiungibilit\u00e0 attraverso Internet. Quando un'azienda annuncia un prefisso IPv4 o IPv6, il suo provider upstream deve decidere se accettare quella rotta. Per ridurre il rischio di perdite di rotte, dirottamento di prefissi, annunci accidentali e violazioni delle policy, molti provider utilizzano filtri di routing.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un oggetto route \u00e8 uno degli input che possono supportare questo processo di filtraggio. L'oggetto indica che un determinato prefisso deve essere originato da un determinato ASN. Ad esempio, se un'azienda opera <code>AS64500<\/code> e annuncia <code>203.0.113.0\/24<\/code>, un oggetto route pu\u00f2 documentare tale relazione. Un provider pu\u00f2 utilizzare l'oggetto route durante la creazione di un filtro dei prefissi che consenta all'ASN di annunciare solo quel prefisso previsto.Questo non significa che ogni provider utilizzi la stessa politica di filtraggio. Alcuni provider utilizzano ampiamente gli oggetti route IRR. Altri fanno maggiore affidamento su RPKI. Molti utilizzano una combinazione di RPKI, dati IRR, regole di policy interne, contratti con i clienti, limiti sui prefissi e revisione manuale. Pertanto, un'azienda non dovrebbe presumere che la creazione di un oggetto route garantisca automaticamente l'accettazione della rotta ovunque.L'approccio operativo migliore consiste nel coordinarsi con il provider upstream prima dell'annuncio. L'azienda dovrebbe confermare quali prefissi verranno annunciati, quale ASN li originer\u00e0, se il provider richiede oggetti route IRR, se sono richiesti ROA RPKI, quale lunghezza massima del prefisso \u00e8 consentita e se il provider dispone di una procedura di registrazione delle rotte o di ticketing.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un errore comune \u00e8 configurare prima il BGP e occuparsi dei record delle rotte in un secondo momento. Questo pu\u00f2 causare ritardi perch\u00e9 il provider potrebbe rifiutare l\u2019annuncio finch\u00e9 i dati di registrazione non sono completi. Un processo migliore consiste nel preparare l\u2019oggetto della rotta, creare o convalidare la ROA, verificare i record dell\u2019ASN e dell\u2019organizzazione, quindi configurare la sessione BGP ed eseguire test controllati.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Database RIPE e RPKI: simili ma diversi<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il database RIPE e RPKI sono correlati alla sicurezza del routing, ma svolgono funzioni diverse. Il database RIPE contiene informazioni di registrazione e sulle politiche di routing mantenute pubblicamente. RPKI, ovvero Resource Public Key Infrastructure, \u00e8 un framework crittografico utilizzato per creare autorizzazioni dell'origine delle rotte.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un oggetto route pu\u00f2 dichiarare che uno specifico prefisso IP \u00e8 destinato a essere originato da uno specifico ASN. Una ROA autorizza crittograficamente un ASN a originare uno specifico prefisso e pu\u00f2 anche definire la lunghezza massima del prefisso che pu\u00f2 essere annunciato. Le reti che eseguono la convalida dell'origine delle route RPKI possono utilizzare le ROA per classificare le route ricevute come valide, non valide o non trovate.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ad esempio, un'organizzazione pu\u00f2 detenere un prefisso IPv6 e gestire un ASN. Pu\u00f2 creare un oggetto route6 nel RIPE Database per documentare l'ASN di origine previsto. Pu\u00f2 anche creare una ROA che autorizzi tale ASN ad annunciare il prefisso. L'oggetto route6 pu\u00f2 agevolare il filtraggio basato sull'IRR, mentre la ROA supporta la convalida crittografica dell'origine della rotta.I due elementi dovrebbero essere mantenuti coerenti. Se l'oggetto route punta a un ASN ma la ROA ne autorizza un altro, i provider upstream e gli operatori di rete potrebbero rilevare segnali contrastanti. Se la ROA ha una lunghezza massima del prefisso errata, gli annunci legittimi di prefissi pi\u00f9 specifici potrebbero essere contrassegnati come non validi. Se un oggetto route \u00e8 obsoleto, un provider che utilizza filtri basati sull'IRR potrebbe rifiutare un annuncio altrimenti legittimo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le organizzazioni dovrebbero riesaminare i propri oggetti route e le ROA ogni volta che modificano gli accordi relativi agli ASN, cambiano LIR sponsor, trasferiscono risorse IPv4, ristrutturano la propria azienda, aggiungono un nuovo provider upstream o modificano la propria policy di annuncio dei prefissi. I record di routing dovrebbero essere trattati come dati operativi in continua evoluzione, non come attivit\u00e0 di configurazione da svolgere una tantum.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Utilizzo dell'API REST del database RIPE<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L'API REST del RIPE Database consente ai sistemi software di recuperare e, ove debitamente autorizzati, gestire gli oggetti del RIPE Database tramite richieste programmatiche. L'API pu\u00f2 essere utile per le organizzazioni che gestiscono molte reti, mantengono ampi portafogli di risorse IP, eseguono sistemi di monitoraggio, sviluppano portali per i clienti o devono integrare i dati del registro nei flussi di lavoro interni.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un semplice flusso di lavoro di un'API REST pu\u00f2 iniziare con una richiesta di ricerca. Il sistema invia una query per un ASN, un indirizzo IP, un prefisso, un identificatore dell'organizzazione, un nome di rete o un altro valore noto. Il database restituisce dati strutturati, comunemente in formato JSON o XML. L'applicazione pu\u00f2 quindi analizzare il risultato e visualizzare gli attributi pertinenti a un operatore oppure confrontare il risultato con i record interni.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ad esempio, un provider cloud pu\u00f2 utilizzare query API in sola lettura per verificare se esiste un ASN fornito dal cliente e se i record di routing pubblici corrispondono alle informazioni di onboarding. Un sistema di sicurezza di rete pu\u00f2 utilizzare query API per identificare un contatto registrato per le segnalazioni di abuso relativo a un intervallo di indirizzi. Una piattaforma di gestione delle risorse IP pu\u00f2 confrontare il proprio inventario interno con i record di registrazione pubblici per identificare contatti obsoleti o oggetti di routing mancanti.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">L\u2019API dovrebbe essere utilizzata in modo responsabile. I sistemi automatizzati dovrebbero evitare volumi di query eccessivi, gestire gli errori in modo appropriato e non considerare un singolo risultato del database come prova completa di propriet\u00e0, autorizzazione o stato di instradamento attivo. Un flusso di lavoro solido pu\u00f2 combinare i risultati dell\u2019API del Database RIPE con la convalida RPKI, i dati di monitoraggio BGP, i contratti interni, la verifica dei clienti e una revisione manuale.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per le richieste di sola lettura, pu\u00f2 essere sufficiente uno strumento da riga di comando come cURL. Uno sviluppatore pu\u00f2 inviare una richiesta GET all'endpoint di ricerca, definire un valore di ricerca, applicare un filtro per origine e richiedere una risposta JSON. La risposta pu\u00f2 quindi essere analizzata in Python, PHP, JavaScript, Go, Java o qualsiasi altro linguaggio di programmazione in grado di leggere JSON.Quando si lavora con gli aggiornamenti degli oggetti, il rischio \u00e8 maggiore. Le modifiche agli oggetti delle route, ai contatti, ai record delle organizzazioni o ai responsabili possono influire sul routing in produzione, sulla risposta agli incidenti e sulla continuit\u00e0 aziendale. Le operazioni di scrittura richiedono un'autorizzazione appropriata tramite il responsabile o il processo di registro pertinente. Le credenziali devono essere archiviate in modo sicuro lato server o in un sistema approvato di gestione dei segreti. Non devono mai essere incorporate nell'HTML del sito web, nel JavaScript front-end, nei repository pubblici, nella memoria locale del browser, negli screenshot, nei modelli di email o nei file di configurazione non crittografati.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un'azienda dovrebbe inoltre stabilire procedure di gestione delle modifiche. Prima di aggiornare un oggetto route o un record correlato all'ASN, l'ingegnere responsabile dovrebbe verificare il prefisso previsto, l'ASN di origine, lo stato RPKI, i requisiti del provider upstream, il percorso di autorizzazione e il potenziale impatto della modifica. Per le organizzazioni pi\u00f9 grandi, una revisione da parte di una seconda persona pu\u00f2 aiutare a prevenire errori accidentali nelle policy di instradamento.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Qualit\u00e0 dei dati del database RIPE ed errori comuni<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">La qualit\u00e0 dei dati \u00e8 una delle questioni pi\u00f9 importanti nel RIPE Database. Un'azienda pu\u00f2 disporre di risorse IP legittime e di un ASN attivo, ma se gli oggetti associati sono obsoleti, incoerenti o gestiti in modo inadeguato, l'azienda pu\u00f2 comunque dover affrontare problemi tecnici e operativi.Un errore comune consiste nell'utilizzare i dati personali dei dipendenti come unico contatto tecnico o amministrativo. I dipendenti cambiano ruolo, lasciano le aziende, cambiano indirizzo e-mail o diventano irreperibili durante gli incidenti. Un oggetto di ruolo funzionale, come un contatto del Network Operations Center o dell'Abuse Desk, \u00e8 spesso pi\u00f9 duraturo. L'azienda pu\u00f2 aggiornare le persone che ricoprono il ruolo senza dover modificare ogni oggetto di risorsa collegato.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un altro errore comune consiste nel non aggiornare le informazioni sull'organizzazione dopo una modifica della denominazione legale, un'acquisizione, una fusione o una ristrutturazione societaria. Se l'entit\u00e0 giuridica associata a un ASN o a un blocco IP cambia, potrebbe essere necessario riesaminare i dati del registro. L'azienda dovrebbe coordinarsi con il proprio LIR sponsor o fornitore di servizi del registro, anzich\u00e9 presumere che una modifica legale interna si rifletta automaticamente nei registri Internet pubblici. Alcune organizzazioni creano anche oggetti di rotta, ma non provvedono a mantenerli. Potrebbero aggiungere un nuovo provider upstream, modificare un ASN, trasferire un prefisso o modificare la propria progettazione BGP senza aggiornare i dati di routing. Ci\u00f2 pu\u00f2 creare una discrepanza tra la policy di routing prevista e le informazioni presenti nei database pubblici.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un problema correlato consiste nel trattare gli oggetti di rotta IRR e le ROA RPKI come intercambiabili. Non lo sono. Entrambi possono essere utili e ciascuno pu\u00f2 essere richiesto da provider o sistemi di convalida diversi. Un moderno processo di sicurezza del routing dovrebbe esaminare entrambi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Infine, le organizzazioni dovrebbero proteggere con attenzione l'accesso dei responsabili della manutenzione. I controlli del responsabile della manutenzione associati a un oggetto possono determinare chi pu\u00f2 aggiornarlo. La perdita dell'accesso a un responsabile della manutenzione pu\u00f2 rendere difficili gli aggiornamenti futuri. La condivisione non sicura delle credenziali del responsabile della manutenzione pu\u00f2 creare un rischio per la sicurezza inaccettabile. Le aziende dovrebbero documentare la titolarit\u00e0, conservare le credenziali in modo sicuro e mantenere un processo interno chiaro per il recupero dell'accesso e le modifiche autorizzate.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Database RIPE, trasferimenti IPv4 e due diligence delle risorse<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il database RIPE \u00e8 particolarmente rilevante durante un trasferimento IPv4. Prima di acquisire spazio di indirizzi IPv4, un acquirente dovrebbe esaminare i registri pubblici associati al prefisso. Questi possono includere l'oggetto indirizzo attuale, il riferimento all'organizzazione, il nome della rete, lo stato della risorsa, i contatti tecnici, il contatto per gli abusi, gli oggetti di rotta e i dettagli del maintainer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Lo scopo non \u00e8 semplicemente confermare che il prefisso esista. L'acquirente dovrebbe verificare se le informazioni di registrazione appaiono coerenti, se il blocco di indirizzi contiene oggetti di instradamento esistenti, se il suo utilizzo storico pu\u00f2 sollevare preoccupazioni in materia di reputazione e se il percorso di trasferimento pu\u00f2 essere gestito correttamente attraverso il processo del registro competente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ad esempio, un acquirente potrebbe scoprire che un blocco IPv4 ha oggetti di routing attivi associati a un ASN che non verr\u00e0 pi\u00f9 utilizzato dopo il trasferimento. L'acquirente potrebbe dover coordinare la rimozione o la sostituzione di tali record, creare nuovi oggetti di routing per il proprio ASN e aggiornare le ROA RPKI prima di annunciare il prefisso dalla propria rete.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">L'acquirente dovrebbe inoltre considerare la reputazione relativa alle email e alla sicurezza. Un intervallo di IP pubblico potrebbe essere stato utilizzato per l'hosting, la distribuzione di email, i servizi proxy, i servizi VPN o altri carichi di lavoro. Se il blocco \u00e8 stato associato ad abusi, spam, malware o traffico sospetto, il nuovo operatore potrebbe dover dedicare tempo a ripristinarne la reputazione dopo il trasferimento. Il RIPE Database non fornisce una cronologia completa della reputazione, ma pu\u00f2 aiutare a identificare gli operatori precedenti e i punti rilevanti per ulteriori indagini.Un processo professionale di trasferimento IPv4 dovrebbe pertanto includere la due diligence sul registro, la verifica legale, la pianificazione tecnica, la preparazione per la sicurezza del routing, la revisione del contratto e la convalida post-trasferimento. Il RIPE Database costituisce una base preziosa per questo processo, ma dovrebbe essere utilizzato insieme ad altre fonti di informazioni.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Come le aziende dovrebbero mantenere i propri dati nel database RIPE<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un'azienda dovrebbe considerare la manutenzione del RIPE Database come una responsabilit\u00e0 operativa continuativa. L'approccio pi\u00f9 efficace consiste nell'assegnare una responsabilit\u00e0 interna chiara. Un team o un ruolo designato dovrebbe essere responsabile del monitoraggio delle modifiche ai dati aziendali, alle risorse IP, agli ASN, ai contatti, agli oggetti di instradamento e ai record RPKI.L'azienda dovrebbe riesaminare periodicamente i propri record pubblici. Dovrebbe confermare che i nomi delle organizzazioni siano aggiornati, che i contatti tecnici siano raggiungibili, che i contatti per gli abusi siano monitorati, che i controlli del maintainer siano accessibili, che gli oggetti di instradamento corrispondano agli annunci BGP effettivi e che le ROA RPKI siano coerenti con la politica di instradamento.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Una revisione \u00e8 particolarmente importante prima di apportare modifiche significative alla rete. Se l'azienda aggiunge un secondo provider di transito, si trasferisce in un nuovo data center, modifica la propria architettura BGP, acquisisce un nuovo blocco IPv4, riceve risorse IPv6, cambia il proprio LIR sponsor o ristruttura la propria entit\u00e0 legale, i dati del registro dovrebbero essere esaminati nell'ambito del piano di progetto.Le aziende che non dispongono internamente di competenze sulle risorse Internet possono collaborare con un LIR sponsor, un consulente di rete, un provider di servizi gestiti o un ingegnere BGP esperto. L'obiettivo non \u00e8 semplicemente completare un modulo del registro. L'obiettivo \u00e8 garantire che i dati legali, i dati tecnici, la policy di routing, i controlli di sicurezza e i processi operativi funzionino insieme.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Il database RIPE fa parte della vostra infrastruttura Internet<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il RIPE Database \u00e8 molto pi\u00f9 di uno strumento pubblico di ricerca. \u00c8 un registro centrale per indirizzi IP, prefissi IPv6, ASN, record di routing, organizzazioni, contatti e maintainer nell\u2019area di servizio del RIPE NCC. Per le aziende che gestiscono infrastrutture Internet pubbliche, i suoi record possono influenzare l\u2019accettazione degli instradamenti, la risposta agli incidenti, la conformit\u00e0, la gestione delle risorse IP e la reputazione della rete.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Una presenza correttamente mantenuta nel database RIPE favorisce la trasparenza e la fiducia tecnica. Aiuta i provider upstream a comprendere quali prefissi una rete dovrebbe annunciare. Aiuta i team di sicurezza a individuare i contatti pertinenti. Aiuta le aziende a convalidare le risorse prima di un trasferimento IPv4. Aiuta gli operatori di rete a mantenere coerenti le informazioni su ASN, oggetti route e RPKI.Le aziende dovrebbero utilizzare il database con attenzione e tenerne presenti i limiti. Un oggetto del database non costituisce una garanzia di visibilit\u00e0 BGP attiva, titolarit\u00e0 legale o qualit\u00e0 della reputazione. \u00c8 una componente importante di un pi\u00f9 ampio processo di gestione dell'infrastruttura Internet. Il modello operativo pi\u00f9 solido combina oggetti accurati nel database RIPE con una configurazione BGP corretta, ROA RPKI validi, accesso sicuro al maintainer, documentazione organizzativa aggiornata, una gestione affidabile degli abusi e un monitoraggio continuo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per qualsiasi azienda che utilizzi un ASN del RIPE NCC, risorse IPv4, prefissi IPv6 o il routing BGP, mantenere registrazioni accurate nel RIPE Database dovrebbe essere considerato una responsabilit\u00e0 fondamentale della gestione della rete.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>","protected":false},"excerpt":{"rendered":"<p>What Is the RIPE Database? The RIPE Database is a public registry database that stores information about internet number resources and related technical objects. It is operated by the RIPE NCC, the Regional Internet Registry serving Europe, the Middle East, and parts of Central Asia. Its purpose is to help maintain transparency, accountability, and technical [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":712,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_seopress_titles_title":"What Is the RIPE Database? Complete Guide to IP, ASN, BGP and REST API Records","_seopress_titles_desc":"Learn what the RIPE Database is, how it stores IP address, ASN, BGP, route and contact records, how to search it, and how to use the RIPE Database REST API.","_seopress_robots_index":"","_seopress_robots_follow":"","_seopress_robots_imageindex":"","_seopress_robots_snippet":"","_seopress_robots_primary_cat":"","_seopress_robots_breadcrumbs":"","_seopress_robots_freeze_modified_date":"","_seopress_robots_custom_modified_date":"","_seopress_robots_canonical":"","_seopress_social_fb_title":"","_seopress_social_fb_desc":"","_seopress_social_fb_img":"","_seopress_social_fb_img_attachment_id":0,"_seopress_social_fb_img_width":0,"_seopress_social_fb_img_height":0,"_seopress_social_twitter_title":"","_seopress_social_twitter_desc":"","_seopress_social_twitter_img":"","_seopress_social_twitter_img_attachment_id":0,"_seopress_social_twitter_img_width":0,"_seopress_social_twitter_img_height":0,"_seopress_redirections_value":"","_seopress_redirections_enabled":"","_seopress_redirections_enabled_regex":"","_seopress_redirections_logged_status":"","_seopress_redirections_param":"","_seopress_redirections_type":0,"_seopress_analysis_target_kw":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-708","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-article"],"_links":{"self":[{"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/posts\/708","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/comments?post=708"}],"version-history":[{"count":6,"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/posts\/708\/revisions"}],"predecessor-version":[{"id":715,"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/posts\/708\/revisions\/715"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/media\/712"}],"wp:attachment":[{"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/media?parent=708"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/categories?post=708"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/junglelabs.uk\/it\/wp-json\/wp\/v2\/tags?post=708"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}