افصل بين ثلاثة أسئلة قبل المشي على الشجرة
A DMARC يجب أن يجيب تتبع الاكتشاف على المجال الذي قام بتأليف الرسالة، وأي سجل يوفر السياسة، وأي منها المجال التنظيمي يحكم استرخاء تنسيق. يمكن أن تكون هذه الإجابات مختلفة. قراءة الوالد الأول سجل TXT والإعلان عن الفائز ليس تطبيقًا أمينًا للخوارزمية الحالية. ابدأ بمجال المؤلف المستخرج من RFC5322 .من، ثم قم بتسمية كل عملية بحث حسب الغرض: اكتشاف السياسة أو اكتشاف المجال التنظيمي للتوافق.
RFC 9989 القسم 4.10 يحدد يحدها المشي على شجرة DNS. ويطبق القسم 4.10.1 ذلك على اختيار السياسة؛ القسم 4.10.2 يشرح المحاذاة. يكون التمييز مهمًا عندما يكون لدى مجال المؤلف سياسته الصحيحة الخاصة به: حيث يوفر هذا السجل السياسة على الفور، ومع ذلك فهو لا يقوم تلقائيًا بإنشاء المجال التنظيمي المطلوب لكل مقارنة محاذاة. يجب توثيق المواصفات الحالية وتطبيقات جهاز الاستقبال الملحوظة بشكل منفصل.
تحديد شجرة خيالية مع افتراضات كاملة
استخدم alerts.ops.north.example كمجال مؤلف خيالي. افترض أنه موجود، ولديه سجل عنوان، وليس لديه سياسة خاصة به. يحتوي ops.north.example الأصلي على v=DMARC1;p=quarantine; psd=u. يحتوي north.example الأعلى على v=DMARC1;p=reject; sp=quarantine; np=reject; psd=n. هذه هي تجهيزات تعليمية مخترعة، وليست سجلات تم الحصول عليها من DNS وليست قيمًا مقترحة لنشر الإنتاج.
اسم المرشح الأولي هو _dmarc.alerts.ops.north.example . في هذه التركيبة، فإنه ينتج NOERROR موثوقًا بدون بيانات TXT ، وSOA في الاستجابة السلبية ولا يوجد اسم مستعار أو تعقيدات الإحالة. الاسم الثاني هو _dmarc.ops.north.example ، حيث يتم الاحتفاظ بالسجل u كمرشح. والثالث هو _dmarc.north.example ، حيث يوقف psd=n الصعود. إن الاحتفاظ بسياق الاستجابة يجعل التتبع قابلاً للمراجعة بدلاً من اختزال كل شيء إلى علامة غامضة "لم يتم العثور عليه".
استنتج النتيجة بدلا من التوقف عند أقرب سجل
تحدد حدود n الصريحة north.example على أنها المجال التنظيمي الموجود ضمنه القسم 4.10.2. لا يفوز سجل u السابق لمجرد أنه تمت مواجهته أولاً. مع عدم وجود سياسة مجال المؤلف، فإن سجل المجال التنظيمي يزود السياسة. نظرًا لوجود alerts.ops.north.example وهو مجال فرعي لمجال السياسة هذا، فقد تم تحديد sp=quarantine . احتفظ بالعلامة المحددة بالإضافة إلى قيمتها في النتيجة المتوقعة.
الآن قم بتغيير الإجابة الأولية للتركيبة فقط إلى v=DMARC1;p=none سِجِلّ. يحدد اكتشاف السياسة سجل مجال المؤلف هذا وقيمته p. قد تظل المحاذاة المريحة تتطلب العمل في المجال التنظيمي، اعتمادًا على المعرفات المصادق عليها والاختصارات الموجودة في القسم 4.10.2. لا تعيد استخدام عبارة "توقف البحث عن النهج" كدليل على توقف كل عمليات البحث عن المحاذاة المحتملة أيضًا.
تستخدم مقارنة المحاذاة الصارمة المساواة بين سلاسل المجال ذات الصلة. يتم تطبيق اختصار محدد آخر عندما يكون مجال المؤلف وجميع المعرفات المصادق عليها هي نفس المجال ويكون لهذا المجال سجل سياسة صالح. وإلا عابر SPF و DKIM يمكن أن تتطلب الهويات مناحي إضافية. الحد الأقصى لعدد الاستعلامات الثمانية هو لكل مرة، وليس وعدًا بأن الرسالة بأكملها تتضمن ثمانية طلبات DNS فقط.
اجعل حد العمق مرئيًا
يستعلم المسار العام عن أحد المرشحين، ويتجاهل المواد غير التابعة لـ DMARC TXT ، ويتجاهل جميع سجلات سياسة DMARC عند ذلك الهدف في حالة بقاء أكثر من سجل واحد. سجل واحد يحتوي على psd=n أو psd=y ينهي عملية السير. بدون هذا التوقف، تتبع إزالة التسمية قاعدة العمق المحددة، وليس حلقة غير محدودة من أصل إلى أصل.
بالنسبة للاسم الخيالي المكون من تسعة تسميات abcdefghexample ، يستخدم البحث الأولي هذا الاسم الكامل مع إضافة _dmarc مسبقًا. المرشح التالي هو cdefghexample ، ويتم اختصاره إلى سبعة تسميات. المرشحون اللاحقون هم defghexample و efghexample و fghexample و ghexample و h.example و example. يتلقى كل منهم البادئة _dmarc . مع عدم وجود شرط إيقاف مبكر، فهذه ثمانية استعلامات مرشحة. تم تخطي bcdefghexample المتوسط ذو العلامات الثمانية عمدًا.
وهذا يعني أنه يمكن تفويت الحدود الإدارية المتداخلة للغاية عندما لا تكون الهدف الأولي. RFC 9989 القسم 5.1.8 يشرح العواقب بالنسبة للمؤسسات المعقدة ويتطلب سجلاً دقيقًا لنطاق المؤلف للحالة الموصوفة التي تحتوي على أكثر من ثمانية تسميات. يجب أن يتضمن الاختبار المقترح كلاً من الحدود التي تم تخطيها والسجل الأولي الصريح، بدلاً من افتراض زيارة كل سلف.
تصنيف الأخطاء دون اختراع سياسة
يختلف الغياب المؤكد عن فشل الحل العابر. يحظر القسم 4.10.1 تطبيق DMARC عندما لا ينتج عن الاكتشاف أي سجل سياسة من خلال الغياب، مع ترك التعامل مع أخطاء DNS لتقدير المتلقي. قد يؤجل جهاز الاستقبال مؤقتًا أو يختار أسلوبًا مفتوحًا للفشل. SERVFAIL ليس دليلاً سلبيًا على الوجود ويجب ألا يتم إدراجه في الجهاز كما لو كان يعني "الاستمرار بشكل طبيعي بدون أي سجل".
الإجابة الفارغة تحتاج أيضًا إلى تفسير. RFC 2308 القسم 2.2 يميز NODATA عن حالات الإحالة والاسم المستعار. الحفاظ على اسم السؤال ونوعه ورمز الاستجابة وسياق السلطة وسلسلة الاسم المستعار. لا يثبت الطفل _dmarc المفقود أن مجال المؤلف نفسه غير موجود. هذا سؤال منفصل يستخدم عند الاختيار بين sp و np.
احتفظ بأثر يمكن لمهندس آخر أن يتحدىه
العمولة المحددة هي: إنشاء شجرة DNS ملموسة وتتبع خوارزمية RFC الحالية مقابلها. توفر الشجرة الخيالية المسودة مسبقًا تتبعًا متوقعًا مشتقًا يدويًا، ولكن لم يتم الاحتفاظ بأي تثبيت DNS أو تنفيذ جهاز الاستقبال. وبالتالي تظل بوابة الأدلة الأصلية مفتوحة. يجب أن يحافظ الاختبار المعتمد المستقبلي على كل اسم مرشح وسجل المرشح وسبب الرفض وحالة التوقف ومجال السياسة المحدد ومخرجات المحاذاة.
قم بتسجيل إصدارات محلل وجهاز الاستقبال ووقت المراقبة وسياق ذاكرة التخزين المؤقت وإصدار التثبيت المعتمد. قارن التتبع الفعلي بالتتبع المتوقع قبل تغيير أي شيء. لا يزال التحقق من الأخطاء الحالية، والمراجعة الفنية للشركات الصغيرة والمتوسطة، وقابلية تطبيق الإنتاج، والفحوصات المرئية، وإصدار المالك معلقًا. إن الأثر المتوقع الشفاف يعد إعدادا مفيدا؛ وهي ليست نتيجة التشغيل المتداخل.