Sumedh Nimkarde द्वारा
आप सभी ने डोमेन नेम सिस्टम (DNS) के बारे में सुना होगा या जानते होंगे यदि आप समझते हैं कि इंटरनेट कैसे काम करता है या कंप्यूटर नेटवर्क कैसे काम करते हैं। यदि आप DNS से परिचित नहीं हैं, तो मैं सिफारिश करूंगा कि आप यहां कंप्यूटर नेटवर्क पर केंद्रित मेरा पिछला ब्लॉग पोस्ट देखें।
अकेले होस्टनेम हमें यह नहीं बता सकते कि हम जिस विशेष मशीन/हार्डवेयर के साथ संवाद करने की कोशिश कर रहे हैं वह दुनिया में कहां स्थित है। इसलिए, सभी संचार IP एड्रेस के साथ किए जाते हैं।
डोमेन नेम सर्वर वे डिवाइस हैं जो होस्टनेम को उस मशीन/हार्डवेयर के IP एड्रेस पर मैप करते हैं जिस पर आपकी सेवाएं चल रही हैं।
इस पोस्ट में, मैं DNS क्वेरी के प्रकार, DNS सर्वर के प्रकार, और DNS रिकॉर्ड के प्रकार को विस्तार से समझाऊंगा।
DNS Resolver
DNS Resolvers वे कंप्यूटर हैं जिनका उपयोग Internet Service Providers (ISPs) द्वारा उपयोगकर्ता द्वारा अनुरोधित विशेष होस्टनेम के लिए अपने डेटाबेस में लुकअप करने के लिए किया जाता है। वे तब उस उपयोगकर्ता को मैप किए गए IP एड्रेस पर रीडायरेक्ट करते हैं। वे DNS Resolution में एक महत्वपूर्ण भूमिका निभाते हैं।
DNS Resolvers डेटा को कैश भी करते हैं। इसलिए उदाहरण के लिए, मेरी वेबसाइट example.com वर्तमान में IP एड्रेस 35.195.226.230 वाली मशीन पर होस्टेड है। तो, दुनिया भर के सभी DNS Resolvers के कैश में निम्नलिखित मैप किया गया है:
example.com -> 35.195.226.230
विचार करें, भविष्य में, यदि मैं अपनी वेबसाइट को दुनिया में किसी अन्य सर्वर पर IP 35.192.247.235 के साथ होस्ट करना चाहता हूं। दुनिया भर के सभी DNS Resolvers के DNS कैश में अभी भी कुछ समय के लिए पुराना IP एड्रेस होगा। यह DNS प्रोपेगेशन पूरी तरह से होने तक पारंपरिक साधनों के माध्यम से वेबसाइट की अनुपलब्धता का कारण बन सकता है।
DNS Resolver कैश में रिकॉर्ड कुछ समय के लिए रहता है, जिसे Time to Live (संक्षेप में TTL) कहा जाता है।
यह वह समय है जब एक रिकॉर्ड DNS Resolver में कैश किया जाता है। इसे उस रजिस्ट्रार के डैशबोर्ड से सेट किया जा सकता है जहां से आपने डोमेन खरीदा है।
नोट: अब से, मैं इस ब्लॉग पोस्ट में केवल DNS Resolver को Resolver के रूप में संदर्भित करूंगा।
DNS सर्वर के प्रकार
Root DNS Server
Root DNS सर्वर वे हैं जिनके पास सभी TLD डोमेन सर्वर के एड्रेस हैं। होस्टनेम से IP एड्रेस प्राप्त करने की अपनी यात्रा पर एक अनुरोध पहले Root DNS सर्वर का सामना करता है।
2016 तक दुनिया भर में 13 रूट डोमेन नेम सर्वर हैं। इसका मतलब यह नहीं है कि दुनिया भर से आने वाले अनुरोधों के लोड को संभालने वाली केवल 13 मशीनें हैं - ग्राउंड लेवल पर कई सर्वर लोड को संभाल रहे हैं।
विभिन्न संगठन Root DNS सर्वर का प्रबंधन करते हैं:
क्रेडिट: https://iana.org
TLD डोमेन सर्वर
ये Top-Level Domain के अनुसार वर्गीकृत हैं। वे आमतौर पर अगले होते हैं जिनसे इटरेटिव क्वेरी Root DNS सर्वर के बाद टकराती है। वे होस्टनेम के लिए TLD विशिष्ट रिकॉर्ड स्टोर करते हैं।
मान लें कि हम medium.com के IP एड्रेस का अनुरोध कर रहे हैं, तो ".com" TLD के लिए TLD डोमेन सर्वर क्वेरी किए जाते हैं। TLD डोमेन सर्वर Authoritative DNS सर्वर का एड्रेस Resolver को वापस करते हैं।
चित्र. TLD नेम सर्वर Authoritative नेम सर्वर की ओर इशारा करते हैं
अब, प्रश्न उठता है: TLD नेम सर्वर को Authoritative नेम सर्वर का एड्रेस कैसे पता चलता है? उत्तर सरल है: जब आप GoDaddy या Namecheap जैसे रजिस्ट्रार से कोई डोमेन खरीदते हैं, तो रजिस्ट्रार डोमेन को TLD नेम सर्वर को भी सूचित करते हैं। इसलिए यह Authoritative नेम सर्वर से संपर्क करने में सक्षम है।
आजकल, कुछ रजिस्ट्रार थर्ड पार्टी Authoritative नेम सर्वर का उपयोग करने की क्षमता प्रदान करते हैं। उपरोक्त चित्र में दिखाए अनुसार, आप रजिस्ट्रार के डैशबोर्ड में Authoritative Nameservers सेट कर सकते हैं।
Authoritative DNS सर्वर
ये Resolver द्वारा अंत में इटरेटिव रूप से क्वेरी किए जाते हैं। वे टाइप A, NS, CNAME, TXT, आदि के लिए वास्तविक रिकॉर्ड स्टोर करते हैं।
इस प्रकार, यदि उपलब्ध हो तो वे होस्टनेम का IP एड्रेस लौटाते हैं। यदि यह Authoritative DNS सर्वर में भी उपलब्ध नहीं है, तो वे विशेष संदेश के साथ एक एरर फेंकते हैं और नेमसर्वर में IP एड्रेस खोजने की प्रक्रिया समाप्त होती है।
DNS क्वेरी के प्रकार
DNS क्वेरी के तीन प्रकार हैं:
Recursive: Recursive क्वेरी उपयोगकर्ताओं द्वारा Resolver से की जाती है। यह वास्तव में किसी भी DNS लुकअप करते समय की जाने वाली पहली क्वेरी है।
Resolvers आपके ISP या आपके नेटवर्क एडमिन हो सकते हैं, लेकिन आमतौर पर, यह लगभग सभी मामलों में ISP है।
Non-recursive: नॉन-रिकर्सिव क्वेरी में, Resolver उत्तर जानता है और किसी अन्य नेम सर्वर को कोई और क्वेरी किए बिना तुरंत प्रतिक्रिया देता है। ऐसा इसलिए होता है क्योंकि लोकल DNS सर्वर के पास इसका IP एड्रेस इसके लोकल कैश में स्टोर होता है या यह सीधे Authoritative नेम सर्वर को क्वेरी करता है। उनके पास निश्चित रूप से रिकॉर्ड होता है और यह अंततः रिकर्सिव क्वेरी से बचाता है।
Iterative: इटरेटिव क्वेरी तब होती है जब Resolver परिणाम नहीं लौटा सकता क्योंकि हो सकता है उन्होंने इसे कैश न किया हो। तो, यह Root DNS सर्वर को अनुरोध करता है। और Root DNS सर्वर जानते हैं कि विशेष TLD डोमेन सर्वर कहां ढूंढना है।
तो, उदाहरण के लिए, यदि हम कहें medium.com के लिए IP एड्रेस प्राप्त करने का प्रयास कर रहे हैं, तो Root डोमेन सर्वर के पास ".com" TLD सर्वर का एड्रेस स्टोर होगा और इसे Resolver को वापस भेज देगा। Resolver तब TLD सर्वर से IP एड्रेस मांगता है। TLD डोमेन सर्वर को यह नहीं पता हो सकता है, लेकिन यह medium.com के लिए Authoritative DNS सर्वर का एड्रेस जानता है।
ठीक है, पर्याप्त सिद्धांत। आइए एक फ्लो डायग्राम द्वारा इसे समझें:
चित्र. DNS Resolution
आइए उपरोक्त डायग्राम को चरणों में तोड़ें:
- उपयोगकर्ता उस होस्टनेम के साथ Resolver को अनुरोध करता है जिसके लिए वह IP एड्रेस चाहता है। यह एक रिकर्सिव क्वेरी है।
- Resolver अपने कैश में लुकअप करता है यह देखने के लिए कि क्या यह इसमें मौजूद है।
- यदि यह है, तो यह इसे उपयोगकर्ता को वापस लौटाता है।
- यदि यह कैश नहीं किया गया है, तो यह वैश्विक रूप से मौजूद Root DNS सर्वर को एक इटरेटिव अनुरोध करता है। 2016 तक, A - M नाम के 13 Root DNS सर्वर हैं। अब, Root DNS सर्वर अनुरोधित डोमेन के TLD को देखता है। उदाहरण के लिए, यदि होस्टनेम
medium.comहै, तो TLD ".com" बन जाता है और Root DNS सर्वर के पास ".com" डोमेन सर्वर के लिए प्रविष्टि होती है और यह परिणाम Resolver को वापस लौटाता है। Resolver के पास सभी Root डोमेन नेम सर्वर के एड्रेस होने चाहिए। यदि नहीं, तो DNS लुकअप पहली जगह में विफल हो सकता है। - अब, Resolver फिर से TLD डोमेन सर्वर से डोमेन के IP एड्रेस के लिए एक इटरेटिव अनुरोध करता है। TLD डोमेन सर्वर तब अनुरोधित डोमेन के लिए Authoritative सर्वर का एड्रेस वापस करता है।
- अब तक, मेरा मानना है, आप समझ गए होंगे कि Authoritative DNS सर्वर क्या हैं। उनमें वास्तविक रिकॉर्ड होते हैं जहां होस्टनेम IP एड्रेस पर मैप होता है और इसलिए IP एड्रेस Resolver को वापस लौटाया जाता है (जो बदले में इसे उपयोगकर्ता को वापस लौटाता है)।
- यदि Authoritative नेम सर्वर में कोई मिलान रिकॉर्ड नहीं मिलता है, तो "DNS_PROBE_FINISHED_NXDOMAIN" संदेश के साथ एक एरर फेंका जाता है जो दर्शाता है कि अनुरोधित होस्टनेम के लिए कोई रिकॉर्ड नहीं है।
- नेमसर्वर के सभी में जिनसे अनुरोध गुजरता है, अनुरोधित होस्टनेम के परिणाम कैश किए जाते हैं ताकि जब कोई अन्य उपयोगकर्ता उसी डोमेन का अनुरोध करे, तो रिकॉर्ड पहले से ही DNS कैश में मौजूद होगा।
- कुल मिलाकर, DNS लुकअप करने के लिए अधिकतम चार क्वेरी लगती हैं। लेकिन, लुकअप करने में मुश्किल से कुछ मिलीसेकंड लगते हैं।
DNS प्रोपेगेशन की अवधारणा
विचार करें, आपकी वेबसाइट Digital Ocean जैसे किसी प्रोवाइडर के साथ IP "x" वाली किसी मशीन पर होस्टेड है, और आप वेबसाइट होस्टिंग को किसी अन्य मशीन पर अलग IP एड्रेस "y" के साथ शिफ्ट करना चाहते हैं। आपको Authoritative रिकॉर्ड में IP एड्रेस बदलना होगा ताकि ट्रैफिक नए IP एड्रेस पर नेविगेट करे।
भले ही आप अपने रजिस्ट्रार/नेम सर्वर के डैशबोर्ड में रिकॉर्ड अपडेट करते हैं, दुनिया भर के सभी Resolvers के कैश में प्रतिबिंबित होने में कुछ समय लगता है। DNS प्रोपेगेशन में 24-72 घंटे लग सकते हैं, लेकिन आमतौर पर यह उससे जल्दी होता है क्योंकि अधिकांश ISPs TTL को कम रखते हैं।
और बस इतना ही!
लेख पढ़ने के लिए धन्यवाद। यदि आपके कोई प्रश्न हैं, तो कृपया नीचे कमेंट्स में पूछने के लिए स्वतंत्र महसूस करें और इस पोस्ट को जिसे चाहें साझा करें।
अगले में मिलते हैं। अच्छा समय बिताएं। धन्यवाद।
आप कंप्यूटर नेटवर्क पर मेरा अन्य लेख देख सकते हैं जो उन्हें विस्तार से समझाता है:
कंप्यूटर नेटवर्क क्या हैं और उन्हें वास्तव में कैसे समझें
_चाहे आप डेवलपमेंट की दुनिया में नए हों, या लंबे समय से चीजें बना रहे हों — या भले ही आप एक…_medium.freecodecamp.org
अगर आपको मेरा काम पसंद है, तो आप मुझे कॉफी खरीद सकते हैं:
Buy Sumedh Nimkarde a Coffee - BuyMeACoffee.com
_नमस्ते, मैं Sumedh हूं और मेरा काम चीजों को बनाना, तोड़ना और पुनर्निर्माण करना है._buymeacoffee.com
Twitter पर मुझसे संपर्क करने के लिए स्वतंत्र महसूस करें।
मुफ्त में कोड करना सीखें। freeCodeCamp के ओपन सोर्स करिकुलम ने 40,000 से अधिक लोगों को डेवलपर के रूप में नौकरी पाने में मदद की है। शुरू करें