Narzędzia użytkownika

Narzędzia witryny


Pasek boczny


O mnie


Dydaktyka:

Feedback


bio-sk:dns

To jest stara wersja strony!


Domain Name System - odpytywanie serwerów

FQDN

Nazwa domenowa składa się z etykiet oddzielanych kropkami – np. www.cs.put.poznan.pl.
Nazwy domenowe są zorganizowane hierarchicznie (w drzewo), stąd należy je "czytać" od końca.

Skrajnie prawa etykieta nazywana jest domeną najwyższego poziomu (TLD, Top Level Domain).
Domeny są podzielone na krajowe (ccTLD, np. .pl, .va, stworzone od dwuliterowego kodu kraju) oraz generyczne (gTLD, np. .cern, .family) i sponsorowane (sTLD, np. .edu, .gov). Lista TLD jest jawna.

Nad domenami TLD znajduje się korzeń DNS (pusta etykieta).
O warunkach rejestracji poddomen w danej domenie decyduje jej właściciel.

Nazwy domenowe mogą być pełne kwalifikowane (FQDN, fully qualified domain name) lub względne (podobnie jak np. ścieżki do plików).

Zadanie 1 Porównaj wynik poniższych poleceń:

$ ping -c4 lab-net-55
$ ping -c4 lab-net-55.cs.put.poznan.pl

Drzewo DNS a serwery DNS

Znając adresy IP serwerów odpowiedzialnych za korzeń można kolejno odpytywać serwery o ich poddomeny i w ten sposób znaleźć serwer odpowiedzialny za poszukiwaną nazwę domenową.

Role serwerów DNS

Serwery nazw można podzielić ze względu na pełnione zadanie na:

  • root servers – odpowiadają za TLD; odpowiadają tylko na pytania o TLD,
  • authoritative servers – wpisywane do serwerów nazw nadrzędnej domeny serwery odpowiedzialne za rozgłoszenie domeny w sieci; odpowiadają na pytania o swoją domenę,
  • caching name servers – serwery zbierające informacje z powyższych, przeznaczone dla użytkowników końcowych (zwane czasem public DNS).

Zapytania DNS

Klienci odpytujący DNS korzystają zwykle z UDP.

Do odpytywania serwerów DNS można używać np. komend:

  • host (uwaga, różne wersje: [1] [2] )
  • dig -h
  • nslookup (zacznij od przeczytania man nslookup)
  • dnstracer (pozwala przejść całe drzewo DFSem, np: dnstracer -c -o -s . assets.publishing.service.gov.uk. )

Zadanie 2 Przetestuj poniższe zapytania:

host lab-net-1.cs.put.poznan.pl

dig +short lab-net-1.cs.put.poznan.pl
dig +noall +answer lab-net-1.cs.put.poznan.pl
dig lab-net-1.cs.put.poznan.pl

dig www.cs.put.edu.pl
dig wp.pl
host student.put.poznan.pl

Rodzaje rekordów

Ważniejsze typy rekordów:

NS Wskazuje serwer nazw dla domeny
SOA Start of Authority, istotny dla konfiguracji serwerów nazw
CNAME Alias na inną nazwę domenową ( np. )
A Adres IPv4
AAAA Adres IPv6
MX Serwer odbierający pocztę dla domeny ( np. )
TXT Dowolny tekst (dosłownie dowolny).
Używany np. na potrzeby mechanizmów walki ze spamem – SPF, DKIM i DMARC) ( przykłady: )
PTR Nazwa domenowa odpowiadająca (odpowiednio zakodowanemu) adresowi IP

Więcej o różnych rodzajach rekordów możesz przeczytać tutaj.

Pytanie o wskazany typ rekordu:

  • host -t typ nazwa_domenowa np:
       host -t MX put.poznan.pl
  • dig nazwa_domenowa typ np:
       dig put.poznan.pl AAAA

Pytanie o "wszystkie" rekordy:

  • host -a [-v] nazwa_domenowa
  • dig nazwa_domenowa any

Zadanie 3 Odpytaj kilka domen o wszystkie rekordy. Jakie typy rekordów głównie widzisz? Czy są to wszystkie rekordy dla tej domeny?

Zadanie 4 Wykonaj zapytania o odwzorowanie odwrotne (zapytanie typu PTR):

host 150.254.30.233
dig -x 150.254.30.233

Jak adres IP jest przetwarzany na nazwę domenową o którą jest wysyłane zapytanie?

Zadanie 5 Zadaj zapytania odwrotne o adres IPv6. Jaka domena jest użyta?

Kogo pytamy?

System operacyjny Linux używa serwera DNS skonfigurowanego w pliku /etc/resolv.conf. Dokumentacja możliwych wpisów w tym pliku jest w podręczniku systemowym (man resolv.conf).

W narzędziach dig i host można ręczne wybrać serwer do którego kierowane są zapytania:

  • host name server, np:
        host pl.wikipedia.org dns.tpsa.pl
        host pl.wikipedia.org one.one.one.one
  • dig @server name, np:
        dig @netia-dns1.inetia.pl pl.wikipedia.org
        dig @dns9.quad9.net pl.wikipedia.org

Przykładowe adresy publicznych serwerów DNS:

Serwery authoritative i caching – przypomnienie.

Zadanie 6 Porównaj rekordy zwrócone przez następujące wywołania programu dig:

dig +noall +answer @cns1a.atman.pl    poznan.pl
dig +noall +answer @ordns.he.net      poznan.pl
dig +noall +answer @bilbo.nask.org.pl poznan.pl

Czy ponowne wykonanie tych poleceń zwróci takie same rekordy? Co oznacza druga kolumna wyników?

Zadanie 7 Znajdź w wynikach dig informację o tym, czy serwer ustawił flagę aa (authoritative answer) wskazującą że uznaje siebie za serwer authoritative dla wskazanej domeny.

Zadanie 8 Porównaj wynik zapytania o adres dowolnej strony z listy: https://hazard.mf.gov.pl/ pytając poniższe serwery DNS:
    1.0.0.1     ordns.he.net    dns.tpsa.pl    netia-dns1.inetia.pl
oraz serwer ustawiony jako domyślny w systemie operacyjnym.

DNS wysyła zapytania otwartym tekstem co nie zapewnia prywatności, oraz używa protokołu UDP co upraszcza spoofing.

Przykłady odpowiedzi na zapytania

Przykłady odpowiedzi na zapytania

bio-sk/dns.1734567780.txt.gz · ostatnio zmienione: 2024/12/19 01:23 przez jkonczak