🢂Diagnostyka DNS (nslookup, dig i host) ‑ Cheatsheet (ściąga)
Polecenia nslookup, dig i host oferują różnorodne opcje, które pozwalają na dokładniejszą analizę i diagnostykę serwerów DNS. Poniżej przykładowe polecenia służące diagnozowaniu DNS
Polecenie nslookup
to narzędzie linii komend, które pozwala na zapytanie serwerów nazw DNS w celu uzyskania informacji o różnych rekordach DNS, takich jak adresy IP dla nazw hostów i odwrotnie. Na systemie Debian, korzystanie z nslookup
wymaga prostych kroków oraz zrozumienia podstawowych opcji i przykładów użycia, które pomogą diagnozować problemy związane z DNS.
Instalacja
Upewnij się, że nslookup
jest zainstalowany w Twoim systemie. Jeśli nie, możesz go zainstalować za pomocą pakietu dnsutils
. Uruchom w terminalu:
sudo apt-get update
sudo apt-get install dnsutils
Przykłady użycia
Podstawowe zapytanie DNS: Aby uzyskać adres IP dla danej nazwy domeny, wpisz:
nslookup example.com
Zapytanie o konkretny typ rekordu: Aby zapytać o rekordy MX (poczty elektronicznej) dla domeny, użyj:
nslookup -query=mx example.com
Użycie określonego serwera DNS: Możesz skierować zapytanie do konkretnego serwera DNS, podając jego adres IP po nazwie domeny:
nslookup example.com 8.8.8.8
Odwrotne zapytanie DNS: Aby znaleźć nazwę domeny powiązaną z adresem IP, wykonaj:
nslookup 93.184.216.34
Zapytanie o rekordy SOA (Start of Authority): Pozwala to na uzyskanie informacji o rekordzie SOA dla domeny, który zawiera kluczowe informacje o strefie, takie jak email administratora czy odstęp czasu między odświeżeniami.
nslookup -type=soa example.com
Zapytanie o wszystkie rekordy: Pozwala na pobranie wszystkich dostępnych rekordów dla określonej domeny. Może to być przydatne do uzyskania pełnego obrazu konfiguracji DNS domeny.
nslookup -type=any example.com 8.8.8.8
Wyświetlanie rozszerzonych informacji: W trybie interaktywnym, opcja debug
włącza szczegółowe informacje debugowania, co jest przydatne przy diagnozowaniu.
Diagnostyka błędów: W przypadku problemów z rozwiązaniem nazwy, sprawdź konfigurację DNS i upewnij się, że serwery, do których kierujesz zapytania, są dostępne i prawidłowo skonfigurowane. Swój serwer odpytasz tym poleceniem
nslookup -type=any example.com TwojDns.pl
Wskazówki
- Pamiętaj, że odpowiedzi z
nslookup
mogą różnić się w zależności od używanego serwera DNS. - Jeśli napotkasz problemy z rozwiązaniem nazwy, sprawdź plik konfiguracyjny
/etc/resolv.conf
, który zawiera informacje o serwerach DNS używanych przez Twój system.
Zachęcam do eksperymentowania z różnymi opcjami nslookup
, aby lepiej zrozumieć, jak działa DNS i jak diagnozować z nim związane problemy.
Polecenia dig
i host
Polecenia dig
i host
są równie potężnymi narzędziami do zapytań DNS na systemach Unix i Linux, takich jak Debian. Oferują one różnorodność opcji i użycia podobnie do nslookup
. Oto krótkie wprowadzenie do tych narzędzi wraz z przykładami użycia:
Dig (Domain Information Groper)
dig
jest bardziej elastycznym narzędziem do zapytań DNS i jest często preferowane przez administratorów systemów dla jego klarownego formatu wyjściowego i opcji.
Instalacja
Jeśli dig
nie jest zainstalowany, można go łatwo zainstalować za pomocą:
sudo apt-get install dnsutils
Przykłady użycia
Podstawowe zapytanie DNS: Uzyskanie adresu IP dla domeny.
dig example.com
Zapytanie o specyficzny typ rekordu: Na przykład, rekordy MX.
dig example.com MX
Uzyskanie krótkiej odpowiedzi: Jeśli interesuje Cię tylko odpowiedź bez dodatkowych informacji.
dig example.com +short
Zapytanie do konkretnego serwera DNS: Wysyłanie zapytania do określonego serwera.
dig @8.8.8.8 example.com
Rekursywne zapytanie: Wyświetla proces poszukiwania od korzenia DNS.
dig +trace example.com
Polecenie Host
host
jest prostszym narzędziem używanym do konwersji nazw w adresy i odwrotnie oraz do zapytań o specyficzne typy rekordów DNS.
Przykłady użycia
Znajdowanie adresu IP dla nazwy hosta:
host example.com
Znajdowanie nazwy domeny dla adresu IP (odwrotne DNS):
host 93.184.216.34
Zapytanie o rekordy MX:
host -t MX example.com
Specyfikowanie serwera DNS:
host example.com 8.8.8.8
Zarówno dig
jak i host
są narzędziami, które pozwalają na szczegółowe badanie i diagnostykę systemu nazw domen (DNS). Ich właściwe zrozumienie i wykorzystanie może znacznie ułatwić zarządzanie siecią i rozwiązywanie problemów związanych z DNS.
Przykład diagnozy serwera DNS na przykładzie domeny
Dla szczegółowego przeglądu wszystkich rekordów DNS domeny wpisz to polecenie:
dig @dns.home.pl ginmed.com ANY +noall +answer +stats
Dla uzyskania bardziej szczegółowych danych przy użyciu dig
, możesz użyć następujących parametrów:
+trace
– wyświetla ścieżkę zapytania od korzenia DNS do docelowego serwera, pomagając zrozumieć proces rozwiązywania nazw.+all
– pokazuje wszystkie dostępne informacje o zapytaniu i odpowiedzi, włącznie z sekcjami dodatkowymi i autorytatywnymi.+stats
– dostarcza statystyki dotyczące wykonanego zapytania, takie jak czas odpowiedzi.+multiline
– formatuje niektóre rekordy DNS (np. SOA) w bardziej czytelny, wieloliniowy sposób.
Zapytanie o serwer DNS dla domeny ginmed.com
Sprawdzamy gdzie jest serwer DNS u operatora domeny poleceniem:
host ginmed.com dns.home.pl
Jak wskazuje serwer domenowy dns.home.pl o adresie 217.160.80.244, domena ginmed.com jest przypisana do adresu IP 89.161.255.8. To oznacza, iż wszelkie zapytania dotyczące tej domeny kierowane są do serwera znajdującego się pod tym adresem IP. Dodatkowo, obsługa poczty elektronicznej dla ginmed.com jest skonfigurowana z priorytetem 10 na serwerze o tej samej nazwie, co wskazuje na główny serwer pocztowy, odpowiedzialny za przetwarzanie przychodzących wiadomości e-mail dla tej domeny.
Using domain server:
Name: dns.home.pl
Address: 217.160.80.244#53
Aliases:
ginmed.com has address 89.161.255.8
ginmed.com mail is handled by 10 ginmed.com.
Zapytanie o wszystkie rekordy DNS dla domeny ginmed.com
nslookup -type=any ginmed.com 217.160.80.244
Polecenie nslookup -type=any ginmed.com 217.160.80.244 służy do zapytania o wszystkie rekordy DNS dla domeny ginmed.com, korzystając z konkretnego serwera DNS o adresie IP 217.160.80.244. Opcja -type=any prosi o zwrócenie każdego typu rekordu DNS, który jest skojarzony z daną domeną, w tym adresy IP (A), serwery poczty (MX) i inne. W ten sposób otrzymujesz pełny obraz konfiguracji DNS dla ginmed.com.
Odpowiedź wygląda następująco
Server: 217.160.80.244
Address: 217.160.80.244#53
Name: ginmed.com
Address: 89.161.255.8
ginmed.com mail exchanger = 10 ginmed.com.
ginmed.com nameserver = dns.home.pl.
ginmed.com nameserver = dns2.home.pl.
ginmed.com nameserver = dns3.home.pl.
ginmed.com
origin = dns.home.pl
mail addr = admin.home.pl
serial = 1546871573
refresh = 14400
retry = 7200
expire = 2419200
minimum = 3600
To oznacza że:
- Serwer DNS używany do zapytania ma adres IP 217.160.80.244.
- Adres IP domeny ginmed.com to 89.161.255.8.
- Dla ginmed.com skonfigurowano rekord wymiany poczty (MX) z priorytetem 10, wskazującym na samą domenę ginmed.com jako serwer pocztowy.
- Domena ginmed.com używa trzech serwerów nazw (nameserver): dns.home.pl, dns2.home.pl i dns3.home.pl.
- Rekord SOA (Start of Authority) dla ginmed.com określa dns.home.pl jako główny serwer nazw, admin.home.pl jako adres kontaktowy administratora, posiada numer seryjny 1546871573, interwał odświeżania ustawiony na 14400 sekund, czas ponowienia próby na 7200 sekund, czas wygaśnięcia na 2419200 sekund i minimalny czas TTL (time-to-live) wynoszący 3600 sekund.
Miłej zabawy ;)