Questa è una domanda molto antica, ma ho avuto molte delle stesse domande nel capire come funziona Internet . Come le altre risposte, i libri sulla rete offrono una panoramica di BGP e DNS ma mi lasciano ancora confuso. Ad esempio, a.root-servers.net tramite m.root-servers.net sono indicati come server root, ma come fa un servizio DNS a sapere dove trovare quei server se non possono usare DNS da soli.
Si presume che le basi di IP, sottorete, DNS, ecc. Siano note a questa risposta. Sto affrontando "lacune" che io, e probabilmente l'interrogante, ho su come funziona Internet. Non sono affatto un esperto, ma questa è la mia comprensione delle lacune.
Indirizzi IP
La prima cosa da notare è che quando Internet è iniziato come ARPANET, tutti conoscevano tutti e le tabelle di routing per gli indirizzi IP venivano codificate a mano. Presumo che il processo di assegnazione per gli IP sia stato fatto al telefono. Poiché Internet è diventato troppo grande, BGP è stato utilizzato da più reti (AS) per pubblicizzare che avevano un IP pubblico o che potevano raggiungere un IP pubblico attraverso il loro AS in un altro AS. La fiducia era lì che un AS non avrebbe pubblicizzato un IP che non aveva.
Oggi non c'è tanta fiducia. Al contrario, gli ISP possono scaricare e autenticare le allocazioni IP su ciascun AS da IANA e le autorità regionali. Questi download sono ora autenticati tramite crittografia a chiave pubblica. Quindi quando IANA "assegna un indirizzo IP", stanno cambiando il loro record (o davvero l'autorità regionale cambia il loro record). Tutti gli altri AS possono scaricare e autenticare i propri record.
Questi record sono importanti perché gli ISP non possono accettare la parola di altri ISP che hanno gli indirizzi IP. Gli ISP possono confrontare l'annuncio BGP con i record IP autenticati. Se un annuncio BGP mostra l'ultimo AS come AS diverso da quello contenuto nei registri autenticati di IANA e RIR, l'annuncio BGP non modifica il proprio instradamento.
Più comunemente, un ISP o AS canaglia può pubblicizzare di avere un percorso attraverso il proprio AS che non ha. AS1 ha un IP registrato e AS5 attualmente utilizza AS5 -> AS4 -> AS3 -> AS1 -> IP. AS2 pubblicizza su AS5 un percorso di AS5 -> AS2 -> AS1 -> IP. Tranne AS2 non ha effettivamente una connessione con AS1. Può semplicemente perdere i pacchetti, forse per frustrare i clienti di hosting di AS1. Oppure AS2 potrebbe essere una piccola rete aziendale con un accordo multihomed con AS5 e AS1. Il loro router non è configurato correttamente e pubblicizza un percorso attraverso una piccola rete aziendale. Quasi tutti gli ISP buttano via tali annunci pubblicitari dei loro clienti BGP e trasmettono solo annunci pubblicitari BGP in sospeso.
Più probabilmente, hai il caso del Pakistan che cerca di chiudere Youtube in Pakistan attraverso tale dirottamento della PI e di chiudere Youtube fuori dal Pakistan anche dal momento che gli AS fuori dal Pakistan hanno ritenuto che le loro pubblicità BGP fossero corrette.
Alla fine, non esiste una difesa perfetta contro tale dirottamento IP. Nella maggior parte dei paesi come gli Stati Uniti, tale abuso di BGP può essere punito come violazione del contratto e altri ISP chiuderanno le connessioni peering con tale AS, se necessario. Un ISP potrebbe anche ignorare l'intero apparato IANA e RIR e reindirizzare gli indirizzi IP ai propri server. Ciò non funzionerà per nessun sito https, supponendo che l'ISP non abbia le chiavi private per nessuna CA. C'è molto poco da guadagnare economicamente. Succede solo con governi autoritari, come l'Egitto che ha recentemente chiuso tutte le pubblicità BGP ai propri ISP dall'estero.
Server DNS
Il DNS è un po 'più semplice quando le tabelle IP sono corrette. I server root sono tutti indirizzi IP hardcorded nel codice del server DNS. a.root-servers.net è 198.41.0.4 e l'indirizzo IP è anycast all'interno di un AS. Nel caso di a.root-servers.net, l'AS è Verisign e ci sono cinque siti diversi. Negli Stati Uniti, i due siti sono New York e Los Angeles. Anycasting è come se tu avessi un indirizzo di 123 Main Street e hai detto "Non importa in quale città ti trovi, vai su 123 Main Street e troverai una delle mie attività". Sia 123 Main Street a New York che Los Angeles forniranno la stessa risposta per tutti i domini di primo livello. L'AS, in questo caso Verisign, capisce internamente quale server ha il minor numero di hop attraverso OSPF, BGP interno e altri protocolli di routing. Quindi un router a Denver può andare a Los Angeles mentre un router a Chicago va a New York.
Uno dei server root fornisce quale indirizzo IP per il dominio di primo livello. Quindi quel dominio fornisce il dominio per yoursite.com. I registrar hanno davvero un contratto con chiunque gestisca il dominio di primo livello. Quindi, se il dominio di primo livello attualmente non ha un record per yoursite.com, ha accesso per aggiungere un record con il proprio server who-is. Quindi, con l'accesso che il registrar ti ha dato ai record DNS di yoursite.com, puoi modificare i record nel loro server DNS per passare al tuo indirizzo IP.
Poiché il DNS dipende dal fatto che più indirizzi IP vanno nel posto giusto, hai lo stesso problema di prima con AS che autentica il registro IP e quindi le assegnazioni BGP. Questo è il pezzo chiave per un sito Web http. Https ha la protezione aggiuntiva dei certificati. Pertanto, un ISP non può reindirizzare le richieste per i propri server root e server di dominio di livello superiore per fornire il proprio IP, ad esempio citibank.com. In tal caso, l'indirizzo IP fornito all'utente sarà un indirizzo IP diverso, ma il loro server non avrà la chiave privata di Citibank.