الخلاصة

  • عاملت RFC 1924 عنوان IPv6 كله كعدد صحيح ورمّزته بأساس 85 في عشرين محرفاً ثابتاً. يستطيع مفكك صحيح استعادة القيمة، لكن البشر والأدوات القديمة ومحركات البحث لا تكتسب المعرفة بالترميز تلقائياً.
  • استبعدت الأبجدية تسعة محارف مطبوعة لتبقى متاحة للاقتباس والقوائم والجمل وCIDR وعناوين URL والأقواس والهروب. لا ينجح التمثيل داخل الحقل إذا كسر القواعد المحيطة به.
  • أبقت المواصفات اللاحقة الشكل السداسي عشري، وحددت الأقواس لحرفيات URI، ثم أوصت بمخرج معياري واحد. يحسن ذلك المطابقة، لكنه لا يثبت التخصيص أو الإذن أو التوجيه أو الوصول أو الهوية أو التسليم.

حين يكون العنوان موجوداً ولا يظهر في البحث

يبدأ المحقق عادة بسلسلة مرئية، لا بعدد ثنائي من 128 بتاً. ينسخ عنواناً من بلاغ، ويلصقه في بحث السجلات، ثم يقارن النتيجة بمخطط أو رد Whois. إذا كتبت أداة العنوان بالشكل السداسي العشري وكتبته أخرى بصيغة Base85، تبقى المساواة صحيحة داخل المفكك وتختفي عند سطح العمل البشري.

نُشرت RFC 1924 في الأول من أبريل 1996 بوصفها وثيقة Informational، ولم تحدد معياراً للإنترنت. قرأت العنوان كله كعدد صحيح غير موقع، ثم استخدمت أبجدية من 85 محرف ASCII قابل للطباعة. حوّل المثال 1080:0:0:0:8:800:200C:417A إلى 4)+k&C#VzJ4br>0wv%Yp. بقي الطول عشرين موضعاً في كل مرة، بما في ذلك الأصفار البادئة.

لا تضيع معلومات في التحويل. إلا أن القابلية للعكس تجيب عن سؤال محدود: هل يستطيع منفذ صحيح استرجاع القيمة؟ ولا تجيب عما إذا كان محلل URI يعرف حدودها، أو كان الفهرس يجمع الشكلين، أو كان المشغل يتعرف إلى عنوان IPv6، أو كانت كل عقدة في المسار قد نشرت الشيفرة اللازمة.

لماذا كان الأساس 85 دقيقاً

فضاء IPv6 يضم (2^{128}) قيمة. عشرون خانة بالأساس 84 لا تغطيه، بينما تغطيه عشرون خانة بالأساس 85: (84^{20} < 2^{128} \leq 85^{20}). وحتى استخدام 94 أو 95 محرفاً لا يخفض العدد المطلوب عن عشرين. لذلك حقق الأساس 85 أقصر عرض ثابت ضمن المجال، وترك تسعة محارف مطبوعة خارج الأبجدية.

للعرض الثابت فوائد حقيقية. حجم الحقل معروف، والأصفار البادئة محفوظة، ولا توجد خيارات متعددة لضغط مجموعات الصفر كما في العرض السداسي العشري. وبعد فك التمثيل تستطيع الآلة مقارنة القيم مباشرة.

لكن المحارف التسعة المستبعدة تكشف أن الحقل ليس عالماً مغلقاً. استُبعدت علامتا الاقتباس، والفاصلة، والنقطة، والشرطة المائلة، والنقطتان، والقوسان المربعان، والشرطة المائلة العكسية. تحتاجها قواعد الاقتباس والقوائم ونهايات الجمل ولاحقات CIDR وعناوين URL وتحديد الحرفيات والهروب. كان على الاختصار أن يترك للوعاء وسيلة لرؤية حدوده.

الشكل المألوف كان مرناً أكثر من اللازم

عرّفت هندسة IPv6 السابقة ثماني مجموعات سداسية عشرية، طول كل منها 16 بتاً، تفصلها النقطتان. سمحت بحذف الأصفار البادئة، وضغط سلسلة واحدة من مجموعات الصفر بـ::، وإضافة ذيل IPv4 عشري. احتفظ الشكل بهيئة يسهل تمييزها، لكنه أتاح كتابات قانونية متعددة للقيمة نفسها.

هذه المرونة تصنع مشكلات في البحث والجداول والمخططات. قد يختار سجلان ضغطاً مختلفاً؛ فيبدوان غير متساويين نصياً. ألغت Base85 ذلك التفاوت باستبدال السطح كله، فصار العبء هو تعليم كل أداة وشخص الأبجدية الجديدة.

اختارت المواصفات اللاحقة علاجاً أضيق لمشكلة URL. تتعارض النقطتان داخل IPv6 مع بناء العنوان الخارجي، فأحاطت RFC 2732 الحرفي بأقواس مربعة، وكان من أهدافها تسهيل النسخ واللصق بأقل تعديل. وسجلت وجود التنفيذ في نسخ IPv6 من Internet Explorer وMozilla وLynx. ثم أبقت RFC 3986 موضع IP-literal بين الأقواس.

تسامح عند الإدخال وانضباط عند الإخراج

حافظت RFC 4291 على الأشكال السداسية العشرية المرنة. وفي 2010 وصفت RFC 5952 أثر تعدد الأشكال القانونية في البحث والملفات النصية والجداول وWhois والمخططات والسجلات والتدقيق والتحقق. كان حلها غير متماثل: على المحللات قبول جميع مدخلات RFC 4291 القانونية، وعلى المخرجات اتباع شكل معياري.

يحذف الشكل المعياري الأصفار البادئة، ويستخدم الأحرف السداسية العشرية الصغيرة، ويضغط أطول سلسلة من مجموعات الصفر بـ::، ويختار الأولى عند التعادل، ولا يضغط مجموعة صفر منفردة. لم يكن الهدف أقصر سلسلة ممكنة دائماً، بل أن تترك الأنظمة المستقلة الأثر النصي نفسه للقيمة نفسها.

بهذا بقيت التوافقية واسعة عند الحدود، وصارت الأدلة أكثر تقارباً في الداخل. وحلت الأقواس تعارضاً خارجياً محدداً من دون إعادة اختراع تمثيل العنوان.

ست طبقات لا يمنح بعضها سلطة الآخر

تبدأ السلسلة بالبتات، ثم القيمة التي يقرأها المحلل، ثم العرض المعياري، ثم النص المخزن فعلاً، ثم نتيجة البحث، وأخيراً الحدث الشبكي الملحوظ. التساوي في طبقة لا يصعد تلقائياً إلى الطبقة التالية. فك سلسلتين إلى عدد واحد يثبت تكافؤ التمثيل. تطابق مخرجين معياريين يثبت اتفاق المنسقين. وجود سطر في سجل يثبت أن مكوناً كتب نصاً.

لا يثبت أي منها لمن خُصص العنوان، أو أن منشأ المسار مأذون، أو أن مساراً حياً موجود، أو أن الواجهة قابلة للوصول، أو أن الخدمة تمثل هوية موثقة، أو أن حزمة وصلت. تجعل المعيارية الدليل أسهل في العثور عليه، ولا توسع معنى الدليل.

تظهر السلسلة التاريخية في RFC 1884 وRFC 1924 وRFC 2732 وRFC 3986 وRFC 4291 وRFC 5952. وهي مواصفات وليست إحصاءً يثبت انعدام تنفيذ Base85، ولا تسجيلاً لرفض رسمي صريح من المؤلفين اللاحقين.

يقدم Running-Code Primacy إطاراً تحليلياً لاحقاً يفحص ما تقبله المحللات والسجلات وإجراءات التشغيل فعلاً. ويساعد Minimum Initial Specification, Localized Future Decision, and Voluntary Adoption على فهم قوة الحد الأدنى المشترك مع إبقاء القرارات المحلية. لا يجوز نسب أي منهما إلى نية مؤلفي الوثائق التاريخية.

حملت محارف RFC 1924 العشرون كل بت من العنوان. أما الثقة المشتركة في العثور عليه ومقارنته، فكانت تحتاج إلى شبكة أخرى من الاتفاقات.