dig: Difference between revisions

From Leechfinger
Jump to navigationJump to search
Qais (talk | contribs)
Qais (talk | contribs)
 
Line 188: Line 188:
$ dig NS yahoo.com
$ dig NS yahoo.com
$ dig A yahoo.com
$ dig A yahoo.com
</syntaxhighlight>
=== Find your public ip ===
<syntaxhighlight lang="bash">
$ dig +short myip.opendns.com @resolver1.opendns.com
$ dig TXT +short o-o.myaddr.l.google.com @ns1.google.com
$ dig +short txt ch whoami.cloudflare @1.0.0.1
</syntaxhighlight>
</syntaxhighlight>
[[Category:Commands]]
[[Category:Commands]]

Latest revision as of 13:46, 18 May 2025

Install dig package

Dig is part of package bind9-dnsutils.

$ apt-file list bind9-dnsutils
bind9-dnsutils: /usr/bin/delv             
bind9-dnsutils: /usr/bin/dig
bind9-dnsutils: /usr/bin/dnstap-read
bind9-dnsutils: /usr/bin/mdig
bind9-dnsutils: /usr/bin/nslookup
bind9-dnsutils: /usr/bin/nsupdate
bind9-dnsutils: /usr/share/doc/bind9-dnsutils/changelog.Debian.gz
bind9-dnsutils: /usr/share/doc/bind9-dnsutils/copyright
bind9-dnsutils: /usr/share/man/man1/delv.1.gz
bind9-dnsutils: /usr/share/man/man1/dig.1.gz
bind9-dnsutils: /usr/share/man/man1/dnstap-read.1.gz
bind9-dnsutils: /usr/share/man/man1/mdig.1.gz
bind9-dnsutils: /usr/share/man/man1/nslookup.1.gz
bind9-dnsutils: /usr/share/man/man1/nsupdate.1.gz
$ apt install bind9-dnsutils

Download root name servers cache file

Both files are identical, so use either one.

$ wget ftp://ftp.rs.internic.net/domain/named.cache
$ wget ftp://ftp.rs.internic.net/domain/db.cache

Reverse lookup

This option sets simplified reverse lookups, for mapping addresses to names.

$ dig -x 54.239.28.85

Check dig version

$ dig -v

Find the ip of a host

$ dig amazon.com | grep -A 1 --color 'ANSWER SECTION'
;; ANSWER SECTION:
amazon.com.             842     IN      A       205.251.242.103

$ dig google.com +short
142.250.113.102
142.250.113.101
142.250.113.100
142.250.113.113
142.250.113.139
142.250.113.138

$ dig amazon.com +noall +answer
amazon.com.             325     IN      A       52.94.236.248
amazon.com.             325     IN      A       205.251.242.103
amazon.com.             325     IN      A       54.239.28.85

Look at the "ANSWER SECTION", it has name, TTL in seconds, IN (class or internet), A (record type), IP.

Specify an exact DNS to search

$ dig @8.8.8.8 amazon.com

List all DNS of a host

$ dig google.com A +nssearch
SOA ns1.google.com. dns-admin.google.com. 759020131 900 900 1800 60 from server 216.239.38.10 in 28 ms.
SOA ns1.google.com. dns-admin.google.com. 759020131 900 900 1800 60 from server 216.239.32.10 in 28 ms.
SOA ns1.google.com. dns-admin.google.com. 759020131 900 900 1800 60 from server 216.239.36.10 in 44 ms.
SOA ns1.google.com. dns-admin.google.com. 759020131 900 900 1800 60 from server 216.239.34.10 in 52 ms.

Deep dive with trace

This option toggles tracing of the delegation path from the root name servers for the name being looked up. Tracing is disabled by default. When tracing is enabled, dig makes iterative queries to resolve the name being looked up. It follows referrals from the root servers, showing the answer from each server that was used to resolve the lookup.

$ dig amazon.com +trace

13 root servers

$ dig NS .

;; ANSWER SECTION:
.                       515350  IN      NS      k.root-servers.net.
.                       515350  IN      NS      l.root-servers.net.
.                       515350  IN      NS      m.root-servers.net.
.                       515350  IN      NS      a.root-servers.net.
.                       515350  IN      NS      b.root-servers.net.
.                       515350  IN      NS      c.root-servers.net.
.                       515350  IN      NS      d.root-servers.net.
.                       515350  IN      NS      e.root-servers.net.
.                       515350  IN      NS      f.root-servers.net.
.                       515350  IN      NS      g.root-servers.net.
.                       515350  IN      NS      h.root-servers.net.
.                       515350  IN      NS      i.root-servers.net.
.                       515350  IN      NS      j.root-servers.net.

;; ADDITIONAL SECTION:
h.root-servers.net.     601447  IN      A       198.97.190.53
i.root-servers.net.     601603  IN      A       192.36.148.17
k.root-servers.net.     601561  IN      A       193.0.14.129

NS for com and gov

$ dig NS com @e.root-servers.net

;; AUTHORITY SECTION:
com.                    172800  IN      NS      a.gtld-servers.net.
com.                    172800  IN      NS      b.gtld-servers.net.
com.                    172800  IN      NS      c.gtld-servers.net.
com.                    172800  IN      NS      d.gtld-servers.net.
com.                    172800  IN      NS      e.gtld-servers.net.
com.                    172800  IN      NS      f.gtld-servers.net.
com.                    172800  IN      NS      g.gtld-servers.net.
com.                    172800  IN      NS      h.gtld-servers.net.
com.                    172800  IN      NS      i.gtld-servers.net.
com.                    172800  IN      NS      j.gtld-servers.net.
com.                    172800  IN      NS      k.gtld-servers.net.
com.                    172800  IN      NS      l.gtld-servers.net.
com.                    172800  IN      NS      m.gtld-servers.net.

;; ADDITIONAL SECTION:
a.gtld-servers.net.     172800  IN      A       192.5.6.30
a.gtld-servers.net.     172800  IN      AAAA    2001:503:a83e::2:30
b.gtld-servers.net.     172800  IN      A       192.33.14.30
b.gtld-servers.net.     172800  IN      AAAA    2001:503:231d::2:30
c.gtld-servers.net.     172800  IN      A       192.26.92.30
c.gtld-servers.net.     172800  IN      AAAA    2001:503:83eb::30
d.gtld-servers.net.     172800  IN      A       192.31.80.30
d.gtld-servers.net.     172800  IN      AAAA    2001:500:856e::30
e.gtld-servers.net.     172800  IN      A       192.12.94.30
e.gtld-servers.net.     172800  IN      AAAA    2001:502:1ca1::30
f.gtld-servers.net.     172800  IN      A       192.35.51.30
f.gtld-servers.net.     172800  IN      AAAA    2001:503:d414::30
g.gtld-servers.net.     172800  IN      A       192.42.93.30
g.gtld-servers.net.     172800  IN      AAAA    2001:503:eea3::30
h.gtld-servers.net.     172800  IN      A       192.54.112.30
h.gtld-servers.net.     172800  IN      AAAA    2001:502:8cc::30
i.gtld-servers.net.     172800  IN      A       192.43.172.30
i.gtld-servers.net.     172800  IN      AAAA    2001:503:39c1::30
j.gtld-servers.net.     172800  IN      A       192.48.79.30
j.gtld-servers.net.     172800  IN      AAAA    2001:502:7094::30
k.gtld-servers.net.     172800  IN      A       192.52.178.30
k.gtld-servers.net.     172800  IN      AAAA    2001:503:d2d::30
l.gtld-servers.net.     172800  IN      A       192.41.162.30
l.gtld-servers.net.     172800  IN      AAAA    2001:500:d937::30
m.gtld-servers.net.     172800  IN      A       192.55.83.30
m.gtld-servers.net.     172800  IN      AAAA    2001:501:b1f9::30

$ dig NS gov @e.root-servers.net
;; AUTHORITY SECTION:
gov.                    172800  IN      NS      a.ns.gov.
gov.                    172800  IN      NS      b.ns.gov.
gov.                    172800  IN      NS      c.ns.gov.
gov.                    172800  IN      NS      d.ns.gov.

;; ADDITIONAL SECTION:
a.ns.gov.               172800  IN      A       199.33.230.1
a.ns.gov.               172800  IN      AAAA    2001:503:ff40::1
b.ns.gov.               172800  IN      A       199.33.231.1
b.ns.gov.               172800  IN      AAAA    2001:503:ff41::1
c.ns.gov.               172800  IN      A       199.33.232.1
c.ns.gov.               172800  IN      AAAA    2001:503:ff42::1
d.ns.gov.               172800  IN      A       199.33.233.1
d.ns.gov.               172800  IN      AAAA    2001:503:ff43::1

Get the Domain's name server

$ dig NS google.com @j.gtld-servers.net.
;; AUTHORITY SECTION:
google.com.             172800  IN      NS      ns2.google.com.
google.com.             172800  IN      NS      ns1.google.com.
google.com.             172800  IN      NS      ns3.google.com.
google.com.             172800  IN      NS      ns4.google.com.

;; ADDITIONAL SECTION:
ns2.google.com.         172800  IN      AAAA    2001:4860:4802:34::a
ns2.google.com.         172800  IN      A       216.239.34.10
ns1.google.com.         172800  IN      AAAA    2001:4860:4802:32::a
ns1.google.com.         172800  IN      A       216.239.32.10
ns3.google.com.         172800  IN      AAAA    2001:4860:4802:36::a
ns3.google.com.         172800  IN      A       216.239.36.10
ns4.google.com.         172800  IN      AAAA    2001:4860:4802:38::a
ns4.google.com.         172800  IN      A       216.239.38.10

Get MX NS A records

$ dig MX yahoo.com
$ dig NS yahoo.com
$ dig A yahoo.com

Find your public ip

$ dig +short myip.opendns.com @resolver1.opendns.com
$ dig TXT +short o-o.myaddr.l.google.com @ns1.google.com
$ dig +short txt ch whoami.cloudflare @1.0.0.1