DMARC (Domain-based Message Authentication, Reporting, and Conformance) ریکارڈز ای میل کی تصدیق اور ڈومین کے تحفظ کے لیے بنیادی حیثیت رکھتے ہیں۔ جب آپ اپنے ڈومین کے لیے DMARC پالیسی وضع کرتے ہیں، تو اس کے نحوی ڈھانچے (syntax) اور پالیسی کے انتخاب کا باریک بینی سے جائزہ لینا ضروری ہوتا ہے تاکہ ای میل کی ترسیل متاثر نہ ہو۔
DMARC ریکارڈ چیکر ایک ایسا ٹول ہے جو آپ کے فراہم کردہ DMARC TXT ریکارڈ کا تفصیلی تجزیہ کرتا ہے۔ یہ ٹول ریکارڈ میں موجود پالیسیوں، الائنمنٹ کی ترتیبات، رپورٹنگ کے پتوں اور پرانی یا غیر مروجہ اقدار کا جائزہ لیتا ہے۔ یہ نحوی غلطیوں اور پالیسی کے مسائل کی نشاندہی کر کے یہ سمجھنے میں مدد دیتا ہے کہ ایک DMARC ریکارڈ کس طرح ترتیب دیا گیا ہے اور وصول کنندہ سسٹمز اسے کس طرح نافذ کرتے ہیں۔
پروسیسنگ اور رازداری کا طریقہ کار
اس ٹول میں رازداری کے اصولوں کا خاص خیال رکھا گیا ہے۔ آپ کا DMARC ریکارڈ آپ کے براؤزر میں رہتا ہے۔ BroBroGo اسے اپ لوڈ یا محفوظ نہیں کرتا۔ ان پٹ کو براؤزر اسٹوریج میں نہیں لکھا جاتا، اور اس ریکارڈ سے متعلق کوئی بھی درخواست بیرونی نیٹ ورک پر نہیں بھیجی جاتی۔ تمام تر تجزیہ مقامی طور پر آپ کے براؤزر کے اندر ہی انجام پاتا ہے۔
ان پٹ کی حدود اور فارمیٹ
ٹول میں تجزیہ شروع کرنے کے لیے درج ذیل ان پٹ کی ضرورت ہوتی ہے:
- DMARC TXT قدر: یہ ایک ٹیکسٹ سٹرنگ ہونی چاہیے جس کا آغاز لازمی طور پر
v=DMARC1سے ہو۔ اگر آپ کا ریکارڈ اقتباس شدہ DNS TXT حصوں (quoted chunks) پر مشتمل ہے، تو یہ ٹول انہیں قبول کر کے خود بخود آپس میں جوڑ دیتا ہے۔ - حجم کی حد: ان پٹ کا حجم 20,000 حروف سے کم ہونا ضروری ہے۔ اگر ان پٹ اس حد سے تجاوز کر جائے تو ٹول "یہ ریکارڈ غیر معمولی طور پر بڑا ہے۔ اسے 20,000 حروف سے کم رکھیں۔" کا ایرر ظاہر کرتا ہے۔
DMARC ریکارڈ کے اجزاء اور ان کا تجزیہ
جب آپ ریکارڈ چسپاں کر کے جانچ کرتے ہیں، تو ٹول نتائج کو مختلف حصوں میں تقسیم کر کے پیش کرتا ہے:
DMARC خلاصہ
یہ حصہ ریکارڈ کی بنیادی ترتیبات کا فوری جائزہ فراہم کرتا ہے:
- p: بنیادی ڈومین کے لیے متعین کردہ پالیسی۔
- sp: ذیلی ڈومینز (subdomains) کے لیے پالیسی۔
- np: ایسے ذیلی ڈومینز کے لیے پالیسی جو وجود نہیں رکھتے۔
- DKIM / SPF: SPF اور DKIM کی الائنمنٹ (مطابقت) سے متعلق معلومات۔
- rua / ruf: ریکارڈ میں شامل رپورٹنگ کے پتوں کی کل تعداد۔
- pct (RFC 7489): پرانے DMARC نفاذ کے لیے استعمال ہونے والی فیصد کی قدر۔
رپورٹ کے مقامات
یہاں ان پتوں کی تفصیلات دکھائی جاتی ہیں جہاں رپورٹس بھیجی جانی ہیں:
- rua: مجموعی رپورٹس وصول کرنے کے لیے مخصوص پتے۔
- ruf: ناکامی کی تفصیلی رپورٹس (forensic reports) کے پتے۔
تجزیہ شدہ شرائط
اس جدول میں ریکارڈ کے اندر پائے جانے والے تمام ٹیگز کی فہرست درج ذیل کالموں کے ساتھ دکھائی جاتی ہے:
- شرط (Tag): DMARC ٹیگ کا نام۔
- قدر یا qualifier: اس ٹیگ کے ساتھ منسلک قدر۔
- قسم: ٹیگ کی موجودہ حیثیت، جو کہ درج ذیل میں سے کوئی ایک ہو سکتی ہے:
- RFC 9989 (فعال ٹیگ کے لیے)
- RFC 7489 (پرانے یا تاریخی ٹیگ کے لیے)
- نامعلوم (غیر رجسٹرڈ ٹیگ کے لیے)
- ✕ DMARC (غلط ٹیگ کے لیے)
DMARC کے اصول، ترجیحات اور اہم رویے
DMARC ریکارڈز کی تشریح اور نفاذ کے دوران وصول کنندہ میل سرورز مخصوص قواعد پر عمل کرتے ہیں جنہیں یہ ٹول چیک کرتا ہے:
ورژن کی شرط
DMARC ریکارڈ کا آغاز لازمی طور پر کیس-سینسٹیو (case-sensitive) قدر v=DMARC1 سے ہونا چاہیے اور یہ ریکارڈ کا سب سے پہلا ٹیگ ہونا ضروری ہے۔ اگر ایسا نہ ہو تو ٹول "ریکارڈ کا آغاز v=DMARC1 سے ہونا چاہیے۔" یا "شرط ‹position›: v=DMARC1 پہلی شرط ہونی چاہیے۔" کا نوٹس جاری کرتا ہے۔
پالیسی کا نفاذ اور فال بیک (Fallback)
- پالیسی کی عدم موجودگی: اگر ریکارڈ میں کوئی
pٹیگ موجود نہ ہو، تو ڈومین پالیسی خود بخودnoneپر چلی جاتی ہے۔ اس صورت میں ٹول "p → none" کا نوٹس دکھاتا ہے۔ - نگرانی کی پالیسی:
p=noneکی پالیسی صرف ناکامیوں کی نگرانی کرتی ہے اور ای میل وصول کرنے والے سرورز کو ناکام ای میلز کو قرنطینہ (quarantine) کرنے یا مسترد (reject) کرنے کی ہدایت نہیں کرتی۔ ٹول اس پر "p=none" کا نوٹس دیتا ہے۔ - ٹیسٹنگ موڈ (
t=y): اگر ریکارڈ میں ٹیسٹنگ ٹیگt=yفعال ہو، تو یہ عارضی طور پر پالیسی کے اثر کو کم کر دیتا ہے؛ یعنیquarantineکو کم کر کےnoneاورrejectکو کم کر کےquarantineکر دیتا ہے۔ ٹول اس رویے کو "t=y: reject → quarantine; quarantine → none" کے طور پر واضح کرتا ہے۔ - ذیلی ڈومین پالیسی کا فال بیک: اگر کوئی مخصوص ٹیگ موجود نہ ہو، تو ذیلی ڈومینز کی پالیسیاں ترتیب وار
npسےspاور پھرpپر فال بیک کرتی ہیں۔
رپورٹنگ اور تاریخی ٹیگز
- رپورٹ پتوں کی ضرورت: اگر ریکارڈ میں کوئی درست
ruaپتہ موجود نہ ہو، تو مجموعی رپورٹس کی درخواست نہیں کی جاتی ("rua=∅")۔ اسی طرح، اگر کوئی درستrufپتہ موجود نہ ہو، توfoٹیگ کو نظر انداز کر دیا جاتا ہے ("fo → ∅ (ruf=∅)")۔ - تاریخی اقدار (
pct): فیصد کی قدریں (pct) اب تاریخی حیثیت رکھتی ہیں اور یہ صرف ان پرانے وصول کنندہ سسٹمز تک پالیسی کے نفاذ کو محدود کرتی ہیں جو اب بھی پرانی DMARC تصریحات پر چل رہے ہیں۔ ٹول اسے "pct=‹detail›% (RFC 7489)" کے طور پر نشان زد کرتا ہے۔ - سائز کا لاحقہ: رپورٹ کے URI پر موجود سائز کا لاحقہ (
!size) اب متروک ہو چکا ہے اور موجودہ دور کے وصول کنندگان کو اسے نظر انداز کر دینا چاہیے۔ ٹول اس پر "!size → ∅ (RFC 9989)" کا نوٹس دیتا ہے۔
عام نحوی غلطیاں اور انتباہات
تجزیے کے دوران ٹول درج ذیل نحوی اور پالیسی مسائل کی نشاندہی کر سکتا ہے:
| مسئلہ / غلطی | ٹول کا پیغام (Urdu Interface) |
|---|---|
| خالی ان پٹ | پہلے DMARC ریکارڈ چسپاں کریں۔ |
| غیر معاون ریکارڈ | ایک معاون DMARC ریکارڈ درج کریں۔ |
| مکرر ٹیگ | ×2: ‹tag› (‹position›) |
| ناقص بناوٹ | name=value ✕ (‹position›) |
| خالی قدر | ‹tag›=∅ (‹position›) |
| غیر درست قدر | ‹tag›=‹detail› ✕ (‹position›) |
| غیر درست رپورٹنگ URI | URI ✕: ‹tag› (‹position›) |
| غیر رجسٹرڈ ٹیگ | نامعلوم: ‹tag› (‹position›) |
| تاریخی ٹیگ | RFC 7489 → RFC 9989: ‹tag› (‹position›) |
اکثر پوچھے گئے سوالات (FAQ)
نحو اور پالیسی کے نوٹس: p / sp / np?
DMARC میں p بنیادی ڈومین کی پالیسی ہے، sp ذیلی ڈومینز کے لیے ہے، اور np غیر موجود ذیلی ڈومینز کے لیے ہے۔ اگر p موجود نہ ہو تو یہ خود بخود none پر سیٹ ہو جاتی ہے۔ ٹیسٹنگ موڈ t=y پالیسی کی سختی کو عارضی طور پر کم کر دیتا ہے۔ پالیسی کا فال بیک کا اصول np → sp → p کے تحت کام کرتا ہے۔
RFC 9989: pct / rf / ri?
جدید ترین DMARC معیار (RFC 9989) کے تحت کچھ پرانے ٹیگز اور اقدار کی حیثیت تبدیل ہو گئی ہے۔ مثال کے طور پر، pct (فیصد)، rf اور ri جیسے ٹیگز اب تاریخی (historic) تصور کیے جاتے ہیں، جبکہ np (غیر موجود ذیلی ڈومینز)، psd اور t جیسے ٹیگز فعال (active) حیثیت میں موجود ہیں۔
کیا صاف نتیجہ ثابت کرتا ہے کہ میری DMARC ترتیب کام کرتی ہے؟
نہیں۔ یہ صفحہ صرف آپ کے چسپاں کردہ متن کو چیک کرتا ہے۔ یہ DNS سے استفسار، فراہم کنندہ کے ریکارڈز کی توسیع، مرسل IP کی جانچ یا وصول کنندہ میل سرور کے جواب کی تصدیق نہیں کرتا۔ یہ ٹول صرف آپ کے فراہم کردہ ریکارڈ کے نحوی ڈھانچے اور پالیسی کے منطقی اصولوں کا تجزیہ کرتا ہے۔