DNS नेमसर्वर कैसे वापस काम करता है?


14

हमारे पास हमारे एनएस रिकॉर्ड में सूचीबद्ध दो डीएनएस सर्वर हैं। कल रात, हमारा एक DNS सर्वर नीचे चला गया। जैसा कि अपेक्षित था, कुछ DNS सर्वर हमारे होस्टनाम का समाधान नहीं कर रहे थे। मैंने मान लिया कि यह अस्थायी होगा और हमारे एनएस रिकॉर्ड के टीटीएल (1 घंटे) समाप्त होने के बाद काम करना शुरू कर देगा।

एक घंटे + बाद में, मुझे अभी भी डेस्कटॉप से ​​DNS टाइमआउट मिल रहे थे जो अर्थलिंक, वेरिज़ोन और ओपनडएनएस सीवर का उपयोग कर रहे थे। मैंने यह देखने के लिए परीक्षण किया कि क्या अन्य DNS सर्वर जवाब दे रहा था:

dig @ns2.example.com www.example.com +short

यह काम किया।

मेरे सवाल:

  1. क्या किसी के पास इस बात का जवाब है कि TTL समाप्त होने के बाद भी अन्य DNS सर्वर हमारे अन्य DNS सर्वर को क्यों नहीं मार रहे हैं?
  2. क्या DNS सर्वर डोमेन के मुख्य DNS सर्वर ( SOAरिकॉर्ड से) को पसंद करते हैं ?
  3. क्या उपलब्ध एन एस रिकॉर्ड से एक नेमवेर लेने के लिए उपयोग किया जाने वाला कोई एल्गोरिदम है? मैं यह मान रहा हूं कि यह कार्यान्वयन विशिष्ट है लेकिन शायद कुछ मानक हैं जो यहां लागू होते हैं।

TTL का किसी चीज से कोई लेना-देना नहीं है। चूंकि कोई रिकॉर्ड नहीं बदला गया था, इसलिए इसका कोई प्रासंगिक प्रभाव नहीं है।
डेविड शवार्ट्ज

आह, अब मैं देख रहा हूँ। रवींद्र।
बेलमिन फर्नांडीज

जवाबों:


17

यह एक दुर्भाग्यपूर्ण जलन है। एकाधिक DNS सर्वरों को विश्वसनीयता बढ़ाने के लिए माना जाता है, लेकिन व्यवहार में अक्सर इसका उल्टा प्रभाव होता है।

समस्या यह है कि क्लाइंट केवल एक प्रतिक्रिया के लिए इतनी देर इंतजार करता है, और सर्वर उसी समय के बारे में इंतजार करता है। मान लें कि आपके पास दो DNS सर्वर हैं, A और B. Say A काम कर रहा है और B विफल हो गया है। ऐसा होता है:

  1. क्लाइंट नाम सर्वर Z से जोड़ता है और इसे जानकारी के लिए पूछता है। Z, B को चुनता है और एक क्वेरी भेजता है।

  2. क्लाइंट टाइम आउट क्योंकि नाम सर्वर Z ने प्रतिसाद नहीं दिया।

  3. क्लाइंट नाम सर्वर Y. Y की कोशिश करता है बी चुनता है और एक क्वेरी भेजता है।

  4. नाम सर्वर Z समय बाहर और ए की कोशिश करता है। यह सही जवाब हो जाता है, लेकिन ग्राहक कोई और इंतजार नहीं कर रहा है।

  5. क्लाइंट टाइम आउट क्योंकि नाम सर्वर Y ने प्रतिसाद नहीं दिया।

  6. क्लाइंट को छोड़ देता है, उसके दोनों नाम सर्वर जवाब देने में विफल रहते हैं।

  7. नाम सर्वर वाई बार बाहर और कोशिश करता है ए। यह सही जवाब मिलता है, लेकिन ग्राहक कोई और इंतजार नहीं कर रहा है।

और कोई अच्छा उपाय नहीं है। यदि आप एक नेमसर्वर का जवाब देखने के लिए अधिक समय तक प्रतीक्षा करते हैं, तो आपको प्रतीक्षा करने की आवश्यकता है क्योंकि नाम सर्वर जिसका आप स्वयं इंतजार कर रहे हैं वह अधिक समय तक प्रतीक्षा करता है। यकीनन, समस्या यह थी कि Y और Z ने B को पर्याप्त तेजी से नहीं छोड़ा था।

अनिवार्य रूप से, यदि आपका कोई भी नाम सर्वर बाहर है, तो कुछ ग्राहक किन्नर दुर्भाग्य से, टाइम आउट से, क्योंकि वे केवल बुरे लोगों की कोशिश करते हैं।

उज्ज्वल पक्ष पर, यदि आपके पास दो नेमसर्वर हैं और एक विफल रहता है, तो लगभग 75% नाम सर्वरों को 0% के बजाय एक उत्तर मिलेगा।


मुझे पता है तुम्हारा क्या मतलब है। EEK। तो क्लाइंट का नेमसर्वर ( Z) कैश नहीं करेगा कि यह किस नेमवेरर ने आखिरी बार काम किया है?
बेलमिन फर्नांडीज

1
कुछ नाम सर्वर ऐसा करते हैं और कभी-कभी मदद करते हैं। यह अक्सर सटीक तरीके पर निर्भर करता है जिसमें नेमसेवर विफल हो गया। आपको यह याद रखना होगा कि यह सब यूडीपी के शीर्ष पर है, इसलिए उत्तर प्राप्त करने में विफलता (यहां तक ​​कि एक रिट्रांसमिशन या दो के बाद भी) यह साबित नहीं करता है कि नाम के साथ कुछ भी गलत है।
डेविड श्वार्ट्ज

मैं DNS और BIND (पॉल एल्बिट्ज और क्रिकेट लुई, ओ'राल्ली p278) की अपनी प्रति में पढ़ता हूं कि बिंद 8.2.3 सर्वर अपने सर्वर को अग्रेषित करने वालों से त्वरित प्रतिक्रिया देने वाले सर्वर का चयन करता है, जिसका अर्थ है कि यदि सूची में सर्वर विफल रहता है, तो यह बहुत अधिक स्वचालित रूप से गिरा दिया जाता है। बाइंड 9 अभी तक इसे लागू नहीं करता है, यह सूची क्रम में आगे के सर्वरों पर सवाल उठाता है। क्या किसी को पता है कि यह बदल गया है?
Jaydee

बस स्पष्ट करने के लिए, DNS सेटअप में कम पारंगत लोगों के लिए (यह समझने में मुझे कुछ समय लगा) DNS नाम सर्वर Z और Y इस उदाहरण में क्लाइंट के नेटवर्क में आधारित पुनरावर्ती नाम सर्वर सबसे अधिक संभावना है, जैसे DNS सर्वर एक आईएसपी प्रदान करता है अपने ग्राहकों को डीएचसीपी के माध्यम से। और समस्या तब उत्पन्न होती है जब इन सर्वरों के पास क्लाइंट DNS रिज़ॉल्वर (जैसे डिवाइस ऑपरेटिंग सिस्टम) की तुलना में अधिक समय का मान होता है
जॉर्डन रीजर

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