हमारे DNS रिकॉर्ड इंटरनेट में प्रचार क्यों नहीं कर रहे हैं?


22

हम अपने नेटवर्क पर अपने डोमेन के लिए नाम सर्वर चलाते हैं। हम बाइंड / नाम का उपयोग करते हैं। डोमेन example.com पर कॉल करें । एक बात जो मैंने हाल ही में देखी है, जब मुझे http://network-tools.com जैसी एक वेबसाइट मिली और हमारे नाम सर्वर पर परिभाषित URL पर प्रश्न चलाए, तो मुझे तुरंत बदलाव दिखाई दे रहे हैं।

उदाहरण के लिए, यदि मैं url funny.example.com के लिए हमारे DNS सर्वर में प्रवेश करता हूं और फिर http://network-tools.com पर उस url को देखता हूं, तो मुझे इसके लिए सूचीबद्ध उचित बाहरी स्थिर IP दिखाई देता है।

यह मुझे बता रहा है कि example.com से संबंधित कोई भी DNS अनुरोध हर बार सीधे हमारे DNS सर्वर पर आ रहे हैं।

सप्ताह में पहले ही मेरे संदेह की पुष्टि हो गई थी जब हमारे DNS सर्वर बहुत कम अवधि के लिए चले गए थे। और उस समय की अवधि के दौरान, अगर मैंने http://network-tools.com का उपयोग example.com या इसके किसी भी उप डोमेन के क्वेरी के लिए किया, तो मुझे शून्य परिणाम प्राप्त होंगे। जाहिर है इसका कारण यह है कि DNS सर्वर डाउन थे और उन तक पहुंचा नहीं जा सका।

तो यह मुझे मेरे सवाल पर लाता है। मुझे लगा कि हमारे DNS सर्वरों में होने वाले बदलावों को इंटरनेट पर अन्य DNS सर्वरों के लिए प्रचारित किया जाना चाहिए। इस तरह, यदि हमारा DNS अस्थायी रूप से नीचे चला जाता है, तो इंटरनेट पर मौजूद अन्य सर्वर अभी भी जानते हैं कि आईपी एड्रेस example.com क्या इंगित करता है।

क्या मैं इस डीएनएस सामान को गलत समझ रहा हूं? क्या हमारे जैसे 3 पार्टी नियंत्रित डीएनएस सर्वरों को नेट पर अन्य सर्वरों को डीएनएस जानकारी का प्रचार करने की अनुमति नहीं है?

मुझे इस बात की जांच शुरू करनी चाहिए कि बदलाव वहां क्यों नहीं हो रहे हैं? मैं अपने फ़ायरवॉल पर देख सकता हूं कि 53 ट्रैफ़िक पोर्ट हमारे DNS सर्वरों के लिए ठीक से बना रहे हैं।

अद्यतन करें

  1. मुझे पता है कि आप लोग कह रहे हैं कि आपकी DNS सेटिंग्स को तुरंत प्रकाशित करना असंभव है, लेकिन मुझे पता है कि यह है: यदि मैं हमारे DNS सर्वर (ओं) पर DNS परिवर्तन करता हूं और फिर तुरंत http: // नेटवर्क-टूल्स पर इसकी जांच करता हूं । com , मैं तुरंत बदलाव देखता हूं।

  2. यदि मैं हमारे DNS सर्वरों को बंद कर देता हूं और फिर मैं http://network-tools.com का उपयोग करके किसी भी URL की जांच करने का प्रयास करता हूं , तो साइट को कोई भी URL नहीं मिल सकता है। लेकिन अगर मैं डीएनएस सर्वरों को ऑनलाइन वापस लाता हूं, तो अचानक http://network-tools.com सभी यूआरएल को फिर से पा सकते हैं ... यह बताता है कि सर्वर हमारी डीएनएस सेटिंग्स को कैच नहीं कर रहे हैं। क्या मै गलत हु? इसके अलावा, हमारी टीटीएल सेटिंग्स इस समय 900 (15 मिनट) पर सेट हैं और हमारे DNS सर्वर एक साल से अधिक समय से चल रहे हैं। इसलिए इसका डीएनएस सर्वर इंटरनेट पर नहीं है लेकिन अभी तक इसे कैश करने का मौका नहीं मिला है। क्या कारण सर्वर सेटिंग्स को कैशिंग नहीं कर रहे हैं क्योंकि टीटीएल इस समय इतना कम है? अगर यह कारण है कि थोड़े समझ में आता है।


7
चूँकि jokerville.com वास्तविक पंजीकृत डोमेन नाम है, जब तक कि वास्तव में आपका डोमेन नहीं है, कृपया example.comइसके बजाय का उपयोग करें - यह आधिकारिक रूप से उस उद्देश्य के लिए आरक्षित है।
15

9
कारण यह है कि network-tools.com तुरंत बदलाव देख रहा है कि यह एक नेटवर्क टूल है, और DELIBERATELY नहीं है। यह आपके नेमसर्वर को देखने का एक उपकरण है, सामान्य DNS क्लाइंट नहीं, इसलिए यह विभिन्न नियमों का पालन करता है।
माइकल कोहेन

जवाबों:


42

हां, आप गलत समझ रहे हैं कि DNS कैसे काम करता है। मैं यहाँ कुछ जोर का उपयोग करने जा रहा हूँ, लेकिन कृपया नाराज न हों क्योंकि कोई भी इरादा नहीं है।

DNS रिकॉर्ड्स प्रॉपर नहीं हैं। वे कर रहे हैं।

कहा जा रहा है, यहाँ क्या होता है की एक सरलीकृत व्याख्या है:

  1. आप एक नया DNS रिकॉर्ड (A, CNAME, आदि) बनाएं

  2. एक दूरस्थ उपयोगकर्ता (अधिक विशेष रूप से उपयोगकर्ता द्वारा शुरू की गई एक प्रक्रिया \ अनुप्रयोग) उस DNS रिकॉर्ड के माध्यम से एक्सेस की गई सेवा तक पहुंचने की कोशिश करता है (उदाहरण के लिए funny.example.com पर चलने वाली वेब साइट तक पहुंचने का प्रयास करने वाला एक वेब ब्राउज़र)

  3. DNS क्लाइंट, DNS सर्वर को DNS क्वेरी भेजता है, DNS सर्वर तब आपके नाम सर्वर (आमतौर पर पुनरावर्ती DNS प्रश्नों की एक श्रृंखला के माध्यम से) पाता है और उनसे funny.example.com के बारे में जानकारी मांगता है।

  4. आपके नाम सर्वर जवाब के साथ जवाब देते हैं

  5. उपयोगकर्ता DNS सर्वर तब उपयोगकर्ता को यह जानकारी भेजता है (विशेष रूप से उपयोगकर्ता DNS क्लाइंट रिज़ॉल्वर के लिए), जो बदले में प्रक्रिया \ अनुप्रयोग को जानकारी लौटाता है। यह जानकारी जिसे टीटीएल (टाइम टू लाइव) कहा जाता है, जो DNS क्लाइंट को यह बताता है कि यह जानकारी कितनी देर तक डीएनएस कैश (मेमोरी में) में रखी जा सकती है और कितनी देर तक सूचना को चालू और सटीक माना जा सकता है

  6. उपयोगकर्ता का DNS क्लाइंट रिज़ॉल्वर तब TTL की समय सीमा समाप्त होने पर इस सूचना को फ़्लश करता है। DNS रिकॉर्ड के लिए किसी भी नए अनुरोध के लिए नए DNS लुकअप और उपरोक्त प्रक्रिया को दोहराने की आवश्यकता होती है।

तो यह लंबा और छोटा है:

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

यदि आपके नाम सर्वर नीचे हैं, तो केवल उन DNS क्लाइंट्स के पास जिनके कैश में आपका कोई DNS रिकॉर्ड है, वे उन DNS रिकॉर्ड्स को हल करने में सक्षम होंगे और केवल तब तक जब तक कि TTL समाप्त नहीं हो जाता। इसके अलावा, जब TTL समाप्त हो जाता है (एक नए DNS lokkup को neccessitating) जो DNS क्लाइंट अब आपके DNS रिकॉर्ड्स को हल करने में सक्षम नहीं होंगे।


अच्छी व्याख्या और मैं एक प्रोटोकॉल का उदाहरण जोड़ सकता हूं जहां प्रचार (डीएनएस के विपरीत): बीजीपी है।
बोर्ट्ज़मेयर

11

यह एक बड़ा सौदा करने में मदद करेगा यदि आपने हमें अपना वास्तविक डोमेन नाम बताया है, तो हम आपके प्रश्न का उत्तर आपके वास्तविक सेटअप के संदर्भ में दे सकते हैं, और किसी भी दोष को इंगित कर सकते हैं।

मैं DNS समस्याओं के शीघ्रता से निदान के लिए http://dns.squish.net/ पर भरोसा करता हूं । यह निश्चित रूप से आपको बताएगा कि आपके परिवर्तन के बाद आपके मुद्दे कहां झूठ हैं - मूल रूप से अगर अपस्ट्रीम से आपका प्रतिनिधिमंडल सही है, और आपके 2-3 नाम सर्वर सभी एक ही जवाब देते हैं, और कोई नया रिकॉर्ड नहीं देख रहा है, उन्हें परिवर्तनों को देखने के लिए अपने स्थानीय नेटवर्क की प्रतीक्षा करनी होगी। यदि वह चेकर आपको बताता है कि आपका कोई सर्वर दूसरों की तरह प्रतिक्रिया नहीं दे रहा है, तो आपको उस समस्या को ठीक करने की आवश्यकता है।

कोई भी तरीका नहीं है कि आप DNS परिवर्तनों को तुरंत प्रकाशित कर सकते हैं - ठीक है, आप उन्हें तुरंत प्रकाशित कर सकते हैं, लेकिन बाकी दुनिया प्रत्येक रिकॉर्ड के टीटीएल सेटिंग के अनुसार पिछड़ जाएगी, इसलिए यदि आपने 86400 सेकंड का टीटीएल रिकॉर्ड सेट किया है ( एक दिन) और आप एक बदलाव करते हैं, दूसरों को पूरे दिन के लिए पुराना रिकॉर्ड दिखाई देगा, क्योंकि उनका स्थानीय कैश आपसे तब तक नहीं पूछेगा जब तक कि रिकॉर्ड की उनकी प्रति समाप्त नहीं हो जाती।

मेरा सुझाव है कि किसी भी बड़े डीएनएस परिवर्तन से पहले आप अपने टीटीएल को 600 (10 मिनट) तक कम कर दें ताकि इंटरनेट के आसपास कैश को प्रोत्साहित करने के लिए बहुत लंबे समय तक पुराने रिकॉर्डों पर पकड़ न हो सके। लेकिन कुछ कैश इसे अनदेखा करेंगे, या 1 दिन, या 1 सप्ताह भी मान सकते हैं।

एक जुझारू सवाल का जवाब, उम्मीद है कि इसमें कुछ उपयोगी था।


1
+1। बस स्पष्ट होने के लिए, केवल उन DNS क्लाइंट्स जिनके पास पहले से ही उनके कैश में जानकारी है, जिनके लिए TTL की समय सीमा समाप्त नहीं हुई है, एक परिवर्तन से प्रभावित होंगे। कोई भी नया अनुरोध, जिसके लिए उनका कोई डेटा कैश में नहीं है, तुरंत हल हो जाएगा।
जोवेवर्टी


8

हां पुरानी कहावत, "DNS परिवर्तन इंटरनेट के माध्यम से प्रचारित करने में 24-48 घंटे लग सकते हैं" अधिक सटीक रूप से होगा "पिछले 86400 सेकंड के भीतर इस रिकॉर्ड को समाप्त करने वाले किसी भी DNS सर्वर पर DNS परिवर्तनों को कैश किया जा सकता है।"

यदि आप अपने सर्वर के ऑफ़लाइन होने की स्थिति में अपने DNS की अतिरेक को सुनिश्चित करना चाहते हैं, तो आपको बैकअप DNS सेवा (जैसे dyndns.com पर) को देखना चाहिए या अपना स्वयं का द्वितीयक NS बनाना चाहिए।


5

इंटरनेट पर सभी DNS सर्वर "3rd पार्टी-नियंत्रित" हैं (मुझे लगता है कि आप रूट DNS सर्वर को इंटरनेट पर किसी तरह "स्वामित्व" मान सकते हैं, लेकिन कोई तकनीकी कारण नहीं है कि आप अपनी निजी जड़ को भी डाल सकते हैं, या तो)।

आपका DNS सर्वर सुझाए गए प्रत्येक उत्तर में "रहने का समय" (TTL) प्रदान करता है। दूरस्थ रिसॉल्वर (क्लाइंट के लिए पुनरावर्ती रिज़ॉल्यूशन प्रदर्शन करने वाले अन्य DNS सर्वर, क्लाइंट रिज़ॉल्वर लाइब्रेरी आदि) को उनके कैश से इसे त्यागने से पहले उस टीटीएल के लिए उत्तर को कैश करना चाहिए

यदि आप उन परिवर्तनों को नहीं देख रहे हैं जो आप मौजूदा रिकॉर्ड्स को वास्तविक दुनिया के प्रश्नों में परिलक्षित कर रहे हैं तो इसका मतलब है कि आपके टीटीएल मूल्य काफी अधिक हैं, जो कि आप लंबे समय से प्रतीक्षा नहीं कर रहे हैं, ताकि मौजूदा उत्तर आयु को रिज़ॉल्वर से बाहर देखा जा सके। 'नेट के आसपास कैश।

सर्वर फाल्ट से कुछ पृष्ठभूमि: इसे DNS "प्रचार" क्यों कहा जाता है?


2

जब कोई व्यक्ति (या कुछ कंप्यूटर) इंटरनेट पर वहां से बाहर निकलता है, तो बोलने के लिए, आपकी एक मशीन से जुड़ना चाहते हैं, वे अपने स्थानीय नेमसर्वर से पूछते हैं कि वे जिस आईपीएन में रुचि रखते हैं, उससे मेल खाते आईपी एड्रेस के लिए।

इसलिए यदि आप किसी को "अरे, मेरी शांत वेबसाइट http://www.example.com " पर एक नज़र डालते हैं , तो दूसरे आदमी का कंप्यूटर उसके स्थानीय नामवर से पूछेगा "अरे, www.example.com के लिए आईपी एड्रेस क्या है?"

मान लें कि स्थानीय नेमसर्वर ने उस प्रश्न के उत्तर को पहले कभी नहीं देखा है, तो वह रूट नेमसर्वर से यह पता लगाने के लिए कहेगा कि कौन से सर्वर ".com" के लिए लुकअप सर्वर को हैंडल करते हैं। जब उसे यह उत्तर मिल जाता है, तो यह उन सर्वरों से पूछेगा जो सर्वर "example.com" के लिए लुकअप संभालते हैं। जब उसे वह उत्तर मिल जाता है, अगर वह उन सर्वरों से "www.example.com" के आईपी पते के लिए पूछेगा।

जब example.com के लिए सर्वर (सर्वर) www.example.com के लिए एक IP पते के साथ प्रतिक्रिया करते हैं, तो वे अनुरोध करने वाले नेमसेवर को एक संकेत देंगे कि इस प्रश्न का उत्तर कितने समय तक याद रखना चाहिए। उस संकेत को "टीटीएल", या "जीने का समय" कहा जाता है, और इसे सेकंड में मापा जाता है। इस बात की कोई गारंटी नहीं है कि कोई भी सर्वर TTL पर कोई ध्यान देगा - कुछ नेमसर्वर को लुकअप के उत्तरों को याद रखने के लिए कभी भी कॉन्फ़िगर नहीं किया जा सकता है, और हमेशा प्रति सेकंड कई बार पूछे जाने पर भी प्रक्रिया को दोहराएगा। अन्य नेमसर्वर को उत्तर को लंबे समय तक रखने के लिए कॉन्फ़िगर किया जा सकता है, भले ही आपने सुझाव दिया हो कि डेटा को केवल थोड़े समय के लिए रखा जाए, शायद इसलिए कि वे नेटवर्क ट्रैफ़िक को कम करना चाहते हैं। टीटीएल सिर्फ एक सुझाव है, आवश्यकता या गारंटी नहीं।

आपके प्रश्न का शाब्दिक उत्तर - आपके DNS रिकॉर्ड इंटरनेट पर प्रचार क्यों नहीं कर रहे हैं - क्या वे ऐसा नहीं कर रहे हैं क्योंकि वे करने वाले नहीं हैं।

इसके अलावा, यदि आप अपनी स्वयं की DNS जानकारी का उपयोग किसी ऐसी साइट का उपयोग करने के लिए कर रहे हैं जो डीएनएस जानकारी पर शोध या डिबग करने के लिए डिज़ाइन की गई है, तो संभावना है कि वह साइट लंबे समय के लिए या आपके टीटीएल के सुझाव के बिना, डेटा को कैश करने के लिए नहीं जा रही है, क्योंकि साइट का लक्ष्य संभवतः DNS प्रणाली के बारे में जानकारी प्रदान करने के लिए है जो अभी कहता है, 5 या 50 या 500 सेकंड पहले नहीं। यही कारण है कि आपके परिवर्तन तुरंत परिलक्षित होते हैं, और जैसे ही आप अपने नेमसर्वरों को डिस्कनेक्ट करते हैं, सेवा क्यों बंद हो जाती है।

मुझे संदेह है कि आपके अंतर्निहित प्रश्न "मैं कैसे चीजें सेट कर सकता हूं ताकि यदि मेरा DNS सर्वर रिबूट हो जाए या इसकी हार्ड डिस्क मर जाए, तो इंटरनेट पर अन्य लोग अभी भी मेरे वेबपेजों को देख पाएंगे?"

उस प्रश्न का उत्तर आपके डोमेन के लिए कई नेमसर्वर सेट करना है, और उन्हें विभिन्न मशीनों पर चलाना है - आदर्श रूप से, न केवल विभिन्न भौतिक कंप्यूटर, बल्कि विभिन्न नेटवर्क कनेक्शन के साथ, शायद विभिन्न शहरों या राज्यों या देशों या महाद्वीपों में भी। इनमें से अधिकांश नेमसर्वर्स को "दास" के रूप में स्थापित किया जाएगा, जिसका अर्थ है कि वे अपनी जानकारी के लिए एक "मास्टर" नाम देने वाले को देखते हैं, और फिर उस जानकारी को किसी से भी दोहराते हैं जो उनसे डेटा मांगता है।

तो, अपने डोमेन नाम रजिस्ट्रार के साथ अपने WHOIS डेटा में, आप अपने डोमेन के लिए चार नेमवॉयर को कॉन्फ़िगर कर सकते हैं:

ns1.example.com ns2.example.com ns1.otherguy.com ns2.otherguy.com

जहाँ ns1.example.com आपका वर्तमान DNS सर्वर है। ns2.example.com आपकी कंपनी / संगठन में एक और मशीन हो सकती है - आदर्श रूप में एक ही सबनेट पर और एक ही सर्वर रैक में (या उसी लड़के के डेस्क के नीचे) के रूप में ns1.example.com नहीं हो सकती है।

ns1.example.com को "मास्टर" सर्वर माना जाएगा, और जब आप अपना DNS बदलना चाहते हैं, तो आप उस मशीन में अपने बदलाव करेंगे।

ns2.example.com को "दास" सर्वर के रूप में कॉन्फ़िगर किया जाएगा, जो आपके द्वारा ns1.example.com पर जो भी डेटा सेट किया गया है, उसे कॉपी करता है - लेकिन बाहरी दुनिया मास्टर / दास भेद, ns2 .example के बारे में परवाह नहीं करती है .com को केवल "आधिकारिक" के रूप में ns1.example.com माना जाएगा।

ns1। या everydns.net या अन्य मुक्त या वाणिज्यिक DNS प्रदाताओं में से कोई भी। हालाँकि आप काम करते हैं, आप उन मशीनों को दास के रूप में कॉन्फ़िगर करते हैं, ताकि वे ns1.example.com (अपने "मास्टर") से example.com के लिए DNS जानकारी खींच लें, और वे उस DNS जानकारी को किसी भी मशीन पर काम करेंगे इंटरनेट जो इसके लिए पूछता है।

एक बार जब आपका डोमेन रजिस्ट्रार आपके डोमेन के लिए नया NS रिकॉर्ड प्रकाशित करता है (जो लगभग तुरंत होना चाहिए), तो जब इंटरनेट पर कोई व्यक्ति पूछता है कि कौन सा डोमेन नाम "example.com" हैंडल करता है, तो उन्हें चार उत्तर मिलेंगे -

ns1.example.com, ns2.example.com, ns1.otherguy.com, ns2.exguy.com

इस बात पर निर्भर करता है कि दूसरे व्यक्ति का नाम कैसे सेट किया गया है, यह उन चार लोगों को एक सूची के रूप में मान सकता है और उनसे एक बार में पूछ सकता है कि "www.example.com" तक कैसे पहुंचा जाए - या यह उन चारों से एक ही सवाल पूछ सकता है। उसी समय, और बस जो भी मशीन उत्तर पहले से उत्तर ले। किसी भी तरह से, अगर ns1.example.com नीचे है क्योंकि हार्ड डिस्क की मृत्यु हो गई है या आपने रिबूट करने का फैसला किया है या जो भी हो, तो प्रश्न का उत्तर देने के लिए अन्य 3 मशीनें उपलब्ध होंगी, और आपकी वेबसाइट दिखाई देती रहेगी।

इस समस्या को हल करने का सबसे आसान तरीका एक DNS सेवा प्रदाता के साथ साइन अप करना है जो आपके डोमेन के लिए DNS को संभालेगा - इस रेंज की कीमत प्रति माह मुफ्त में हजारों (संभवतः दसियों या सैकड़ों हजारों) तक होती है, यह निर्भर करता है सेवा का स्तर जो आप चाहते हैं। आप $ 30 / yr या तो के लिए यथोचित विश्वसनीय सेवा प्राप्त कर सकते हैं। नि: शुल्क सेवाएं भयानक नहीं हैं और इसलिए, एक अच्छा बैंग-फॉर-द-हिरन अनुपात है, लेकिन यदि आप पैसे बनाने के लिए अपनी वेबसाइट पर निर्भर हैं, तो आप एक वर्ष के DNS के लिए $ 30 के साथ आ सकते हैं। ।

फिर, अपने डोमेन नाम रजिस्ट्रार में NS रिकॉर्ड बदलने के लिए DNS सेवा प्रदाता के निर्देशों का पालन करें, और आप सभी सेट हो जाएंगे।


0

अन्य DNS सर्वर द्वारा किया गया कैचिंग रिकॉर्ड करने के लिए असाइन किए गए TTL पर निर्भर करता है। आपके मामले में TTL बहुत कम या उच्च हो सकता है। क्या आप हमें अपने DNS कॉन्फ़िगरेशन के बारे में अधिक जानकारी दे सकते हैं?

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