DNS - NSLOOKUP, yetkili olmayan yanıtın anlamı nedir?


117

Bazı alanlar için nslookupbana bir Non-authoritative answerbölüm veriyor . Ne anlama geliyor?

Got answer:
    HEADER:
        opcode = QUERY, id = 3, rcode = NXDOMAIN
        header flags:  response, want recursion, recursion avail.
        questions = 1,  answers = 0,  authority records = 1,  additional =

    QUESTIONS:
        www.ssss.com.SME, type = AAAA, class = IN
    AUTHORITY RECORDS:
    ->  (root)
        ttl = 1787 (29 mins 47 secs)
        primary name server = a.root-servers.net
        responsible mail addr = nstld.verisign-grs.com

------------
Non-authoritative answer:
------------

------------
Name:    example.com
Address:  93.184.216.34
Aliases:  www.example.com

14
www.xxx.com gerçekten bir örnek alan adı değildir haha;) ... RFC example.com kullanmanızı önerir. bkz: iana.org/domains/reserved
Mzn

Yanıtlar:


99

Temel olarak, isminin söylediği şey bu. Yetkili bir yanıt, bir kayıt döndürdüğü etki alanı için yetkili olduğu düşünülen bir ad sunucusundan (arama yaptığınız etki alanı listesindeki ad sunucularından biri) gelir ve yetkili olmayan bir yanıt başka bir yerden gelir ( nameserver, aradığınız etki alanı listesinde değil).

Temelde, sorguladığınız etki alanı için resmi bir ad sunucusu olan ve olmayan bir ad sunucusu arasındaki fark. Yetkili olmayan isim sunucuları cevaplarını ikinci (veya üçüncü ya da dördüncü ...) elde ediyor - sadece bilgiyi başka bir yerden iletiyorlar.

Mesela, eğer şu an hakkında bir görüş yaptıysam maps.google.com, yapılandırılmış isim sunucularımdan birinden bir cevap alırdım. (Ya ISS'mden, ya da etki alanımdan.) Yetki dışı olarak geri dönecekti, çünkü ne ISS'nizin ad sunucuları, ne de benim kendi adları adsızlar listesinde değil google.com. Google’ın ad sunucuları değiller, bu yüzden NS kayıtlarını oluşturan yetkili kaynaklar değiller.

Google için yetkili ad sunucularının listesi aşağıdadır (whois.internic.net adresinden).

Alan Adı: GOOGLE.COM

Kayıt Şirketi: MARKMONITOR INC.

Whois Sunucusu: whois.markmonitor.com

Ad Sunucusu: NS1.GOOGLE.COM

Ad Sunucusu: NS2.GOOGLE.COM

Ad Sunucusu: NS3.GOOGLE.COM

Ad Sunucusu: NS4.GOOGLE.COM

Güncelleme Tarihi: 20-jul-2011

Kuruluş Tarihi: 15-Eylül-1997

Son Kullanma Tarihi: 14-sep-2020

Yapılandırılmış DNS sunucumu o listedekilerden biriyle değiştirip, bir nslookupkarşı maps.google.comoylama yapsaydım, yetkili bir cevap alırdım. Bu sunucular, Google’ın alan adlarında geçerli adlar olan ve olmayanlar için otoritedir (veya kaynaktır). Diğer tüm ad sunucuları, yetkili olmayan ad sunucuları, NS kayıtlarını, yetkili sunuculardan satırın üstündeki herhangi bir yerinden alır.


35

Aldığınız cevap, esasen yerel DNS sunucunuzdan önbelleğe alınmış veya iletilmiş bir cevaptır. Temel olarak, yetkili olmayan bir ad sunucusu, sorgulanan bölgenin kayıtlarını içermeyen bir ad sunucusudur; Örneğin, yerel DNS’niz Google’ın ad kayıtlarına sahip olmayacak.

host -t ns example.comExample.com için NS kaydını almaya çalıştırarak , belirli bir etki alanı için yetkili olan ad sunucularını alabilirsiniz.

Google durumunda görüyoruz:

$ host -t ns google.com
google.com name server ns4.google.com.
google.com name server ns1.google.com.
google.com name server ns2.google.com.
google.com name server ns3.google.com.

Daha sonra nslookupkomutunuzu bu sunuculardan birine karşı çalıştırırsanız , yetkili cevabı alırsınız:

$ nslookup www.google.com ns1.google.com
Server:         ns1.google.com
Address:        216.239.32.10#53

www.google.com  canonical name = www.l.google.com.
Name:   www.l.google.com
Address: 173.194.43.49
Name:   www.l.google.com
Address: 173.194.43.50
Name:   www.l.google.com
Address: 173.194.43.48
Name:   www.l.google.com
Address: 173.194.43.52
Name:   www.l.google.com
Address: 173.194.43.51

nslookupNS kayıt türünü almak için kullanıyorsanız , etkileşimli modda böyle bir şeyi çalıştırabilirsiniz:

$ nslookup
> set querytype=ns
> google.com
Server:         127.0.0.1
Address:        127.0.0.1#53

Non-authoritative answer:
google.com      nameserver = ns3.google.com.
google.com      nameserver = ns4.google.com.
google.com      nameserver = ns1.google.com.
google.com      nameserver = ns2.google.com.

Authoritative answers can be found from:
ns1.google.com  internet address = 216.239.32.10

Yani, ayar querytype=nsyukarıdaki hostkomutun yaptığını yapar.


sadece merak ediyorum ... ne anlama #geliyor Address: 127.0.0.1#53?
cwhsu

Doğru dinleme bağlantı noktası nedeniyle tahmin? Burada belirtilenler gibi nlp.stanford.edu/IR-book/html/htmledition/dns-resolution-1.html
cwhsu

24

Yetkili olmayan cevap, yanıtlanan alan adı için yetkili DNS sunucusundan yanıt alınamadığı anlamına gelir.

İlk önce, DNS sisteminin nasıl çalıştığını anlamanız gerekir. DNS sistemi üç katmana ayrılabilir. Onlar:

  • kök DNS sunucuları
  • üst düzey etki alanı DNS sunucuları
  • yetkili DNS sunucuları

İşletim sisteminizde IP adresi belirtilen yerel DNS sunucusu adı verilen başka bir DNS Sunucusu sınıfı vardır.

Tarayıcınız example.com deyince bir web sitesine bağlandığında, tarayıcı example.com'un IP adresini almak için önce yerel DNS sunucunuzu sorgular.

  • Yerel DNS sunucusu example.com A kaydına sahip değilse, kök DNS sunucularından birini sorgulayacaktır.

  • Kök DNS sunucusu şunu söyleyecektir: A kaydına sahip değilim, ancak .com etki alanlarından sorumlu üst düzey etki alanı DNS sunucusunu biliyorum.

  • Ardından, yerel DNS sunucunuz .com alan adlarından sorumlu olan üst düzey etki alanı DNS sunucusunu sorgular. TLD DNS sunucusu yanıt verecektir: Bilmiyorum ama hangi DNS sunucusunun example.com için yetkili olduğunu biliyorum.

  • Bu nedenle, yerel DNS sunucunuz yetkili DNS sunucusunu sorgular. Gerçek DNS kaydı bu yetkili DNS sunucusunda depolandığından, yerel DNS sunucunuza bir cevap verecektir.

Sonra bu sorgu sonucu yerel DNS sunucunuzda önbelleğe alınır, ancak eski olabilir. TTL süresi dolduğunda, yerel DNS sunucunuz yetkili DNS sunucusundan sorgu sonucunu güncelleyecektir. Yerel DNS sunucunuzda bir DNS kaydını sorguladığınızda, yetkili olmayan (resmi olmayan) bir yanıt verir. Yetkili bir cevap istiyorsanız, nslookup veya diğer yardımcı programları kullanırken açıkça yetkili DNS sunucusunu belirtmelisiniz. Yerel bir DNS sunucusunun önbellekleme DNS sunucusu olarak adlandırılması gerektiğini düşünüyorum.

Birisi bir alan adı kaydettiğinde, hangi DNS sunucusunun yetkili DNS sunucusu olduğunu belirleyebilir. Bu bilgiye NS kaydı denir. NS kaydı, ad sunucusunun alanın A kaydını, MX kaydını vb. Elinde tuttuğu bir üst düzey etki alanı DNS sunucusuna söyleyecektir.


4
Bu, bir araya getirilen diğer cevapların hepsinden daha fazlasını açıkladı. DNS'in nasıl çalıştığının topolojisinin açıklanması, bu konu için bağlam sağlamada son derece yararlıdır.
Levi Roberts

1

Gönderen Wireshark Lab: DNS v6.01 :However, nslookup also indicates that the answer is “non-authoritative,” meaning that this answer came from the cache of some server rather than from an authoritative MIT DNS server

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.