копати проти nslookup


40

Чому команди викопують і nslookup іноді друкують різні результати?

~$ dig facebook.com

; <<>> DiG 9.9.2-P1 <<>> facebook.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6625
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

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

;; ANSWER SECTION:
facebook.com.        205    IN    A    173.252.110.27

;; Query time: 291 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Oct  6 17:55:52 2013
;; MSG SIZE  rcvd: 57

~$ nslookup facebook.com
Server:        8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
Name:    facebook.com
Address: 10.10.34.34

Відповіді:


41

dig використовує бібліотеки роздільної здатності ОС. nslookup використовує власні внутрішні.

Ось чому консорціум Internet Systems (ISC) вже деякий час намагається змусити людей припинити використання nslookup. Це викликає плутанину.


22
Насправді рішення про застарілий nslookup було скасовано, принаймні, у nslookup, наданий ISC. Джерело: kb.isc.org/article/AA-00496/0/BIND-9.9.0a3-Release-Notes.htm (запис # 1700)
ата

2
@ata Посилання, яке ви надали, вже не існує.
QMaster

Сьогодні nslookupбула дивна ситуація, де не приносив би жодного результату (зачастував би час), але використання systemd-resolveдуже добре працювало. Це було для мене новим, і я, швидше за все, буду використовувати його systemd-resolveв майбутньому замість nslookup.
Джефф Х.

21

Деякий час nslookupповідомлялося про застарілу програму, і її більше не слід використовувати.

Вихідні дані навіть попереджали вас про це:

Примітка: nslookup застарілий і може бути видалений з майбутніх версій. Спробуйте скористатися програмами "копати" або "хост". Запустіть nslookup за допомогою параметра '-sil [ent]', щоб запобігти появі цього повідомлення.

витяг з http://cr.yp.to/djbdns/nslookup.html

Не використовуйте давню програму nslookup. Що б ви не намагалися зробити, є кращий спосіб зробити це. Навіть компанія BIND, яка підтримує та поширює nslookup, каже, що `` nslookup застарілий і може бути видалений з майбутніх релізів ''.

Однак у примітках до випуску з Bind 9.9.0a3 є запис (# 1700), в якому зазначено наступне:

1700.   [func]      nslookup is no longer to be treated as deprecated.
                    Remove "deprecated" warning message.  Add man page.

На сторінці Вікіпедії також зазначено:

За станом на BIND 9.9.0a3, nslookup, очевидно, було відновлено ("nslookup більше не трактується як устарений"). (Консорціум Інтернет-систем раніше протягом деякого часу припиняв nslookup на користь хоста та копання.)

Тому, здавалося б, nslookupцілком чудово використовувати разом з dig. На додаток до двох інструментів, що використовують різні роздільники, є речі, які легше зробити в digпорівнянні nslookup, хоча, nslookupяк правило, простіше використовувати два інструменти щодня.

Також digвихідний результат, як правило, простіше розбирати в сценаріях або у використанні командного рядка.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.