Neden host ve nslookup bir ismi çözebilir fakat dig bunu yapamaz?


27

Biri bana bunun neden olduğunu söyleyebilir mi? Host ve / veya nslookup komutunu kullanarak bir ana bilgisayar adını çözebilirim, ancak ileri aramalar dig ile çalışmıyor; geriye doğru arama yapmak:

musashixxx@box:~$ host someserver
someserver.somenet.internal has address 192.168.0.252
musashixxx@box:~$ host 192.168.0.252
252.0.168.192.in-addr.arpa domain name pointer someserver.somenet.internal.
musashixxx@box:~$ nslookup someserver
Server:     192.168.0.253
Address:    192.168.0.253#53

Name:   someserver.somenet.internal
Address: 192.168.0.252
musashixxx@box:~$ nslookup 192.168.0.252
Server:     192.168.0.253
Address:    192.168.0.253#53

252.0.168.192.in-addr.arpa  name = someserver.somenet.internal.

musashixxx@box:~$ dig someserver

; <<>> DiG 9.8.1-P1 <<>> someserver
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 55306
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;someserver.            IN  A

;; Query time: 0 msec
;; SERVER: 192.168.0.253#53(192.168.0.253)
;; WHEN: Wed Oct  3 15:47:38 2012
;; MSG SIZE  rcvd: 27

musashixxx@box:~$ dig -x 192.168.0.252

; <<>> DiG 9.8.1-P1 <<>> -x 192.168.0.252
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28126
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;252.0.168.192.in-addr.arpa.    IN  PTR

;; ANSWER SECTION:
252.0.168.192.in-addr.arpa. 3600 IN PTR someserver.somenet.internal.

;; Query time: 0 msec
;; SERVER: 192.168.0.253#53(192.168.0.253)
;; WHEN: Wed Oct  3 15:49:11 2012
;; MSG SIZE  rcvd: 86

İşte benim resolv.conf dosyalarım şöyle:

nameserver 192.168.0.253
search somenet.internal

Bu davranış normal mi? Düşüncesi olan var mı?

Yanıtlar:


36

Arama seçeneğini kullanmamak kazığın varsayılan davranışıdır.

Manuel sayfadan:

   +[no]search
       Use [do not use] the search list defined by the searchlist or
       domain directive in resolv.conf (if any). The search list is not
       used by default.

Düzenleme: Sadece +searchçalışmasını sağlamak için ekleyin dig +search myhost.


Bunu biraz sezgisel olarak algılayan tek kişi ben miyim? :-) Neyse, çok teşekkürler!
musashiXXX

5
@ musashiXXX Pekala, buna bağlı olarak değişir :-) Çoğu insan digDNS hata ayıklamak için kullanır ve bu durumda DNS'den gelen cevapları bozabilecek her şeyi devre dışı bırakmak iyi bir fikirdir. Bence bu oldukça iyi bir fikir; çoğu insan kullanır hostve nslookupsonuçta. :-)
Alexander Janssen

7

Ben de aynı problemi yaşıyordum. Nslookup'tan gönderilen paketleri inceledikten ve wireshark ile kazı yaptıktan sonra sorunu buldum.

dig, sorgudaki otantik veri bitini ayarlıyordu. Man sayfasına göre, "Bu, sunucunun tüm cevap ve yetki bölümlerinin, sunucunun güvenlik politikasına göre güvenli olarak doğrulanıp doğrulanmadığını döndürmesini ister." + Noadflag ile kazı yaparak, nslookup ile aynı sonuçları verdi.


3
Aynı sorunu vardı, ancak farklı sonuç ednsuzatma neden oldu . +noendsDig ile sorgu yaptığımda host ile aynı sonucu verdi.
Slava Bacherikov


1

Bir .digrc dosyasını ev dizininizde

+ arama

varsayılan davranışa şans vermek


0

Bu sorunu evimdeki wi-fi google.comağımda Windows 7 ana bilgisayarında çalışan bir Ubuntu VM içinden iyi digzamanlamayı deneyen , zaman aşımına uğrayan ancak nslookupsonucu anında geri döndürmeye çalışırken yaşadım .

Benim için bir çözüm eklemek oldu +noedns: $ dig +noedns google.com.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.