Co to jest Delegowanie DNS?

22

W odpowiedzi na moje poprzednie pytanie zauważyłem następujące linie:

Zwykle jest to ostatni etap delegowania, który jest przerywany w przypadku większości konfiguracji użytkowników domowych. Przeszli przez proces zakupu domeny u rejestratora / usługodawcy, ale nie udało im się skonfigurować domeny tak, aby wskazywała przekazanie uprawnień na własne serwery nazw. Właściwie musisz powiedzieć rejestratorowi, gdzie są twoje serwery nazw, zanim będą w stanie umieścić rekordy kleju, aby twój krok delegacji zaczął działać.

Co to jest delegacja DNS? Jak to działa? Przydałoby się pełne wyjaśnienie hipotetycznej dziedziny abc.com.

Nishan
źródło

Odpowiedzi:

24

Fizycznie przekazanie uprawnień jest bardzo podobne do sposobu, w jaki kierownik przekaże odpowiedzialność za zadania swoim pracownikom. Wyniki są takie same, jednak w proces zaangażowana była więcej niż jedna osoba. Kierownik otrzymuje prośbę o pracę, przenosi odpowiedzialność na innego członka personelu i albo członek personelu, albo kierownik powraca z wynikami pracy. Wszystko to pod warunkiem, że praca, którą wykonuje członek personelu, jest właściwie poprawna i jest tym, o co prosi pierwotny wnioskodawca (lub że w rzeczywistości wnioskodawca poprosił o coś, co było ważne!).

W przypadku delegowania DNS jest bardzo podobny. Gdy comserwery nazw są proszone o miejsce do znalezienia autorytetu strefy example.com, często delegują tę pracę na oddzielne serwery nazw (w rzeczywistości w zdecydowanej większości przypadków faktycznie przekazują odpowiedź innym serwerom nazw). Gdy rejestrujesz domenę po raz pierwszy, powiedzmy, nasza example.comdomena, często odbywa się to za pośrednictwem strony trzeciej zwanej rejestratorem. Rejestratorzy często stosują swoje serwery nazw dla delegacji i obsługują domyślną strefę z tych serwerów nazw. Ta strefa domyślna zawiera podstawowe wymagania, aby służyć tej strefy w internecie (te SOA, NSi Azapisów związanych z tymi rekordów NS).

Oczywiście, jeśli sam chcesz przejąć kontrolę nad autorytetem domeny, musisz poprosić rejestratora o przekazanie domeny swojemu serwerowi nazw. Różni rejestratorzy odnoszą się do tego w różny sposób, „zmieniają serwery nazw”, „używają zewnętrznego serwera DNS”, „Dodaj rekordy kleju” i tak dalej. Mechanizm poniżej pozostaje taki sam. Podajesz na ogół 2 lub więcej „nazw serwerów nazw” (na przykład ns0.example.comi ns1.example.com) oraz adresy IP, pod którymi ns0i gdzie ns1są. Następnie przetwarzają żądanie, a delegacja zostaje skierowana z dala od rejestratora do podanych serwerów nazw.

Z technicznego punktu widzenia, to w tym momencie trzeba zapewnić swoje serwery nazw są uruchomiony, obsługujących domenę example.com, z minimum od An SOA(start od rekordu hasła), 1 lub więcej NSzapisów i Azapisy (IPS), że te rekordy NS są rozwiązywane z:

example.com.   IN SOA ns0.example.com. hostmaster.example.com. ( 10 3600 900 604800 7200 )
           IN NS  ns0.example.com.
           IN NS  ns1.example.com.
ns0        IN A   192.0.2.8
ns1        IN A   192.0.2.44

(Wybrałem już dowolne wartości dla wartości SOA, nazwy rekordów NS i adresy IP, na które rozpoznają te serwery nazw). Wszystkie będą musiały odzwierciedlać strefę, dla której służysz.

Ta usługa DNS musi być widoczna z dowolnego miejsca w Internecie i nie może być zaporą ogniową (to znaczy port 53 udp i tcp przychodzące muszą być dozwolone). Również twój dostawca usług nie może blokować tego portu (który niektórzy dostawcy blokują ruch przychodzący do tych portów).

Biorąc pod uwagę moje oryginalne porównania, comserwery nazw DNS są menedżerowie, którzy są delegowanie strefy example.comdo serwerów nazw (pracownicy), aby wykonać pracę dostarczenie podstawowych informacji o strefie ( SOA, NS, A). Możesz także podawać wszelkie dodatkowe rekordy, takie jak rekordy serwera pocztowego MXlub mogą być one Arekordem dla twojego www.example.comadresu.

Jeśli ten serwer nazw nie wykona pracy, zwróci nieprawidłowe wyniki lub zostanie zablokowany przez inną firmę (zaporę ogniową / dostawcę usług internetowych), nie będzie działającego serwera DNS, a delegacja zostanie zerwana.

To również może być warto zauważyć, że domena nie muszą być przekazywane do serwerów nazw w tej samej domenie, tak ns0.example.neti ns0.example.orgmogło być ważne zarówno serwer nazw, który mógłby example.comprzekazać im. Pod warunkiem, że oba te serwery nazw obsługują example.comdomenę.

Drav Sloan
źródło
dziękuję @Dav Sloan, za wyjaśnienie w tak prostym języku
Nishan,
2
+1. Dodałbym również, że w ostatnim przypadku, gdy serwer nazw nie należy do tej samej domeny, nie ma potrzeby zapisywania „kleju”, tylko zwykłego zapisu ns w rejestratorze / gTLD. To często myli ludzi.
GnP
+1 na odpowiedzi! Klej @GnP jest potrzebny tylko wtedy, gdy istnieje zależność kołowa. Ponieważ kiedy serwer nazw nie należy do tej samej domeny, nie ma okrągłej zależności i dlatego klej nie jest potrzebny? Czy ten wniosek jest słuszny?
Crazy Psychild
5

Delegowanie pod względem DNS oznacza, że ​​serwer nazw w hierarchii powyżej odpowie na każde żądanie w domenie NS.

W takim przypadku abc.com:

$ dig com.
=>
com.        896 IN  SOA a.gtld-servers.net.  ...

Następnie zapytaj ten serwer nazw specjalnie dla abc.com:

$ dig abc.com @a.gtld-servers.net.
=>
;; AUTHORITY SECTION:
abc.com.    172800  IN  NS  sens01.dig.com.
abc.com.    172800  IN  NS  sens02.dig.com.
abc.com.    172800  IN  NS  orns01.dig.com.
abc.com.    172800  IN  NS  orns02.dig.com.

Rekordy kleju oznaczają, że oprócz nazw hostów serwerów nazw, .comorgan wie również o ich adresach IP.

Jeśli rekordy klej są ustawione, powyższe zapytanie będzie również daje A/AAAAodpowiedzi dla każdego z serwerów nazw.

hroptatyr
źródło
5

W swojej domenie możesz na przykład definiować hosty, jak chcesz mymailserver. Aby połączyć się z twoim serwerem pocztowym, muszę użyć DNS do ustalenia jego adresów IP i w tym celu muszę wiedzieć, gdzie w drzewie nazw powinienem szukać mymailserver.

Brzmi skomplikowanie, ale właśnie do tego używamy „w pełni kwalifikowanej nazwy domeny” (FQDN). Jeśli zdefiniujesz hosta mymailserverw swojej domenie abc.com., będzie on miał nazwę FQDN mymailserver.abc.com.. Dzięki tym informacjom mogę rozwiązać tę nazwę na prawidłowy adres IP.

Nie musisz tworzyć wszystkich hostów formularza <hostname>.abc.com., możesz także rozgałęzić się według własnego uznania. Na przykład możesz mieć servers.abc.com.i umieścić wszystkie swoje serwery mymailserver.servers.abc.com.. Możesz to zrobić, ponieważ domena abc.com.została Ci przekazana . Co oznacza, że ​​masz prawo poprosić o dowolną domenę i nazwę domeny, która kończy się na abc.com.. Dlatego możesz zdefiniować hosty i subdomeny rozgałęzione dla swoich serc.

Delegowanie oznacza, że ​​właściciel domeny daje pełną kontrolę nad oddziałem komuś innemu. Podobnie jak właściciel com.przekazał ci subdomenę abc.com., możesz na przykład rozgałęzić poddomeny def.abc.com.i przekazać mi je. W mojej domenie mogę robić / definiować wszystko, co chcę / lubię, bez konieczności pytania lub informowania o tym, a nawet com.właścicieli.

Jak to działa? Po prostu umieszczasz w swojej dokumentacji DNS informację, która mówi „aby uzyskać informacje dotyczące, def.abc.comzapytaj serwer DNS hisdnsserver.def.abc.com.”. Oczywiście, aby wysłać zapytanie do tego serwera, trzeba znać adres IP hisdnsserver.def.abc.com.. Do tego służą rekordy kleju. Umieszczasz 2 informacje, jedną właśnie podaną, a drugą jest adres IP hisdnsserver.def.abc.com.. W ten sposób zadajesz każdemu pytanie o def.abc.com.wystarczającą ilość informacji, aby wskazać mu autorytet dla tej subdomeny.

Dlaczego w ogóle pytały Cię programy def.abc.com.? Ponieważ jesteś autorytetem abc.com.i organ do com.dali żądającego dwie informacje o yourdnsserveri abc.com....

użytkownik1129682
źródło
+1 za zakończenie „.” w FQDN. który jest błędnie często pomijany.
nass