Check-Host.cc

Start of Authority (SOA) Checker

SOA (Start of Authority) रिकॉर्ड किसी भी DNS ज़ोन के प्रशासनिक दिल के रूप में कार्य करता है। यह एक अनिवार्य रिकॉर्ड है; वैध SOA के बिना, वैश्विक रूटिंग तालिका में डोमेन का अस्तित्व समाप्त हो जाता है। SOA पेलोड डोमेन के लिए मुख्य परिचालन मापदंडों को निर्धारित करता है, यह स्थापित करता है कि कौन सा सर्वर सत्य का निश्चित स्रोत है, इसे कौन प्रबंधित करता है, और सख्त समय तंत्र जो यह निर्धारित करता है कि माध्यमिक, निरर्थक (Redundant) नेम सर्वर ज़ोन डेटा की नकल (Replicate) कैसे करते हैं।

The Zone Serial Number और State Replication

SOA पेलोड के भीतर सबसे महत्वपूर्ण इंटीजर सीरियल नंबर (Serial Number) है। उद्योग की परंपरा के अनुसार, इसे अक्सर डेट-स्टैम्प के रूप में स्वरूपित किया जाता है (उदा., 24 अक्टूबर 2023 को पहले परिवर्तन के लिए 2023102401)। हर बार जब कोई एडमिनिस्ट्रेटर A, MX, या TXT रिकॉर्ड को संशोधित करता है, तो यह सीरियल नंबर बढ़ना (Increment) चाहिए। द्वितीयक (स्लेव) नेम सर्वर नियमित रूप से प्राथमिक सर्वर के SOA रिकॉर्ड को पोल करते हैं। यदि वे अपने स्थानीय कैश में संग्रहीत से अधिक सीरियल नंबर का पता लगाते हैं, तो यह अद्यतन रूटिंग तालिकाओं को खींचने के लिए तत्काल AXFR या IXFR ज़ोन ट्रांसफर को ट्रिगर करता है। यदि संपादन के दौरान सीरियल को नहीं बढ़ाया जाता है, तो द्वितीयक सर्वर कभी सिंक नहीं होंगे, जिससे खंडित, असंगत DNS प्रतिक्रियाएं होंगी।

Administrative Timing: Refresh, Retry, और Expire

SOA रिकॉर्ड तीन विशिष्ट टाइमर को परिभाषित करता है जो ज़ोन के लचीलेपन को नियंत्रित करते हैं:

  • Refresh: वह अंतराल (सेकंड में) जो द्वितीयक सर्वर सीरियल परिवर्तनों के लिए प्राथमिक सर्वर को पोल करने से पहले प्रतीक्षा करते हैं।
  • Retry: यदि पोल के दौरान प्राथमिक सर्वर ऑफ़लाइन है, तो यह परिभाषित करता है कि द्वितीयक सर्वर फिर से प्रयास करने से पहले कितनी देर प्रतीक्षा करता है।
  • Expire: प्राथमिक सर्वर के स्थायी रूप से ऑफ़लाइन होने पर द्वितीयक सर्वर द्वारा कैश्ड रिकॉर्ड सर्व करने का पूर्ण अधिकतम समय। एक बार जब यह टाइमर पहुँच जाता है, तो द्वितीयक सर्वर क्वेरी का उत्तर देना बंद कर देता है, गंभीर रूप से पुराने डेटा को सर्व करने से रोकने के लिए प्रभावी रूप से डोमेन को डाउन कर देता है।

Negative Caching और Minimum TTL

SOA रिकॉर्ड का अक्सर गलत समझा जाने वाला पैरामीटर न्यूनतम (Minimum) TTL मान है। ऐतिहासिक रूप से बेसलाइन कैशिंग समय निर्धारित करने के लिए उपयोग किया जाता है, RFC 2308 ने इस इंटीजर को विशेष रूप से नकारात्मक कैशिंग (Negative Caching) के लिए पुनः उपयोग किया। यदि कोई उपयोगकर्ता किसी ऐसे सबडोमेन को क्वेरी करता है जो मौजूद नहीं है (उदा., fake.example.com), तो अथॉरिटेटिव सर्वर NXDOMAIN त्रुटि के साथ प्रतिक्रिया करता है। रिज़ॉल्वर उस विफलता को कितनी देर तक कैश करना है, यह निर्धारित करने के लिए SOA Minimum TTL का उपयोग करता है। एक कम मान लंबे समय तक आउटेज को रोकता है यदि कोई व्यवस्थापक जल्दी से टाइपो को ठीक करता है, जबकि एक उच्च मान अथॉरिटेटिव सर्वर को यादृच्छिक, गैर-मौजूद सबडोमेन को क्वेरी करने वाले DDoS फ्लड से बचाता है।