گلوبل EDNS (Extension Mechanisms for DNS) چیکر
EDNS (Extension Mechanisms for DNS)، جسے باضابطہ طور پر RFC 6891 میں بیان کیا گیا ہے، کوئی روایتی زون فائل ریکارڈ نہیں ہے۔ بلکہ، یہ بنیادی DNS پروٹوکول میں ہی ایک ساختی ترمیم ہے۔ 1980 کی دہائی میں جب اصل میں DNS کا ڈھانچہ تیار کیا گیا تھا، تو پروٹوکول یہ حکم دیتا تھا کہ بے ریاست (stateless) User Datagram Protocol (UDP) پر چلنے والی کسی بھی کیوری کو سختی سے 512 بائٹس کے زیادہ سے زیادہ پے لوڈ (Payload) تک محدود ہونا چاہیے۔ کئی دہائیوں تک، یہ حد بنیادی IP ایڈریسز کو منتقل کرنے کے لیے کافی تھی۔ تاہم، جیسے جیسے انٹرنیٹ ترقی کر رہا ہے، یہ ہارڈ کیپ ایک بہت بڑی ساختی رکاوٹ (bottleneck) بن گیا۔
512-Byte UDP رکاوٹ کو عبور کرنا
جدید بنیادی ڈھانچے کی ضروریات—خاص طور پر 128-bit IPv6 ایڈریسز اور DNSSEC کے ذریعے تیار کردہ بڑے کرپٹوگرافک دستخط—کے تعارف کے نتیجے میں DNS کے جوابات معمول کے مطابق 1,500 بائٹس سے تجاوز کر گئے۔ EDNS کے بغیر، UDP پر ایک بڑا پے لوڈ واپس کرنے کی کوشش کرنے والا ایک authoritative سرور پیکٹ کو کاٹنے (truncate)، ہیڈر میں "TC" (Truncated) بٹ سیٹ کرنے، اور کلائنٹ کو ایک سست، اسٹیٹ فل (stateful) TCP کنکشن پر کیوری کو مکمل طور پر دوبارہ شروع کرنے پر مجبور ہو جاتا ہے۔ یہ TCP فال بیک (fallback) عمل ایپلیکیشن ریزولوشن میں شدید، مرکب تاخیر (latency) متعارف کراتا ہے اور نیم سرور کے وسائل پر زور دیتا ہے۔ EDNS DNS ہیڈر میں "OPT pseudo-record" داخل کر کے اس کا حل نکالتا ہے۔
OPT Pseudo-Record اور بفر کی گفت و شنید (Buffer Negotiation)
OPT ریکارڈ کسی جامد (static) زون فائل میں موجود نہیں ہوتا۔ یہ فعال ٹرانزیکشن کے دوران متحرک (dynamically) طور پر پیدا ہوتا ہے۔ جب EDNS کے مطابق کام کرنے والا ریزولور (resolver) سرور کو کیوری کرتا ہے، تو وہ اس OPT ریکارڈ کو منسلک کرتا ہے تاکہ اس کے زیادہ سے زیادہ قابل قبول UDP پے لوڈ سائز کی تشہیر (advertise) کی جا سکے (عام طور پر 1232 یا 4096 بائٹس)۔ اگر مستند سرور EDNS کی حمایت کرتا ہے، تو وہ سست TCP فال بیک کو مکمل طور پر نظر انداز کرتے ہوئے، ایک ہی بجلی کی طرح تیز رفتار UDP ٹرانزیکشن میں بڑے DNSSEC پے لوڈز کو منتقل کرنے کے لیے اس طے شدہ بفر سائز (buffer size) کا استعمال کرتا ہے۔
نیٹ ورک بلیک ہولز اور فائر وال ڈراپس کی تشخیص
EDNS کمپلائنس چیکر کا استعمال جدید نیٹ ورک ڈیبگنگ (debugging) کے لیے ایک لازمی قدم ہے۔ بہت سے پرانے کارپوریٹ فائر والز، پرانے intrusion detection systems (IDS)، اور ناقص کنفیگر کیے گئے کنزیومر راؤٹرز ابھی بھی 512 بائٹس سے بڑے آنے والے UDP پیکٹس کو بفر اوور فلو حملوں یا UDP فلڈز (floods) کے طور پر تعبیر کرتے ہوئے جارحانہ طور پر ڈراپ کرتے ہیں۔ جب ایسا ہوتا ہے، تو کلائنٹ کو شدید DNS ٹائم آؤٹس کا تجربہ ہوتا ہے، جس سے سائٹ کی رک رک کر عدم دستیابی پیدا ہوتی ہے۔ مزید برآں، EDNS جدید روٹنگ ٹیلی میٹری (telemetry) متعارف کراتا ہے، جیسے EDNS Client Subnet (ECS)، جو recursive resolvers کو صارف کے IP ایڈریس کا ایک حصہ مستند سرور تک پہنچانے کی اجازت دیتا ہے، جس سے CDNs کو انتہائی درستگی کے ساتھ قریبی جغرافیائی ڈیٹا سینٹر تک ٹریفک روٹ کرنے کے قابل بنایا جاتا ہے۔