المقدمة
يوضح هذا المستند كيفية تسجيل موارد ذاكرة التخزين المؤقت ل OpenDNS/Umbrella Resolvers.
نظرة عامة
يستخدم محلل OpenDNS/Umbrella برنامجا يعرف باسم OpenDNSCache (odc) لحل استعلامات DNS. odc تخزين البيانات التي تتلقاها لإعادة النتائج إلى العملاء بشكل أكثر سرعة وكفاءة. تركز هذه المقالة على كيفية حدوث التخزين المؤقت ووقت إستخدامه.
تستهدف هذه المقالة المستخدمين الذين يرغبون في معرفة المزيد حول تفاصيل التخزين المؤقت odc (عادة ما يكون خادم الأسماء ومسؤولي المجال)، أو الحالات التي قد لا يعمل فيها حل DNS كما هو متوقع.
ما هي البيانات المخزنة مؤقتا؟
وفقا لمعيار RFC 2181 (https://datatracker.ietf.org/doc/html/rfc2181)، يمكن إرجاع الاستجابات في رد أو تخزينها في ذاكرة تخزين مؤقت استنادا إلى جدارة البيانات بالثقة. يحدد RFC 7 مستويات ثقة في القسم 5.4.1:
- بيانات من ملف منطقة أساسية، بخلاف بيانات الغراء.
- لا ينطبق هذا إلا على خوادم الأسماء المخولة، وليس على محولات OpenDNS
- البيانات من نقل منطقة، بخلاف الصمغ.
- لا ينطبق هذا إلا على خوادم الأسماء المخولة، وليس على محولات OpenDNS
- البيانات الموثوقة المتضمنة في قسم الإجابات في رد موثوق به.
- ينطبق هذا على OpenDNSCache
- بيانات من قسم السلطة في إجابة رسمية.
- ينطبق هذا على OpenDNSCache
- الصمغ من منطقة أساسية أو الصمغ من منطقة النقل.
- لا ينطبق هذا إلا على خوادم الأسماء المخولة، وليس على محولات OpenDNS
- '1` بيانات مستمدة من قسم الإجابات في إجابة غير رسمية، و '2` بيانات غير رسمية مستمدة من قسم الإجابات في الإجابات الرسمية.
- س) مثل لما يرجعه مصممونا. أي البيانات غير المخولة.
- بالنسبة ل ii)، لاحظ أن قسم الإجابات في الإجابات المخولة يحتوي عادة على بيانات موثوقة فقط. ومع ذلك، عندما يكون الاسم المطلوب اسما مستعارا (انظر القسم 10.1.1)، يكون السجل الذي يصف هذا الاسم المستعار مخولا بالضرورة. يمكن للعملاء افتراض أن السجلات الأخرى قد تم الحصول عليها من ذاكرة التخزين المؤقت للخادم. حيث تكون الإجابات المخولة مطلوبة، يمكن للعميل الاستعلام مرة أخرى، باستخدام الاسم القانوني المقترن بالاسم المستعار.
- `1` معلومات إضافية من رد موثوق به؛ '2` البيانات الواردة من قسم السلطة في إجابة غير رسمية؛ `3` معلومات إضافية مستمدة من الردود غير الرسمية.
- كل هذه تنطبق على OpenDNSCache
- يجب عدم تخزين السجلات المتلقاة من أي من هذه المصادر مؤقتا لأغراض إرجاع النتائج إلى الاستعلامات.
يقوم OpenDNSCache بتخزين البيانات من الاستجابات باستخدام المستويات الموثوق بها 3 و 4 و 6. إذا إستلمنا بيانات جديدة ذات مستوى ثقة أفضل أو مساو، فإننا نستبدل إدخال ذاكرة التخزين المؤقت القديم.
الاستثناء هنا هو لسجلات NS، التي نقوم باستبدال البيانات فقط بمستوى ثقة أفضل.
كيف تتم إضافة البيانات وإزالتها من ذاكرة التخزين المؤقت؟
لم يتم حذف البيانات منتهية الصلاحية من ذاكرة التخزين المؤقت. هذا هو أساس ميزة SmartCache، حيث نقوم بإرجاع سجلات الموارد (RRs) منتهية الصلاحية من ذاكرة التخزين المؤقت إذا تعذر علينا الوصول إلى السلطات لسبب ما.
وبدلا من ذلك، فإن ذاكرة التخزين المؤقت على كل محلل هي حجم ثابت، وعندما تتم إضافة RR جديد إلى ذاكرة التخزين المؤقت، تتم إزالة أقدم RR. يمكن عرض هذا كقائمة انتظار تتم فيها إضافة إدخالات جديدة إلى قائمة الانتظار، مما يؤدي إلى إخراج الإدخالات القديمة من قائمة الانتظار (لعلماء الكمبيوتر الموجودين هناك، يتم تنفيذ هذا بالفعل كقائمة دائرية مرتبطة بشكل مزدوج).
لاحظ أن إستجابة نظام أسماء المجالات (DNS)، كما هو موضح أعلاه، يمكن أن تحتوي على العديد من وحدات تحديد المعدل المستندة إلى النتائج (RRs) التي لها مستويات ثقة مختلفة، وليست كلها البيانات المطلوبة في الأصل. وبالتالي، بعد تلقي إستجابة، قد يكون لدينا العديد من وحدات RR لإضافتها إلى ذاكرة التخزين المؤقت.
وكما تمت الإشارة إليه أعلاه، لاحظ أن سجلات NS معفاة من هذا السلوك، حيث أننا نستبدل فقط الإدخالات الخاصة بسجلات NS في ذاكرة التخزين المؤقت إذا كان مستوى الثقة بالبيانات أعلى من الإدخال الحالي. ويتم القيام بذلك للتأكد من أنه يمكننا الكشف عن التغييرات التي تطرأ على السلطات في الغراء الأصلي إذا كانت السلطات القديمة لا تزال تستجيب وتعود بنفسها كسلطة.