To bardzo stare pytanie, ale miałem wiele takich samych pytań, zastanawiając się, jak działa Internet . Podobnie jak inne odpowiedzi, książki sieciowe zawierają przegląd BGP i DNS, ale wciąż mnie mylić. Na przykład a.root-servers.net przez m.root-servers.net są podane jako serwery główne, ale skąd usługa DNS wie, gdzie znaleźć te serwery, jeśli nie mogą same korzystać z DNS.
Zakłada się, że podstawy IP, podsieci, DNS itp. Są znane z tej odpowiedzi. Zajmuję się „lukami”, które i prawdopodobnie pytający mam na temat tego, jak działa Internet. W żadnym wypadku nie jestem ekspertem, ale tak rozumiem luki.
Adresy IP
Pierwszą rzeczą, na którą należy zwrócić uwagę jest to, że kiedy Internet zaczynał jako ARPANET, wszyscy znali wszystkich, a tabele routingu adresów IP były ręcznie kodowane. Zakładam, że proces przypisywania adresów IP został wykonany przez telefon. Ponieważ Internet stał się zbyt duży, BGP był używany przez wiele sieci (AS) do reklamowania, że ma publiczne adresy IP lub może dostać się do publicznego adresu IP przez swój AS do innego AS. Pojawiło się zaufanie, że AS nie reklamuje adresu IP, którego nie ma.
Dziś zaufanie nie jest tak duże. Zamiast tego dostawcy usług internetowych mogą pobierać i uwierzytelniać przydziały IP dla każdego AS od IANA i władz regionalnych. Te pliki do pobrania są teraz uwierzytelniane za pomocą kryptografii klucza publicznego. Kiedy więc IANA „przypisuje adres IP”, zmieniają swój rekord (lub tak naprawdę władze regionalne zmieniają swój rekord). Wszystkie inne AS mogą pobrać i uwierzytelnić swoje rekordy.
Te dane są ważne, ponieważ dostawcy usług internetowych nie mogą wierzyć innym dostawcom usług internetowych, że mają adresy IP. Dostawcy usług internetowych mogą porównać reklamę BGP z uwierzytelnionymi rekordami IP. Jeśli jakakolwiek reklama BGP pokazuje ostatni AS jako AS inny niż ten w uwierzytelnionym rekordzie IANA i RIR, reklama BGP nie zmienia własnego routingu.
Częściej, nieuczciwy dostawca usług internetowych lub AS może reklamować, że ma trasę przez swój AS, której nie ma. AS1 ma zarejestrowany adres IP, a AS5 obecnie używa AS5 -> AS4 -> AS3 -> AS1 -> IP. AS2 reklamuje AS5 trasę AS5 -> AS2 -> AS1 -> IP. Tyle że AS2 tak naprawdę nie ma połączenia z AS1. Może po prostu stracić pakiety, może udaremnić klientów hostingowych AS1. Lub AS2 może być siecią małych firm z wielomieszkaniowym układem z AS5 i AS1. Ich router jest źle skonfigurowany i reklamuje ścieżkę przez sieć małej firmy. Prawie wszyscy dostawcy usług internetowych wyrzucają takie reklamy swoich klientów BGP i przekazują jedynie wypowiedzenie reklam BGP.
Bardziej prawdopodobne jest, że przypadek Pakistanu próbuje zamknąć Youtube w Pakistanie poprzez takie przechwycenie IP, a także Youtube poza Pakistanem, ponieważ AS-y poza Pakistanem zakładają, że ich reklamy BGP są prawidłowe.
Ostatecznie nie ma idealnej obrony przed takim przejęciem własności intelektualnej. W większości krajów, takich jak USA, takie nadużycie BGP może zostać ukarane, ponieważ naruszenie umowy, a inni dostawcy usług internetowych, jeśli będą musieli, zerwą połączenia równorzędne z tym AS. Dostawca usług internetowych może również zignorować cały aparat IANA i RIR i przekierować adresy IP na własne serwery. To nie zadziała w przypadku żadnych witryn https, zakładając, że dostawca usług internetowych nie ma kluczy prywatnych do żadnego urzędu certyfikacji. Z ekonomicznego punktu widzenia niewiele można na tym zyskać. Zdarza się to tylko w przypadku rządów autorytarnych, takich jak Egipt, który niedawno zamknął wszystkie reklamy BGP dla swoich dostawców usług internetowych spoza kraju.
Serwery DNS
DNS jest nieco prostszy, gdy tabele IP są poprawne. Wszystkie serwery root to zapisane na stałe adresy IP w kodzie serwera DNS. a.root-servers.net to 198.41.0.4, a adres IP to anycast w jednym AS. W przypadku a.root-servers.net, AS to Verisign i istnieje pięć różnych stron. W Stanach Zjednoczonych dwie lokalizacje to Nowy Jork i LA. Anycasting jest jak gdybyś miał adres 123 Main Street i powiedziałeś „Nie ma znaczenia, w jakim mieście się znajdujesz, idź na 123 Main Street, a znajdziesz jedną z moich firm”. Zarówno 123 Main Street w Nowym Jorku, jak i LA dadzą tę samą odpowiedź dla wszystkich domen najwyższego poziomu. System AS, w tym przypadku Verisign, ustala wewnętrznie, który serwer ma najmniejszą liczbę przeskoków poprzez OSPF, wewnętrzny BGP i inne protokoły routingu. Tak więc router w Denver może jechać do LA, podczas gdy router w Chicago jedzie do Nowego Jorku.
Jeden z serwerów głównych podaje adres IP domeny najwyższego poziomu. Następnie ta domena daje domenę dla twojej witryny.com. Rejestratorzy naprawdę mają umowę z kimkolwiek, kto prowadzi domenę najwyższego poziomu. Jeśli więc domena najwyższego poziomu nie ma obecnie rekordu na twoją stronę.com, ma ona dostęp do dodania rekordu na swoim serwerze kim jest. Następnie, mając dostęp, który rejestrator dał ci do rekordów DNS twojej witryny.com, zmieniasz rekordy na ich serwerze DNS, aby przejść na twój adres IP.
Ponieważ DNS wszystko zależy od wielu adresów IP trafiających we właściwe miejsce, masz taki sam problem jak poprzednio z uwierzytelnianiem rejestru IP przez AS, a następnie przypisaniami BGP. To kluczowy element witryny http. HTTP ma dodatkową ochronę certyfikatów. Dlatego dostawca usług internetowych nie może przekierowywać żądań dotyczących własnych serwerów głównych i serwerów domeny najwyższego poziomu w celu podania własnego adresu IP, powiedzmy, citibank.com. Jeśli tak, adres IP podany użytkownikowi będzie innym adresem IP, ale jego serwer nie będzie miał klucza prywatnego Citibank.