jakubk64@home:~$

DNS - Domain Name System

Słowem wstępu o DNS

DNS czyli Domain Name System to nic innego jak system tłumaczący określone nazwy (np. stron internetowych) na adresy IP i odwrotnie. Z DNS-em najczęściem możemy spotkać się w przeglądarkach internetowych (gdzie jest on domyślnie wbudowany). To właśnie DNS pozwala na to, że po wpisaniu w pole “adresu URL” nazwy strony internetowej (np. wp.pl) zostajemy przekierowani na odpowiedni serwer i widzimy określoną dla tej strony zawartość (odpytany serwer DNS wskazuje na adres IP serwera, na którym znajduje się wpisywana przez nas strona).

W środowisku lokalnym, lokalny serwer DNS odpowiada za tłumaczenie np. nazw urządzeń na ich adresy IP w sieci. Serwer DNS może funkcjonować w środowisku jako oddzielna maszyna lub na jednej maszynie np. z kontrolerem domeny.

Podczas instalacji “AD DS” (Active Directory Domain Services) na maszynie, która zostanie następnie wypromowana do kontrolera domeny serwer DNS instalowany jest automatycznie.

Tworzenie strefy DNS w “Forward Lookup Zones”

Aby przejść do menadżera DNS wchodzimy w zakładkę “Tools” a następnie “DNS”:

useful image

Następnie klikamy na nasz serwer. Widzimy tutaj drzewo zawierające podstawowe elementy DNS:

  • Forward Lookup Zones - Strefy zawierające rekordy z informacjami potrzebnymi do tłumaczenia nazw na adresy IP
  • Reverse Lookup Zones - Strefy zawierające rekordy z informacjami potrzebnymi do tłumaczenia adresów IP na nazwy
  • Trust Points - Zaufane serwery DNS, które będą odpytywane jako “kolejny lokalny serwer np. danej firmy”. Np. jeżeli firma A kupuje firmę B, ale obie firmy mają swoje własne serwery DNS to Trust Pointem dla serwera firmy A będzie serwer firmy B
  • Conditional Forwarders - Autorytatywne serwery zewnętrzne, które będą odpytywane jeżeli lokalny serwer DNS nie ma informacji o szukanej frazie bądź adresie IP
  • Root Hints - 13 głównych serwerów DNS rozsianych po calym świecie, które zawierają informacje o wszystkich rekordach DNS na świecie

useful image

Na początek stworzymy nową strefę w “Forward Lookup Zone”. W tym celu klikamy PPM na pustą przestrzeń -> New Zone…

useful image

Następnie wybieramy typ tworzonej przez nas strefy:

  • Primary Zone - podstawowa nowa strefa, która będzie zawierała swoje własne rekordy DNS (czyli nie będzie ich replikowała z żadnego innego serwera, rekordy tworzymy ręcznie)
  • Secondary Zone - strefa replikująca rekordy DNS z innej strefy znajdującej się na innym serwerze DNS
  • Stub Zone - Strefa dla serwerów nieautoryratywnych zawierająca informacje o rekordach DNS innych serwerów

useful image

W kolejnym kroku wybieramy sposób replikacji danych pomiędzy serwerami DNS. Dane mogą być replikowane:

  • Na wszystkich serwerach DNS działających na kontrolerach domeny w danym lesie domen
  • Na wszystkich serwerach DNS działających na kontrolerach domeny w danej domenie
  • Na wszystkich kontrolerach domeny w danej domenie
  • Na wybranych przez nas, konkretnych kontrolerach domeny

useful image

W kolejnym kroku wybieramy nazwę tworzonej przez na strefy:

useful image

Następnie wybieramy opcje aktualizowania danych serwera DNS:

  • Dane mogą aktualizować tylko urządzenia znajdujące się w danym AD
  • Dane mogą aktualizować wszystkie urządzenia
  • Dane nie mogą być automatycznie aktualizowane, każdy rekord trzeba dodać lub usunąć ręcznie

useful image

W tym momencie strefa została poprawnie utworzona, można przejść do tworzenia rekordów DNS.

Tworzenie rekordu DNS

Aby utworzyć rekord DNS wchodzimy w wybraną strefę i klikamy PPM na puste pole. Widzimy tutaj kilka typów rekordów, najważniejsze z nich to:

  • Rekord A - rekord zawierający informacje na temat adresu IPv4 przypisanego do danej nazwy
  • Rekord AAAA - rekord zawierający informacje na temat adresu IPv6 przypisanego do danej nazwy
  • Rekord CNAME (Alias) - Rekord wskazujący na inny rekord, ale wykorzystujący inną (często podobną lub skróconą) nazwę

useful image

Przejdźmy do stworzenia rekordu typu A wskazującego na zapasowy kontroler domeny. W tym przypadku przypisuje faktyczną nazwę maszyny (OCTOPUS) oraz jej adres IPv4 w sieci. Na dole widzimy 2 opcje:

  • PTR Record - tworzy wskaźnik w strefie Revese Lookup Zones pozwalający na “tłumaczenie w drugą stronę” tj. jeżeli tworzymy rekord jak powyżej to możemy tłumaczyć nazwę OCTOPUS na adres IP (10.10.10.11) nastomiast dzięki rekordowi PTR możemy także przetłumaczyć adres 10.10.10.10 na nazwę - OCTOPUS. W naszym przypadku nawet przy zaznaczeniu tej opcji rekord nie zostanie utworzony, ponieważ nie mamy żadnej strefy Reverse Lookup Zones
  • Zezwolenie każdemy uwierzytelnionemu użytkownikowi na aktualizowanie rekordów DNS o tej samej nazwie

useful image

Poprawność możemy sprawdzić np. za pomocą polecenia “nslookup” w CMD. Wpisanie nazwy “OCTOPUS” w tym przypadku zadziała, ponieważ jest to nazwa Zapasowego Kontrolera Domeny. Gdyby jednak kontroler miał inną nazwę prawidłowo skonstruowane zapytanie wymagałoby doprecyzowania strefy w której znajduje się rekord DNS tj. “OCTOPUS.Strefa1”. Z czego to wynika ? Rekord DNS znajduje się nie w głównej strefie z domeną, a w nowo utworzonej strefie, stąd konieczność doprecyzowania gdzie znajduje się dany rekord (przykład można zobaczyć niżej w przypadku aliasu).

useful image

Rekord DNS typu A został więc utworzony poprawnie. Na tym etapie gdy spróbujemy wykonać to samo polecenie z adresem IP (10.10.10.11) nie zostanie nam zwrócony żaden wynik - w tym celu musimy stworzyć strefę Reverse Lookup Zone i rekord PTR.

Tworzenie strefy Reverse Lookup Zone

Aby stworzyć strefę “Reverse Lookup Zones” klikamy w “folder” o tej nazwie PPM i wybieramy New Zone …

Na początku tworzenie strefy nie różni się od tworzenia strefy Forward Lookup Zone. Wybieramy typ strefy:

useful image

Następnie sposób replikowania danych:

useful image

W kolejnym kroku wybieramy wersję adresu IP, które będziemy tłumaczyć w danej strefie - IPv4 lub IPv6:

useful image

W kolejnym kroku zależnie od wybranej wersji adresu IP podajemy adresację sieci. Zależnie od typu sieci (A,B lub C) wypełniamy pola. W moim przypadku sieć jest mała - zawiera raptem kilka maszyn więc jest to sieć typu C - 10.10.10.X

useful image

Następnie tak jak przy Forward Lookup Zones wybieramy sposób aktualizowania rekordów DNS:

useful image

W tym momencie strefa Reverse Lookup Zone została poprawnie utworzona

Tworzenie rekordu PTR

Aby utworzyć rekord PTR wchodzimy w utworzoną strefę Reverse Lookup Zone i klikamy PPM na pustą przestrzeń:

useful image

Wpisujemy adres hosta (ostatnią liczbę adres IP w podajen przy tworzeniu strefy sieci) oraz nazwę hosta

useful image

W tym momencie rekord został utworzony poprawnie. Możemy go przetestować za pomocą polecenia “nslookup” w CMD tym razem użwyając oczywiście nie nazwy a adresu IP:

useful image

Jak widać po dodaniu rekordu PTR tłumaczenie adresu IP na przypisaną mu nazwę działa poprawnie

Tworzenie rekordu CNAME (Aliasu)

Alias jest rekordem wskazującym na inny rekord. Pozwala zastąpić np. długą, trudną do zapamiętania nazwę jednym, prostym słowem.

Stwórzmy rekord CNAME w Forward Lookup Zones. W tym celu klikamy PPM na pustą przestrzeń w wybranej strefie. Wpisujemy nazwę aliasu oraz za pomocą przycisku “Browse…” wskazujemy ścieżkę FQDN (lub oczywiście wpisujemy ją ręcznie) rekordu, na który ma wskazywać alias.

useful image

Rekord CNAME został utworzony poprawnie, możemy więc go przetestować w CMD za pomocą polecenia “nslookup”. Należy pamiętać, że ponieważ rekord nie znajduje się w strefie naszej domeny a w nowo utworzonej nie wystarczy po prostu podać nazwy rekordu (aliasu) tj. DC2. Takie zapytanie nie zwróci prawidłowego wyniku. Należy doprecyzować o który rekord chodzi podając po kropce strefę w jakiej znajduje się rekord tj. “DC2.Strefa1”. Przy tak skonstuowanym zapytanie odpowiedź jest prawidłowa, otrzymujemy nazwę oraz adres IPv4 urządzenia.

useful image

Tak samo jeżeli chodzi o np. polecenie “ping”. Możemy teraz użyć aliasu wraz z strefą - “DC2.Strefa1” i pakiet zostanie wysłany pod odpowiedni adres IP.

useful image