Som systemadministratör ser saker bara vackra ut tills de inte gör det. I dessa krisdrivna ögonblick kommer dessa grävkommandon att komma till nytta. Håll ögonen öppna.
Systemadministratörer gör ett jäkla jobb varje gång. Även det mest grundläggande sysadmin-jobbkravet för att vara jour 24/7 är något jag uppskattar över gränserna.
Men vi är inte här för att dyka in i deras jobbprofiler; kolla istället deras valfria vapen för att felsöka DNS-problem.
Innehållsförteckning
Vad är grävkommandon?
Förkortning för Domain Information Groper, Dig-kommandon är en av de snabbaste metoderna för att fråga DNS-servrar om vad som fungerar och vad som inte fungerar.
Du kan kontrollera serverns IP-adress, namnservrar, e-postutbyte, förfrågan TTL, etc., med lätta att komma ihåg texter.
Innan du börjar med några grundläggande grävkommandon, kontrollera om du har grävverktyg installerade:
$ dig -v
Detta bör återkomma med resultatet som anger grävversionen, så här:
DiG 9.18.1-1ubuntu1-Ubuntu
Om du inte får ett liknande svar måste du först installera Dig-verktyg.
För personer som använder Ubuntu och Debian, skriv:
$ sudo apt-get install dnsutils
Och använd:
$ sudo yum install bind-utils
…om du använder CentOS eller RHEL.
Kör sedan dig -v för att säkerställa att installationen gick smidigt.
Slutligen, hoppa till följande avsnitt för att kolla in några Dig-kommandon som hjälper dig som systemadministratör.
Kontrollera IP-adressen
Detta är en av de enklaste där vi kontrollerar serverns IP-adress som ligger till grund för ett domännamn.
dig adminvista.com.com är iterationen vi börjar med.
$ dig adminvista.com.com ; <<>> DiG 9.18.1-1ubuntu1-Ubuntu <<>> adminvista.com.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: ;adminvista.com.com. IN A ;; ANSWER SECTION: adminvista.com.com. 67 IN A 172.66.43.163 adminvista.com.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
Det första viktiga är statusen: NOERROR i avsnittet Fick svar överst. Detta säger oss att det gick bra utan några problem.
Men informationen för vilken vi gjorde den här frågan är serverns IP-adress. Det nämns i Answer-avsnittet 172.66.40.93 (den primära servern) och 172.66.43.163 (den felsäkra).
Dessutom finns din ursprungliga frågesats under avsnittet Fråga.
Det sista avsnittet ger lite statistik om frågan.
Men det är oerhört mycket information som inte behövs varje gång.
Ergo kan du hämta ett renare svar på den här frågan genom att ange:
$ dig adminvista.com.com +noall +answer adminvista.com.com. 53 IN A 172.66.43.163 adminvista.com.com. 53 IN A 172.66.40.93
Här förnekar vi allt med +noall, bara för att tillåta det förväntade svaret med +svaret.
Man kan få ett ännu kortare svar genom att använda:
$ dig adminvista.com.com +short 172.66.43.163 172.66.40.93
Detta var den grundläggande frågan som returnerade DNS A-posten; låt oss se några fler.
Hitta specifika DNS-poster
Namnservrar, den auktoritativa DNS-servern för en domän, kan hittas av variabeln ns.
$ dig adminvista.com.com ns +short olga.ns.cloudflare.com. todd.ns.cloudflare.com.
På liknande sätt svarar variabeln mx med e-postservrarna tillsammans med deras prioriteringar.
$ dig adminvista.com.com mx +noall +answer adminvista.com.com. 300 IN MX 1 aspmx.l.google.com. adminvista.com.com. 300 IN MX 10 alt3.aspmx.l.google.com. adminvista.com.com. 300 IN MX 10 alt4.aspmx.l.google.com. adminvista.com.com. 300 IN MX 5 alt1.aspmx.l.google.com. adminvista.com.com. 300 IN MX 5 alt2.aspmx.l.google.com.
På samma sätt kan txt, aaaa, cname, etc. användas som dig-kommandovariabler för att returnera olika DNS-poster.
Spåra DNS
Som framgår av rubriken kontrollerar Trace DNS sökvägen från rotnamnservrarna, auktoritativa namnservrar, upp till domänens IP-adress.
$ dig adminvista.com.com +trace ; <<>> DiG 9.18.1-1ubuntu1-Ubuntu <<>> adminvista.com.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 adminvista.com.com. 172800 IN NS olga.ns.cloudflare.com. adminvista.com.com. 172800 IN NS todd.ns.cloudflare.com. adminvista.com.com. 86400 IN DS 2371 13 2 CBAA2018F41B29985DAEDE7F127D4F9626ADA609665CEBAB0011903B 7C639254 adminvista.com.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 adminvista.com.com. 300 IN A 172.66.43.163 adminvista.com.com. 300 IN A 172.66.40.93 adminvista.com.com. 300 IN RRSIG A 13 2 300 20221110051242 20221108031242 34505 adminvista.com.com. tKDYd/FHjs/aRHeOQJlsxXDJYtVcHA4G16QRJKlhFyYkZ2TmLKNIc6eM vXfpO91IVArK67KbyW5lIxI5cCxcQg== ;; Received 183 bytes from 172.64.32.137#53(olga.ns.cloudflare.com) in 16 ms
Alternativt kan du få ett kort svar genom att använda +short eller +noall +svarvariabler.
Omvänd DNS-sökning
Omvänd DNS-sökning avslöjar PTR-posten som är kopplad till IP-adressen. Det är motsatsen till en DNS A-post och matchar IP-adresserna med domännamnet.
Däremot kommer det inte att finnas något svarsavsnitt om ett domännamn inte har någon DNS PTR-post.
Kommandot som spelas här är dig -x IP-adress.
[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
Som du kan se är domännamnet i svarsektionen, media-router-fp74.prod.media.vip.bf1.yahoo.com/, länkat till dess primära IP-adress 74.6.143.26.
Och om du besöker den här webbadressen skickas du faktiskt till Yahoos sökhemsida.
Men detta kanske inte stämmer för alla webbhotell; i vissa fall löser dessa fula, långa webbadresser ingenting.
Fråga efter specifika DNS-servrar
Ibland vill du pinga en specifik server för DNS-frågor. Man kan enkelt uppnå det genom att lägga till @DNS-serverns IP-adress, välja valfri DNS-server för en viss fråga.
$ dig @1.1.1.1 adminvista.com.com +noall +answer +stats adminvista.com.com. 300 IN A 172.66.40.93 adminvista.com.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
Du kan verifiera detta i statistiksektionen, som nämner Server: 1.1.1.1, som tillhör Cloudflare.
På samma sätt kan man fråga Google DNS-servrar (8.8.8.8):
$ dig @8.8.8.8 adminvista.com.com mx +noall +answer +stats adminvista.com.com. 300 IN MX 1 aspmx.l.google.com. adminvista.com.com. 300 IN MX 10 alt3.aspmx.l.google.com. adminvista.com.com. 300 IN MX 10 alt4.aspmx.l.google.com. adminvista.com.com. 300 IN MX 5 alt1.aspmx.l.google.com. adminvista.com.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
Låt oss gräva upp det ⛏️
Som namnet talar används dessa för att gräva fram DNS-information och identifiera relaterade problem. Grävkommandon är vanligtvis snabba på jobbet och lätta att memorera.
För att inte tala om, du kan också installera grävverktyg på Mac och Windows, vilket gör dem universella i sin applikation.
PS: Medan du är här skulle det vara brottsligt att inte introducera dig till adminvista.com Sysadmin-biblioteket, en enda lösningshub för din sysadmin-huvudvärk.