मुझे डोमेन नाम के लिए आधिकारिक नाम-सर्वर कैसे मिलेगा?


317

मैं परस्पर विरोधी DNS रिकॉर्ड की उत्पत्ति कैसे पा सकता हूं?

जवाबों:


413

आप किसी दिए गए डोमेन नाम के लिए SOA (स्टार्ट ऑफ़ अथॉरिटी) रिकॉर्ड चाहते हैं, और यह है कि आप सार्वभौमिक उपलब्ध nslookup कमांड लाइन टूल का उपयोग करके इसे कैसे पूरा करते हैं :

command line> nslookup
> set querytype=soa
> stackoverflow.com
Server:         217.30.180.230
Address:        217.30.180.230#53

Non-authoritative answer:
stackoverflow.com
        origin = ns51.domaincontrol.com # ("primary name server" on Windows)
        mail addr = dns.jomax.net       # ("responsible mail addr" on Windows)
        serial = 2008041300
        refresh = 28800
        retry = 7200
        expire = 604800
        minimum = 86400
Authoritative answers can be found from:
stackoverflow.com       nameserver = ns52.domaincontrol.com.
stackoverflow.com       nameserver = ns51.domaincontrol.com.

मूल (या प्राथमिक नाम सर्वर Windows पर) लाइन आपको बताता है कि ns51.domaincontrol के लिए मुख्य नाम सर्वर है stackoverflow.com

आउटपुट के अंत में दिए गए डोमेन के लिए बैकअप सर्वर सहित सभी आधिकारिक सर्वर सूचीबद्ध हैं।


158
nslookup -type = soa stackoverflow.com
बेन अमादा

6
हालाँकि, मैं "आधिकारिक जवाब" प्रतिक्रिया देखने में असमर्थ हूँ। मेरे पास विंडोज 8 और उबंटू 12 साइड हैं और फिर समान डोमेन के लिए समान कमांड उबंटू पर ठीक से काम करता है लेकिन विंडोज पर नहीं।
मारियो अवध

1
सावधान रहें कि यह दिखाता है कि डीएनएस dig
कॉन्फिगर में

6
यदि कोई आधिकारिक उत्तर नहीं है, लेकिन गैर-आधिकारिक उत्तर ठीक है तो इसका क्या मतलब है?
Overmind

6
यदि आप nslookup -type=soa stackoverflow.comआज (2019-फरवरी) लिनक्स पर चलते हैं , तो आधिकारिक अनुभाग खाली है।
सरल

174

आपने अपने प्रश्न में एकवचन का उपयोग किया है लेकिन आमतौर पर कई आधिकारिक नाम सर्वर हैं, RFC 1034 कम से कम दो की सिफारिश करता है।

जब तक आपका मतलब "प्राथमिक नाम सर्वर" नहीं है और "आधिकारिक नाम सर्वर" नहीं है। माध्यमिक नाम सर्वर हैं आधिकारिक।

यूनिक्स पर एक डोमेन के नाम सर्वर का पता लगाने के लिए:

  % dig +short NS stackoverflow.com
 ns52.domaincontrol.com.
 ns51.domaincontrol.com.

सर्वर को प्राथमिक के रूप में सूचीबद्ध करने के लिए ("प्राथमिक" की धारणा इन दिनों काफी अस्पष्ट है और आमतौर पर इसका कोई अच्छा जवाब नहीं है):

% dig +short  SOA stackoverflow.com | cut -d' ' -f1
ns51.domaincontrol.com.

नाम सर्वरों के बीच विसंगतियों की जांच करने के लिए, मेरी प्राथमिकता पुराने check_soaउपकरण पर जाती है, जिसका वर्णन लियू एंड अल्बित्ज़ "DNS & BIND" पुस्तक (ओ रेली संपादक) में किया गया है। स्रोत कोड http://examples.oreilly.com/dns5/ में उपलब्ध है

% check_soa stackoverflow.com
ns51.domaincontrol.com has serial number 2008041300
ns52.domaincontrol.com has serial number 2008041300

यहां, दो आधिकारिक नाम सर्वर में एक ही सीरियल नंबर है। अच्छा।


5
खुदाई + लघु हमेशा वह उत्तर नहीं देता है जिसकी मुझे उम्मीद है। उदाहरण के लिए, एक साइट के रूप में परिभाषित किया गया है www.pressero.com, जो किसी अन्य साइट के लिए CNAME है - खुदाई + लघु SOA सिर्फ CNAME लक्ष्य देता है।
रॉस प्रेसर

आप NS को आधिकारिक कैसे बनाते हैं?
ओवरमाइंड

1
@Overmind आप एक NS "आधिकारिक" नहीं बनाते हैं। यदि किसी नेमवेर को कुछ डोमेन के लिए आधिकारिक के रूप में कॉन्फ़िगर किया गया है, तो इसका मतलब है कि इसमें इन डोमेन के लिए स्थानीय रूप से ज़ोनफ़ाइल्स (आमतौर पर फ्लैट टेक्स्टुअल फ़ाइल्स, लेकिन अलग तरह से भी किया जा सकता है) और यह उनके लिए क्वेरी का जवाब देता है। उपयोगी होने के लिए, उन्हें मूल डोमेन में एनएस रिकॉर्ड के रूप में सूचीबद्ध किया जाना चाहिए, जिसमें से प्रत्येक के लिए वे आधिकारिक हैं, अन्यथा कोई भी उन्हें डिफ़ॉल्ट रूप से क्वेरी नहीं करेगा।
पैट्रिक मेव्ज़ेक

@RossPresser का जवाब NS / SOA रिकॉर्ड्स के बारे में बोल रहा था और मुझे संदेह है कि आप ऐसा करते हैं www.pressero.com, आप शायद A रिकॉर्ड्स के बारे में सोच रहे थे ( digयदि आप इसे निर्दिष्ट नहीं करते हैं तो डिफ़ॉल्ट रिकॉर्ड प्रकार है)। लेकिन यदि आवश्यक हो, tail -1तो अंतिम परिणाम प्राप्त करने के लिए बस एक जोड़ें ।
पैट्रिक मेवज़ेक

@PatrickMevzek जैसा कि मैंने अपनी टिप्पणी में कहा था, मैंने उपयोग किया dig +short SOA www.pressero.com। यह केवल CNAME लक्ष्य देता है - pressero.comडोमेन के लिए SOA रिकॉर्ड नहीं , जो कि मुझसे अपेक्षित है। tail -1मामलों में मदद नहीं करता है; dig +short SOAकेवल एक पंक्ति का उत्सर्जन कर रहा है।
रोस प्रेसर

40

* निक्स पर:

$ dig -t ns <domain name>

3
उन्होंने नाम सर्वरों के लिए कहा, IPv4 पते के लिए नहीं। तो टाइप (-t) NS होना चाहिए, न कि A.
bortzmeyer

1
SOA @bortzmeyer क्यों नहीं टाइप करें?
रैंडी एल

उह, क्योंकि वह NS परिणाम के बजाय SOA लौटाता है?
त्रिकाल

17

मेरे पास एक डीएनएस प्रचार उपकरण है जो इस तरह के सवालों के जवाब देने के लिए डिज़ाइन किया गया है।

स्रोत AGPLv3 के तहत जारी किया गया है।

(हाँ, इंटरफ़ेस फिलहाल बुनियादी है :))

आप "होस्ट" कमांड वाले डोमेन के लिए नेमसर्वर का भी पता लगा सकते हैं:

[davidp @ supernova: ~] $ host -t ns stackoverflow.com
stackoverflow.com नाम सर्वर ns51.domaincontrol.com।
stackoverflow.com नाम सर्वर ns52.domaincontrol.com।

@ काचो यह सच है; मैं अच्छी तरह से जोड़ सकता हूं, अगर मुझे मौका मिले।
डेविड कीमती

1
यह टूट गया है, यह दिखाता है "502 खराब गेटवे nginx / 1.14.2"
मार्को डेमायो

8

मैंने पाया कि इसे हमेशा + ट्रेस विकल्प जोड़ने का सबसे अच्छा तरीका:

dig SOA +trace stackoverflow.com

यह विभिन्न प्रदाता में होस्ट किए गए पुनरावर्ती CNAME के ​​साथ भी काम करता है। + ट्रेस ट्रेस + और न ही इसलिए ट्रेस ताकि परिणाम सिर्फ आपके द्वारा निर्दिष्ट डोमेन के लिए है।


ध्यान दें कि यदि आप dnsmasq + ट्रेस की तरह एक स्थानीय NS सर्वर चला रहे हैं तो कुछ भी वापस नहीं आएगा ...
डैनियल

यह कमांड 53 लाइनों, 3652 बाइट्स आउटपुट प्रदान करता है, जिनमें से अधिकांश यादृच्छिक मान है। किसी को आधिकारिक नाम सर्वर क्या है यह निर्धारित करने के लिए आउटपुट की व्याख्या कैसे करनी चाहिए?
theferrit32

मैंने इसे नीचे से ऊपर तक पढ़ा। SOA रिकॉर्ड वह है जिसे आप खोजते हैं। आप SOA के लिए कम डेटा प्राप्त कर सकते हैं।
एलेक्स

6

शब्द जिसे आपको गूगुलिंग होना चाहिए, वह "आधिकारिक" है, "निश्चित" नहीं है।

लिनक्स या मैक पर आप आदेशों का उपयोग कर सकते हैं whois, dig, host, nslookupया कई अन्य शामिल हैं। nslookupविंडोज पर भी काम कर सकते हैं।

एक उदाहरण:

$ whois stackoverflow.com
[...]
   Domain servers in listed order:
      NS51.DOMAINCONTROL.COM
      NS52.DOMAINCONTROL.COM

अतिरिक्त क्रेडिट के लिए: हाँ, यह संभव है।


आर्यह निश्चित रूप से गलत है, क्योंकि उनका सुझाव आमतौर पर केवल होस्टनाम के लिए आपको आईपी पता देगा। यदि आप उपयोग करते हैं dig, तो आपको एनएस के रिकॉर्ड देखने होंगे, जैसे:

dig ns stackoverflow.com

ध्यान रखें कि यह आपके स्थानीय DNS सर्वर से पूछ सकता है और इस प्रकार गलत या आउट-ऑफ-डेट उत्तर दे सकता है जो उसके कैश में है।


6
ये आदेश समतुल्य नहीं हैं । कुछ नहीं कहते हैं कि जो जानकारी दी गई है, वह अप टू डेट है। अक्सर, ऐसा इसलिए नहीं है क्योंकि लोग ज़ोन फ़ाइल में रजिस्ट्री या रजिस्ट्रार को सूचित किए बिना एनएस रिकॉर्ड को अपडेट करते हैं।
बोर्ट्जमेयर

मैंने कभी नहीं कहा कि वे थे;) आप अपने इच्छित क्षेत्र में एनएस रिकॉर्ड बदल सकते हैं, जब तक कि मूल क्षेत्र अपडेट नहीं किया जाता है, तब तक कुछ भी नहीं बदलेगा। और पैरेंट ज़ोन का एक अपडेट आमतौर पर व्हिसिस डेटा (कम से कम मेरे प्रदाताओं के साथ) के अपडेट के साथ हाथ में जाता है।

5

हमने एक डीएनएस लुकअप टूल बनाया है जो आपको डोमेन के ऑथरिटिव नेमसर्वर और उसके सामान्य डीएनएस रिकॉर्ड एक ही अनुरोध में देता है।

उदाहरण: https://www.misk.com/tools/#dns/stackoverflow.com

हमारे टूल को ऑथोराइज़र नेमवेर्स मिलते हैं, जो रूट नेमवेर्स पर एक realtime (अनकैप्ड) डीएनएस लुकअप करते हैं और फिर नेमवेरिफेरल रेफ़रल का अनुसरण करते हैं, जब तक कि हम ऑथराइज़र नेमवेर्सर्स तक नहीं पहुँचते। यह वही तर्क है जो डीएनएस रिसॉल्वर को आधिकारिक जवाब प्राप्त करने के लिए उपयोग करता है। प्रत्येक क्वेरी पर एक यादृच्छिक आधिकारिक नामवर चुना जाता है (और पहचाना जाता है) जिससे आप कई अनुरोधों को करके परस्पर विरोधी डीएनएस रिकॉर्ड पा सकते हैं।

ऊपर दिए गए उदाहरण से dns लुकअप परिणामों के निचले भाग में "आधिकारिक नामकरण" पर क्लिक करके आप नेमसर्वर प्रतिनिधिमंडल पथ भी देख सकते हैं।

उदाहरण: https://www.misk.com/tools/#dns/stackoverflow.com@f.root-servers.net


2

आप Whois सेवा का उपयोग कर सकते हैं। ऑपरेटिंग सिस्टम जैसे UNIX पर आप निम्न कमांड निष्पादित करेंगे। वैकल्पिक रूप से आप इसे वेब पर http://www.internic.net/whois.html पर कर सकते हैं ।

whois stackoverflow.com

आपको निम्न प्रतिक्रिया मिलेगी।

... यहां पाठ हटाया गया ...

डोमेन सर्वर सूचीबद्ध क्रम में: NS51.DOMAINCONTROL.COM NS52.DOMAINCONTROL.COM

आप दिए गए डोमेन के रिकॉर्ड के बारे में अधिक जानकारी प्राप्त करने के लिए nslookup या खुदाई का उपयोग कर सकते हैं। यह आपके द्वारा वर्णित संघर्षों को हल करने में आपकी मदद कर सकता है।


2
कुछ नहीं कहते हैं कि जो जानकारी दी गई है, वह अप टू डेट है। अक्सर, ऐसा इसलिए नहीं है क्योंकि लोग ज़ोन फ़ाइल में रजिस्ट्री या रजिस्ट्रार को सूचित किए बिना एनएस रिकॉर्ड को अपडेट करते हैं।
bortzmeyer

हालांकि इस सवाल का सीधा जवाब नहीं है, "जो" उपयोगी है क्योंकि यह आपको बताता है कि जो लोग कहीं के लिए नाम सर्वर बनने वाले हैं (भले ही जो भी कारण वे वर्तमान में नहीं हैं)।
व्यक्ति

1

दुर्भाग्य से, इनमें से अधिकांश उपकरण केवल वास्तविक नाम सर्वर द्वारा प्रदान किए गए अनुसार एनएस रिकॉर्ड वापस करते हैं। यह निर्धारित करने में अधिक सटीक होने के लिए कि कौन सा नाम सर्वर वास्तव में एक डोमेन के लिए जिम्मेदार है, आपको या तो "हूइस" का उपयोग करना होगा और वहां सूचीबद्ध डोमेन की जांच करनी होगी या "डिग [डोमेन] एनएस @ [रूट नाम सर्वर] का उपयोग करना होगा और इसे चलाना होगा नाम सर्वर लिस्टिंग प्राप्त होने तक पुनरावर्ती रूप से ...

काश, एक साधारण कमांड लाइन होती जो आप THAT परिणाम को भरोसेमंद रूप से और एक सुसंगत प्रारूप में प्राप्त करने के लिए चला सकते हैं, न कि केवल उस परिणाम से जो नाम सर्वर से दिया गया है। मेरे लिए इसका उद्देश्य लगभग 330 डोमेन नामों को क्वेरी करने में सक्षम होना है जो मैं प्रबंधित करता हूं इसलिए मैं यह निर्धारित कर सकता हूं कि प्रत्येक डोमेन किस नाम सर्वर की ओर इशारा कर रहा है (उनकी रजिस्ट्रार सेटिंग्स के अनुसार)।

किसी को भी "डिक्स" या "होस्ट" या कुछ और का उपयोग करके कमांड का पता है * निक्स?


2
सरल। मान लेते हैं कि डोमेन example.org है। सबसे पहले, आपको ".org + लघु NS org 'के साथ" .org "के नाम सर्वर को खोजने की आवश्यकता है। फिर आप उनमें से किसी एक को क्वेरी करते हैं (कोई भी, वे सभी आधिकारिक हैं)। चलो d0.org.afilias-nst.org चुनें। आपने 'dig @ d0.org.afilias-nst.org NS example.org' के साथ क्वेरी की। '
bortzmeyer

तथ्य यह है कि रिज़ॉल्वर वापस आता है, डिफ़ॉल्ट रूप से, डोमेन द्वारा सूचीबद्ध नाम सर्वर एक अच्छी बात है। यह आधिकारिक जानकारी है। पैरेंट ज़ोन में प्रतिनिधिमंडल आधिकारिक नहीं है।
bortzmeyer

और ह्विस को सूचक एक लाल हेरिंग है। सर्वर नाम की जानकारी अक्सर बासी होती है। आधिकारिक संसाधन DNS है।
ट्रिपलआई

1
जो पूरी तरह से मनमाना है। मूल्य जो आप देख रहे हैं कि लिस्टिंग में DNS का कोई तकनीकी संबंध नहीं है। यह अक्सर पुराना या सही गलत है। मैं कहूँगा कि जहाँ तक डेटा पर भरोसा नहीं किया जाना चाहिए, वहां तक ​​जाता है। 'पतली' और 'मोटी' रजिस्ट्रियां हैं। दो प्रसिद्ध मोटी रजिस्ट्रियां .com और .net रजिस्ट्रियां हैं। इन रजिस्ट्रियों में सभी डीएनएस डेटा होते हैं और जिन पर प्रतिक्रिया दी जा सकती है उन पर भरोसा किया जा सकता है। लगभग अन्य अन्य रजिस्ट्रियां 'चीज' हैं और अपने स्वयं के Whois रजिस्ट्रियों को चलाते हैं। यह डेटा अक्सर गलत है।
मार्क

1

SOA रिकॉर्ड पदानुक्रम को आगे बढ़ाते हुए सभी सर्वरों पर मौजूद होते हैं, जिस पर डोमेन स्वामी का कोई नियंत्रण नहीं होता है, और वे सभी प्रभावी रूप से डोमेन स्वामी के नियंत्रण में एक आधिकारिक नाम सर्वर को इंगित करते हैं।

आधिकारिक सर्वर पर SOA रिकॉर्ड स्वयं है, दूसरी ओर, उस डोमेन को हल करने के लिए कड़ाई से आवश्यक नहीं है, और इसमें फर्जी जानकारी (या छिपे हुए प्राथमिक, या अन्यथा प्रतिबंधित सर्वर) हो सकते हैं और आधिकारिक नाम सर्वर को निर्धारित करने के लिए इस पर भरोसा नहीं किया जाना चाहिए। किसी दिए गए डोमेन के लिए।

आपको उस सर्वर की क्वेरी करनी होगी जो किसी दिए गए चाइल्ड डोमेन के लिए विश्वसनीय SOA जानकारी प्राप्त करने के लिए शीर्ष स्तर डोमेन के लिए आधिकारिक है ।

(किस सर्वर के बारे में जानकारी आधिकारिक है जिसके लिए TLD को रूट नाम सर्वर से क्वेर किया जा सकता है)।

जब आपके पास TLD आधिकारिक सर्वर से SOA के बारे में विश्वसनीय जानकारी होती है, तो आप किसी भी अन्य NS रिकॉर्ड के लिए प्राथमिक नाम सर्वर को आधिकारिक (gTLD नेमसेर पर SOA रिकॉर्ड में एक thats) क्वेरी कर सकते हैं, और फिर सभी की जाँच करके आगे बढ़ें! उन नाम सर्वरों को आपने एनएस रिकॉर्ड्स को क्वेरी करने से प्राप्त किया है, यह देखने के लिए कि क्या उन सर्वरों पर किसी अन्य विशेष रिकॉर्ड के लिए कोई असंगतता है।

यह सभी लिनक्स के साथ और nslookup / खिड़कियों की तुलना में खुदाई के साथ बेहतर / विश्वसनीय काम करता है।


0

ऑनलाइन डोमेन टूल का उपयोग करने का एक आसान तरीका है। मेरा पसंदीदा डोमेन टूल (पूर्व में whois.sc) है। मुझे यकीन नहीं है कि वे परस्पर विरोधी DNS रिकॉर्ड को हल कर सकते हैं, हालांकि। एक उदाहरण के रूप में, stackoverflow.com के लिए DNS सर्वर हैं

  NS51.DOMAINCONTROL.COM
  NS52.DOMAINCONTROL.COM

0

मैंने पाया है कि कुछ डोमेन के लिए, उपरोक्त उत्तर काम नहीं करते हैं। सबसे तेज़ तरीका जो मैंने पाया है, वह है एनएस रिकॉर्ड के लिए पहली जाँच। यदि वह मौजूद नहीं है, तो SOA रिकॉर्ड की जांच करें। यदि वह मौजूद नहीं है, तो खुदाई का उपयोग करके नाम को फिर से हल करें और पिछले एनएस रिकॉर्ड को वापस ले लें। एक उदाहरण जो इस पर फिट बैठता हैanalyticsdcs.ccs.mcafee.com.

  1. एक NS रिकॉर्ड के लिए जाँच करें

host -t NS analyticsdcs.ccs.mcafee.com.

  1. यदि कोई NS नहीं मिला, तो SOA रिकॉर्ड की जांच करें

host -t SOA analyticsdcs.ccs.mcafee.com.

  1. यदि न तो NS या SOA, पूर्ण पुनरावर्ती करें और अंतिम NS वापस ले लें

dig +trace analyticsdcs.ccs.mcafee.com. | grep -w 'IN[[:space:]]*NS' | tail -1

  1. परीक्षण करें कि नाम सर्वर ने काम किया है

host analyticsdcs.ccs.mcafee.com. gtm2.mcafee.com.

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.