10 ví dụ lệnh dig truy vấn DNS trên Centos / Ubuntu / Debian / Fedora

Dig (Domain Information Groper) là một công cụ dòng lệnh quản trị mạng được sử dụng để truy vấn các máy chủ tên miền (DNS - Domain Name System).

Dig rất hữu ích để xác minh và khắc phục sự cố DNS, thực hiện truy vấn DNS và hiển thị các câu trả lời được trả về từ máy chủ tên đã được truy vấn.

Dig là một phần của bộ công cụ phần mềm máy chủ tên miền BIND. Công cụ dig có sẵn trong các bản phân phối Linux chính.

Truy vấn bản ghi "A" của miền bằng lệnh dig

# dig yahoo.com
; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20076
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1

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

;; ANSWER SECTION:
yahoo.com. 387 IN A 98.137.11.163
yahoo.com. 387 IN A 74.6.143.26
yahoo.com. 387 IN A 74.6.143.25
yahoo.com. 387 IN A 74.6.231.20
yahoo.com. 387 IN A 74.6.231.21
yahoo.com. 387 IN A 98.137.11.164
;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 12:58:13 IST 2021
;; MSG SIZE  rcvd: 134
Lệnh trên khiến dig tìm kiếm bản ghi "A" cho tên miền yahoo.com. Dig đọc tệp /etc/resolv.conf và truy vấn các máy chủ DNS được liệt kê trong đó. Câu trả lời từ máy chủ DNS là những gì dig hiển thị.

Kết quả của các lệnh:

  • Các dòng bắt đầu bằng dấu chấm phẩy (;) là những comment không phải là phần của thông tin.
  • Dòng đầu tiên cho chúng ta biết phiên bản của lệnh dig (9.16.1).
  • Tiếp theo, dig hiển thị phần tiêu đề của câu trả lời mà nó nhận được từ máy chủ DNS.
  • Tiếp theo là phần câu hỏi, chỉ đơn giản là cho chúng ta biết truy vấn, trong trường hợp này là một truy vấn cho bản ghi "A" của yahoo.com. IN có nghĩa là đây là một truy vấn Internet (trong lớp Internet).
  • Phần câu trả lời cho chúng ta biết rằng yahoo.com có địa chỉ IP là 98.137.11.163.
  • Cuối cùng, có một số thông tin về truy vấn. Bạn có thể tắt thông tin này bằng cách sử dụng tùy chọn +nostats.\

Truy vấn bản ghi "A" của miền với +short

Mặc định, dig rất chi tiết. Một cách để cắt giảm đầu ra là sử dụng tùy chọn +short, sẽ giảm đáng kể đầu ra như được hiển thị dưới đây. 

# dig yahoo.com +short
98.137.11.164
74.6.231.21
74.6.231.20
74.6.143.25
74.6.143.26
98.137.11.163

Lưu ý: Mặc định, dig tìm kiếm bản ghi "A" của miền được chỉ định, nhưng bạn cũng có thể chỉ định các bản ghi khác. Bản ghi MX (Mail eXchange) chỉ cho các máy chủ thư cách định tuyến thư điện tử cho miền đó. Tương tự, TTL, SOA, v.v.

Lệnh dig truy vấn bản ghi MX cho miền

Truy vấn các loại bản ghi tài nguyên DNS khác nhau.

# dig yahoo.com MX
; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com MX
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60630
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;yahoo.com. IN MX
;; ANSWER SECTION:
yahoo.com. 51 IN MX 1 mta6.am0.yahoodns.net.
yahoo.com. 51 IN MX 1 mta5.am0.yahoodns.net.
yahoo.com. 51 IN MX 1 mta7.am0.yahoodns.net.

;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:03:32 IST 2021
;; MSG SIZE  rcvd: 117

Truy vấn bản ghi SOA cho miền đơn giản với lệnh dig

# dig yahoo.com SOA
; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com SOA
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25140
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;yahoo.com. IN SOA

;; ANSWER SECTION:
yahoo.com. 1800 IN SOA ns1.yahoo.com. hostmaster.yahoo-inc.com. 
2021121001 3600 300 1814400 600

;; Query time: 128 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:04:08 IST 2021
;; MSG SIZE  rcvd: 99

Truy vấn bản ghi TTL cho miền

# dig yahoo.com TTL
; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com TTL
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64017
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1

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

;; ANSWER SECTION:
yahoo.com. 1606 IN A 74.6.143.25
yahoo.com. 1606 IN A 74.6.231.21
yahoo.com. 1606 IN A 74.6.143.26
yahoo.com. 1606 IN A 98.137.11.164
yahoo.com. 1606 IN A 98.137.11.163
yahoo.com. 1606 IN A 74.6.231.20

;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:04:58 IST 2021
;; MSG SIZE  rcvd: 134

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 27889
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

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

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:04:58 IST 2021
;; MSG SIZE  rcvd: 32

Truy vấn chỉ phần câu trả lời

# dig yahoo.com +nocomments +noquestion +noauthority +noadditional +nostats
; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com +nocomments +noquestion +noauthority +noadditional +nostats
;; global options: +cmd
yahoo.com. 1556 IN A 74.6.231.20
yahoo.com. 1556 IN A 98.137.11.163
yahoo.com. 1556 IN A 98.137.11.164
yahoo.com. 1556 IN A 74.6.143.26
yahoo.com. 1556 IN A 74.6.231.21
yahoo.com. 1556 IN A 74.6.143.25

Truy vấn tất cả các loại bản ghi DNS

# dig yahoo.com ANY +noall +answer

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> yahoo.com ANY +noall +answer
;; global options: +cmd
yahoo.com.              3509    IN      A       72.30.38.140
yahoo.com.              3509    IN      A       98.138.253.109
yahoo.com.              3509    IN      A       98.139.183.24
yahoo.com.              1709    IN      MX      1 mta5.am0.yahoodns.net.
yahoo.com.              1709    IN      MX      1 mta6.am0.yahoodns.net.
yahoo.com.              1709    IN      MX      1 mta7.am0.yahoodns.net.
yahoo.com.              43109   IN      NS      ns2.yahoo.com.
yahoo.com.              43109   IN      NS      ns8.yahoo.com.
yahoo.com.              43109   IN      NS      ns3.yahoo.com.
yahoo.com.              43109   IN      NS      ns1.yahoo.com.
yahoo.com.              43109   IN      NS      ns4.yahoo.com.
yahoo.com.              43109   IN      NS      ns5.yahoo.com.
yahoo.com.              43109   IN      NS      ns6.yahoo.com.

Đảo ngược truy vấn DNS

Truy vấn đảo ngược DNS. Chỉ hiển thị phần câu trả lời bằng cách sử dụng tùy chọn +short.

# dig -x 72.30.38.140 +short
ir1.fp.vip.sp2.yahoo.com.

Truy vấn nhiều bản ghi DNS

Truy vấn các truy vấn cụ thể về DNS của nhiều trang web, chẳng hạn như bản ghi MX, NS, v.v.

# dig yahoo.com mx +noall +answer redhat.com ns +noall +answer

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> yahoo.com mx +noall +answer redhat.com ns +noall +answer
;; global options: +cmd
yahoo.com.              1740    IN      MX      1 mta6.am0.yahoodns.net.
yahoo.com.              1740    IN      MX      1 mta7.am0.yahoodns.net.
yahoo.com.              1740    IN      MX      1 mta5.am0.yahoodns.net.
redhat.com.             132     IN      NS      ns1.redhat.com.
redhat.com.             132     IN      NS      ns4.redhat.com.
redhat.com.             132     IN      NS      ns3.redhat.com.
redhat.com.             132     IN      NS      ns2.redhat.com.

Tạo tệp .digrc

Tạo tệp .digrc trong $HOME/.digrc để lưu các tùy chọn mặc định của dig.

# dig yahoo.com
yahoo.com.              3427    IN      A       72.30.38.140
yahoo.com.              3427    IN      A       98.138.253.109
yahoo.com.              3427    IN      A       98.139.183.24

Dig là một công cụ mạnh mẽ để thực hiện truy vấn DNS và kiểm tra các vấn đề liên quan đến DNS. Nó cung cấp nhiều tùy chọn và khả năng để giúp trong việc xác minh và khắc phục sự cố DNS.

Mọi người cũng tìm kiếm: debian dig, dig ubuntu, 127.0.0.53 dns, dig dns