4 kluczowe przykłady poleceń, które można poznać jako administrator lub programista

Jako administrator, rzeczy wyglądają ładnie tylko do czasu, aż tak się nie stanie. W tych momentach kryzysowych te polecenia wykopaliskowe przydadzą się. Bądźcie czujni.

Administratorzy systemu za każdym razem wykonują piekielną robotę. Nawet najbardziej podstawowy wymóg pracy administratora, jakim jest bycie pod telefonem 24 godziny na dobę, jest czymś, co doceniam bez granic.

Ale nie jesteśmy tutaj, aby zagłębiać się w ich profile zawodowe; zamiast tego sprawdź ich wybraną broń, aby rozwiązać problemy z DNS.

Co to są polecenia kopania?

Polecenia Dig, skrót od Domain Information Groper, są jedną z najszybszych metod zapytania serwerów DNS o to, co działa, a co nie.

Możesz sprawdzić adres IP serwera, serwery nazw, wymianę poczty, odpytać TTL itp. Za pomocą łatwych do zapamiętania tekstów.

Zanim zaczniesz od kilku podstawowych poleceń kopania, sprawdź, czy masz zainstalowane narzędzia do kopania:

$ dig -v

Powinno to powrócić z wynikiem wskazującym wersję kopania, tak:

DiG 9.18.1-1ubuntu1-Ubuntu

Jeśli nie otrzymasz podobnej odpowiedzi, musisz najpierw zainstalować narzędzia Dig.

Dla osób korzystających z Ubuntu i Debiana wpisz:

$ sudo apt-get install dnsutils

I użyć:

$ sudo yum install bind-utils

…jeśli korzystasz z CentOS lub RHEL.

Następnie uruchom dig -v, aby upewnić się, że instalacja przebiegła bezproblemowo.

Na koniec przejdź do kolejnych sekcji, aby zapoznać się z kilkoma poleceniami Dig, które pomogą Ci jako administratorowi.

Sprawdź adres IP

Jest to jeden z najprostszych, w którym sprawdzamy adres IP serwera, na którym opiera się nazwa domeny.

dig newsblog.pl.com to iteracja, od której zaczniemy.

$ dig newsblog.pl.com

; <<>> DiG 9.18.1-1ubuntu1-Ubuntu <<>> newsblog.pl.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38635
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;newsblog.pl.com.			IN	A

;; ANSWER SECTION:
newsblog.pl.com.		67	IN	A	172.66.43.163
newsblog.pl.com.		67	IN	A	172.66.40.93

;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53) (UDP)
;; WHEN: Wed Nov 09 04:29:58 UTC 2022

Pierwszą ważną rzeczą jest status: NOERROR w sekcji Mam odpowiedź na górze. To mówi nam, że poszło dobrze bez żadnych problemów.

Ale informacją, dla której wykonaliśmy to zapytanie, jest adres IP serwera. Jest to wspomniane w sekcji odpowiedzi 172.66.40.93 (serwer podstawowy) i 172.66.43.163 (odporny na awarie).

Ponadto oryginalna instrukcja zapytania znajduje się w sekcji Pytanie.

Ostatnia sekcja zawiera kilka statystyk dotyczących zapytania.

Ale to strasznie dużo informacji, które nie są potrzebne za każdym razem.

Ergo, możesz uzyskać czystszą odpowiedź na to zapytanie, wpisując:

$ dig newsblog.pl.com +noall +answer
newsblog.pl.com.		53	IN	A	172.66.43.163
newsblog.pl.com.		53	IN	A	172.66.40.93

Tutaj odrzucamy wszystko przez +noall, tylko po to, by zezwolić na oczekiwaną odpowiedź z +answer.

Jeszcze krótszą odpowiedź można uzyskać za pomocą:

$ dig newsblog.pl.com +short
172.66.43.163
172.66.40.93

To było podstawowe zapytanie zwracające rekord A DNS; zobaczmy jeszcze kilka.

Znajdź konkretne rekordy DNS

Serwery nazw, autorytatywny serwer DNS dla domeny, można znaleźć po zmiennej ns.

$ dig newsblog.pl.com ns +short
olga.ns.cloudflare.com.
todd.ns.cloudflare.com.

Podobnie zmienna mx odpowiada serwerom pocztowym wraz z ich priorytetami.

$ dig newsblog.pl.com mx +noall +answer
newsblog.pl.com.		300	IN	MX	1 aspmx.l.google.com.
newsblog.pl.com.		300	IN	MX	10 alt3.aspmx.l.google.com.
newsblog.pl.com.		300	IN	MX	10 alt4.aspmx.l.google.com.
newsblog.pl.com.		300	IN	MX	5 alt1.aspmx.l.google.com.
newsblog.pl.com.		300	IN	MX	5 alt2.aspmx.l.google.com.

W ten sam sposób txt, aaaa, cname itp. mogą być używane jako zmienne poleceń kopania do zwracania różnych rekordów DNS.

Śledzenie DNS

Jak wynika z nagłówka, Trace DNS sprawdza ścieżkę od głównych serwerów nazw, autorytatywnych serwerów nazw, do adresu IP domeny.

$ dig newsblog.pl.com +trace

; <<>> DiG 9.18.1-1ubuntu1-Ubuntu <<>> newsblog.pl.com +trace
;; global options: +cmd
.			322660	IN	NS	a.root-servers.net.
.			322660	IN	NS	b.root-servers.net.
.			322660	IN	NS	c.root-servers.net.
.			322660	IN	NS	d.root-servers.net.
.			322660	IN	NS	e.root-servers.net.
.			322660	IN	NS	f.root-servers.net.
.			322660	IN	NS	g.root-servers.net.
.			322660	IN	NS	h.root-servers.net.
.			322660	IN	NS	i.root-servers.net.
.			322660	IN	NS	j.root-servers.net.
.			322660	IN	NS	k.root-servers.net.
.			322660	IN	NS	l.root-servers.net.
.			322660	IN	NS	m.root-servers.net.
;; Received 811 bytes from 127.0.0.53#53(127.0.0.53) in 16 ms

com.			172800	IN	NS	i.gtld-servers.net.
com.			172800	IN	NS	k.gtld-servers.net.
com.			172800	IN	NS	e.gtld-servers.net.
com.			172800	IN	NS	c.gtld-servers.net.
com.			172800	IN	NS	h.gtld-servers.net.
com.			172800	IN	NS	b.gtld-servers.net.
com.			172800	IN	NS	d.gtld-servers.net.
com.			172800	IN	NS	f.gtld-servers.net.
com.			172800	IN	NS	j.gtld-servers.net.
com.			172800	IN	NS	g.gtld-servers.net.
com.			172800	IN	NS	a.gtld-servers.net.
com.			172800	IN	NS	m.gtld-servers.net.
com.			172800	IN	NS	l.gtld-servers.net.
com.			86400	IN	DS	30909 8 2 E2D3C916F6DEEAC73294E8268FB5885044A833FC5459588F4A9184CF C41A5766
com.			86400	IN	RRSIG	DS 8 1 86400 20221121170000 20221108160000 18733 . ZgW2dKMBP6rqIgQSGN5uzFhNFZuIPUg7JrkXzgE9VKh68LOIuQlFgTTV xt3Sz4ytgru8JWcwCHgiqCTjbaN3WeHcrDVf0ItG0Az/01ofBWfoAu9S 1JFYcOrYkTUidn8R4vROkwzsTrZMirnB/4yrA4MD5thWVBr3IczcnFto DbADuw8Qy/RUEUfcu+LcQ4Ge+OzIP8eE1T6+nbMRqFZBSMFoBO1w0Mmk xNGyEclfFkymQ4CsYxnvYVstljpLqh1OhoAEwY6D+0cSh9dKNQ5LKhgq UXqfJ+zmdcvL+cVvMjfcB0Wj6/hmEkpEp1ISawlTjFUDgiKNZxiow02r JL4tsw==
;; Received 1201 bytes from 192.33.4.12#53(c.root-servers.net) in 148 ms

newsblog.pl.com.		172800	IN	NS	olga.ns.cloudflare.com.
newsblog.pl.com.		172800	IN	NS	todd.ns.cloudflare.com.
newsblog.pl.com.		86400	IN	DS	2371 13 2 CBAA2018F41B29985DAEDE7F127D4F9626ADA609665CEBAB0011903B 7C639254
newsblog.pl.com.		86400	IN	RRSIG	DS 8 2 86400 20221112051535 20221105030535 53929 com. sbqDGqvxmEAjS4KRx8LvQAG9IusLgRRm5GPDf+AFkXddGgfJN37vJP1H 4JKMriWtgXZHc3g1ANMNjij+5J1K3GgeNy2w0UYc7xHkmvhsd15pDvi9 +BoiBsjC8ffznyli8sV8XVhm65oKDHJRx5YEtXUVA4p9hegO0NHDccvt ujQKMShBWX3nxs7P4onL13gspVScOoZgzXL3470UfDW7MA==
;; Received 601 bytes from 2001:501:b1f9::30#53(m.gtld-servers.net) in 144 ms

newsblog.pl.com.		300	IN	A	172.66.43.163
newsblog.pl.com.		300	IN	A	172.66.40.93
newsblog.pl.com.		300	IN	RRSIG	A 13 2 300 20221110051242 20221108031242 34505 newsblog.pl.com. tKDYd/FHjs/aRHeOQJlsxXDJYtVcHA4G16QRJKlhFyYkZ2TmLKNIc6eM vXfpO91IVArK67KbyW5lIxI5cCxcQg==
;; Received 183 bytes from 172.64.32.137#53(olga.ns.cloudflare.com) in 16 ms

Alternatywnie możesz uzyskać krótką odpowiedź, używając zmiennych +short lub +noall +answer.

Odwrotne wyszukiwanie DNS

Odwrotne wyszukiwanie DNS ujawnia rekord PTR powiązany z adresem IP. Jest to przeciwieństwo rekordu A DNS i dopasowuje adresy IP do nazwy domeny.

Jednak nie będzie sekcji odpowiedzi, jeśli nazwa domeny nie ma rekordu DNS PTR.

Komenda w grze to dig -x adres IP.

[email protected]:~$ dig yahoo.com +short
74.6.143.26
74.6.231.20
98.137.11.164
98.137.11.163
74.6.143.25
74.6.231.21
[email protected]:~$ dig -x 74.6.143.26

; <<>> DiG 9.18.1-1ubuntu1-Ubuntu <<>> -x 74.6.143.26
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32267
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 5, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;26.143.6.74.in-addr.arpa.	IN	PTR

;; ANSWER SECTION:
26.143.6.74.in-addr.arpa. 600	IN	PTR	media-router-fp74.prod.media.vip.bf1.yahoo.com.

;; AUTHORITY SECTION:
143.6.74.in-addr.arpa.	172800	IN	NS	ns3.yahoo.com.
143.6.74.in-addr.arpa.	172800	IN	NS	ns4.yahoo.com.
143.6.74.in-addr.arpa.	172800	IN	NS	ns5.yahoo.com.
143.6.74.in-addr.arpa.	172800	IN	NS	ns2.yahoo.com.
143.6.74.in-addr.arpa.	172800	IN	NS	ns1.yahoo.com.

;; Query time: 192 msec
;; SERVER: 127.0.0.53#53(127.0.0.53) (UDP)
;; WHEN: Wed Nov 09 04:17:08 UTC 2022
;; MSG SIZE  rcvd: 203

Jak widać, nazwa domeny w sekcji Answer, media-router-fp74.prod.media.vip.bf1.yahoo.com/, jest powiązana z jej podstawowym adresem IP 74.6.143.26.

A odwiedzenie tego adresu URL spowoduje przekierowanie na stronę główną wyszukiwania Yahoo.

Jednak może to nie dotyczyć wszystkich hostów internetowych; w niektórych przypadkach te brzydkie, długie adresy URL niczego nie rozwiązują.

Odpytywanie określonych serwerów DNS

Czasami chcesz pingować określony serwer w celu uzyskania zapytań DNS. Można to łatwo osiągnąć, dodając adres IP serwera @DNS, wybierając dowolny serwer DNS dla konkretnego zapytania.

$ dig @1.1.1.1 newsblog.pl.com +noall +answer +stats
newsblog.pl.com.		300	IN	A	172.66.40.93
newsblog.pl.com.		300	IN	A	172.66.43.163
;; Query time: 156 msec
;; SERVER: 1.1.1.1#53(1.1.1.1) (UDP)
;; WHEN: Wed Nov 09 04:18:56 UTC 2022
;; MSG SIZE  rcvd: 74

Możesz to sprawdzić w sekcji statystyk, w której wspomniano o serwerze: 1.1.1.1, który należy do Cloudflare.

Podobnie można odpytywać serwery Google DNS (8.8.8.8):

$ dig @8.8.8.8 newsblog.pl.com mx +noall +answer +stats
newsblog.pl.com.		300	IN	MX	1 aspmx.l.google.com.
newsblog.pl.com.		300	IN	MX	10 alt3.aspmx.l.google.com.
newsblog.pl.com.		300	IN	MX	10 alt4.aspmx.l.google.com.
newsblog.pl.com.		300	IN	MX	5 alt1.aspmx.l.google.com.
newsblog.pl.com.		300	IN	MX	5 alt2.aspmx.l.google.com.
;; Query time: 44 msec
;; SERVER: 8.8.8.8#53(8.8.8.8) (UDP)
;; WHEN: Wed Nov 09 04:23:16 UTC 2022
;; MSG SIZE  rcvd: 157

Wykopmy to ⛏️

Jak sama nazwa mówi, są one używane do wyszukiwania informacji DNS i identyfikowania powiązanych problemów. Polecenia kopania są zwykle szybkie w pracy i łatwe do zapamiętania.

Nie wspominając o tym, że możesz także zainstalować narzędzia do kopania na komputerach Mac i Windows, dzięki czemu są one uniwersalne w ich aplikacji.

PS: Skoro tu jesteś, zbrodnią byłoby nie przedstawiać Ci biblioteki newsblog.pl Sysadmin, która jest kompleksowym centrum rozwiązań dla Twoich sysadminowych bólów głowy.