ICMPv6

بروتوكول رسائل التحكم في الإنترنت الإصدار 6 ( ICMPv6 ) هو تطبيق لبروتوكول رسائل التحكم في الإنترنت (ICMP) لبروتوكول الإنترنت الإصدار 6 (IPv6). [ 1 ] يُعد ICMPv6 جزءًا لا يتجزأ من IPv6، ويؤدي وظائف الإبلاغ عن الأخطاء والتشخيص.

يحتوي بروتوكول ICMPv6 على إطار عمل للتوسعات لتنفيذ ميزات جديدة. وقد نُشرت العديد من التوسعات التي تُعرّف أنواع رسائل ICMPv6 جديدة، بالإضافة إلى خيارات جديدة لأنواع الرسائل الحالية. على سبيل المثال، بروتوكول اكتشاف الجوار (NDP) هو بروتوكول لاكتشاف العُقد يعتمد على ICMPv6، ويحل محل بروتوكول ARP ويُحسّن وظائفه . [ 2 ] يُعدّ بروتوكول اكتشاف الجوار الآمن (SEND) امتدادًا لبروتوكول NDP مع مستوى أمان إضافي. يستخدم موجّهو IPv6 بروتوكول اكتشاف مُستمعي البث المتعدد (MLD) لاكتشاف مُستمعي البث المتعدد على رابط مُتصل مباشرةً، تمامًا كما يُستخدم بروتوكول إدارة مجموعات الإنترنت (IGMP) في IPv4 . يسمح بروتوكول اكتشاف موجّه البث المتعدد (MRD) باكتشاف موجّهات البث المتعدد.

أنواع الرسائل وتنسيقاتها

يمكن تصنيف رسائل ICMPv6 إلى رسائل خطأ ورسائل معلومات . تُنقل رسائل ICMPv6 بواسطة حزم IPv6 التي تُضبط فيها قيمة رأس IPv6 التالي لـ ICMPv6 على القيمة 58 .

تتكون رسالة ICMPv6 من رأس وحمولة البروتوكول. يحتوي الرأس على ثلاثة حقول فقط: النوع (8 بتات)، والرمز (8 بتات)، ومجموع التحقق (16 بتًا).

رسائل ICMPv6
إزاحةثمانية0123
ثمانيةقليل012345678910111213141516171819202122232425262728293031
00يكتبشفرةمجموع التحقق
432نص الرسالة
864
النوع : 8 بت
يحدد نوع الرسالة. تشير القيم في النطاق من 0 إلى 127 (البت الأعلى هو 0) إلى رسالة خطأ، بينما تشير القيم في النطاق من 128 إلى 255 (البت الأعلى هو 1) إلى رسالة معلومات.
الرمز : 8 بت
تعتمد قيمة حقل الرمز على نوع الرسالة وتوفر مستوى إضافيًا من دقة الرسالة.
مجموع التحقق : 16 بت
يُوفّر هذا الإجراء مستوىً أدنى من التحقق من سلامة رسالة بروتوكول التحكم في الإنترنت (ICMP). تُحسب قيمة التحقق من الرسالة (بدءًا من حقل النوع )، مُضافًا إليها رأسية IPv6 زائفة . [ 1 ] انظر أدناه.
نص الرسالة : متغير
يعتمد المحتوى على الرسالة.

الأنواع

تُحدد رسائل التحكم من خلال القيمة الموجودة في حقل النوع . ويُقدم حقل الرمز معلومات سياقية إضافية للرسالة. وتؤدي بعض الرسائل نفس الغرض الذي تؤديه أنواع رسائل بروتوكول التحكم في الإنترنت (ICMP) التي تحمل نفس الاسم.

يكتبشفرة
قيمةمعنىقيمةمعنى
رسائل خطأ ICMPv6
1الوجهة غير قابلة للوصول0لا يوجد طريق إلى الوجهة
1يحظر التواصل مع الوجهة إدارياً
2خارج نطاق عنوان المصدر
3العنوان غير قابل للوصول
4المنفذ غير قابل للوصول
5فشل عنوان المصدر في تطبيق سياسة الدخول/الخروج
6رفض المسار إلى الوجهة
7خطأ في رأس توجيه المصدر
2العبوة كبيرة جدًا0
3تجاوز الوقت المحدد0تم تجاوز الحد الأقصى لعدد القفزات أثناء النقل
1تجاوز وقت إعادة تجميع الأجزاء
4مشكلة المعاملات0تم العثور على حقل رأس خاطئ
1تمت مواجهة نوع غير معروف من رأس الصفحة التالية
2تمت مواجهة خيار IPv6 غير معروف
100تجربة شخصية
101تجربة شخصية
127مخصص لتوسيع رسائل خطأ ICMPv6
رسائل معلومات ICMPv6
128طلب صدى0
129رد الصدى0
130استعلام مستمع البث المتعدد ( MLD )0

يوجد نوعان فرعيان من رسائل استعلام مستمع البث المتعدد:

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

يتم التمييز بين هذين النوعين الفرعيين من خلال محتويات حقل عنوان البث المتعدد، كما هو موضح في القسم 3.6 من RFC 2710

131تقرير مستمع البث المتعدد ( MLD )0
132تم الانتهاء من الاستماع إلى البث المتعدد ( MLD )0
133طلب التوجيه ( NDP )0
134إعلان جهاز التوجيه ( NDP )0
135التماس من الجيران ( NDP )0
136إعلان الجوار ( NDP )0
137رسالة إعادة التوجيه ( NDP )0
138إعادة ترقيم جهاز التوجيه [ 3 ]0أمر إعادة ترقيم جهاز التوجيه
1نتيجة إعادة ترقيم جهاز التوجيه
255إعادة تعيين رقم التسلسل
139استعلام معلومات عقدة ICMP0يحتوي حقل البيانات على عنوان IPv6 وهو موضوع هذا الاستعلام.
1يحتوي حقل البيانات على اسم يمثل موضوع هذا الاستعلام، أو يكون فارغًا، كما هو الحال في حالة NOOP.
2يحتوي حقل البيانات على عنوان IPv4 وهو موضوع هذا الاستعلام.
140استجابة معلومات عقدة بروتوكول رسائل التحكم في الإنترنت0تمت الاستجابة بنجاح. قد يكون حقل بيانات الرد فارغًا أو غير فارغ.
1يرفض المجيب تقديم الإجابة. سيكون حقل بيانات الرد فارغًا.
2نوع الاستعلام غير معروف للمستجيب. سيكون حقل بيانات الرد فارغًا.
141رسالة طلب اكتشاف الجار العكسي0
142رسالة إعلانية لاكتشاف الجوار العكسي0
143تقارير اكتشاف مستمع البث المتعدد ( MLDv2 ) [ 4 ]
144رسالة طلب اكتشاف عنوان وكيل المنزل0
145رسالة رد من وكيل المنزل بشأن اكتشاف العنوان0
146طلب بادئة الهاتف المحمول0
147إعلان بادئة الهاتف المحمول0
148طلب مسار الاعتماد ( إرسال )
149إعلان مسار الشهادة (إرسال)
151إعلان موجه البث المتعدد ( MRD )
152طلب توجيه البث المتعدد ( MRD )
153إنهاء جهاز توجيه البث المتعدد ( MRD )
155رسالة تحكم RPL
160طلب صدى موسع [ 5 ]0طلب صدى ممتد
161رد صدى موسع [ 5 ]0لا يوجد خطأ
1استعلام غير صحيح
2لا توجد واجهة كهذه
3لا يوجد إدخال في الجدول
4واجهات متعددة تلبي الاستعلام
200تجربة شخصية
201تجربة شخصية
255مخصص لتوسيع رسائل المعلومات ICMPv6

لاحظ أن الجدول أعلاه ليس شاملاً. يمكن الاطلاع على القائمة الكاملة الحالية لأنواع ICMPv6 المخصصة على هذا الرابط: IANA: ICMPv6 Parameters .

مجموع التحقق

يوفر بروتوكول ICMPv6 مستوىً أدنى من التحقق من سلامة الرسالة من خلال تضمين مجموع اختباري مكون من 16 بت في ترويسة الرسالة. يُحسب المجموع الاختباري بدءًا من ترويسة وهمية لحقول ترويسة IPv6 وفقًا لمعيار IPv6، [ 6 ] والتي تتكون من عنواني المصدر والوجهة، وطول الحزمة، وحقل الترويسة التالي، الذي تُضبط قيمته على 58. بعد هذه الترويسة الوهمية، يُستكمل حساب المجموع الاختباري مع رسالة ICMPv6. يُجرى حساب المجموع الاختباري وفقًا لمعايير بروتوكول الإنترنت باستخدام جمع المتمم الأحادي ذي 16 بت ، متبوعًا بجمع المتمم الأحادي النهائي للمجموع الاختباري نفسه وإدراجه في حقل المجموع الاختباري. [ 7 ] تجدر الإشارة إلى أن هذه الطريقة تختلف عن طريقة حسابه في بروتوكول ICMP لبروتوكول IPv4 ، ولكنها مشابهة للحساب الذي يُجرى في بروتوكول TCP .

رأس ICMPv6 الزائف
إزاحةثمانية0123
ثمانيةقليل012345678910111213141516171819202122232425262728293031
00عنوان المصدر
432
864
1296
16128عنوان الوجهة
20160
24192
28224
32256طول ICMPv6
36288أصفارالعنوان التالي  (58)

شكل

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

الوجهة غير قابلة للوصول
إزاحة البت0–78-1516-31
01شفرةمجموع التحقق
32غير مستخدم
64نص الرسالة (حجم متغير)
تجاوز الوقت المحدد
إزاحة البت0–78-1516-31
03شفرةمجموع التحقق
32غير مستخدم
64نص الرسالة (حجم متغير)

ويحدد البعض الآخر استخدامًا لأول أربعة بايتات فقط من النص دون أي محتوى محدد آخر:

العبوة كبيرة جدًا
إزاحة البت0–78-1516-31
020مجموع التحقق
32إم تي يو
64نص الرسالة (حجم متغير)
مشكلة المعلمات
إزاحة البت0–78-1516-31
04شفرةمجموع التحقق
32مؤشر
64نص الرسالة (حجم متغير)
طلب صدى
إزاحة البت0–78-1516-31
01280مجموع التحقق
32المعرفرقم التسلسل
64البيانات (حجم متغير)
رد الصدى
إزاحة البت0–78-1516-31
01290مجموع التحقق
32المعرفرقم التسلسل
64البيانات (حجم متغير)

في حالة رسائل بروتوكول اكتشاف الشبكة (NDP)، ​​تُحجز البايتات الأربعة الأولى أو تُستخدم للعلامات/حدود القفزات. بينما يحتوي باقي نص الرسالة على بيانات مُهيكلة غير مُحددة.

طلب جهاز التوجيه
إزاحة البت0–78-1516-31
01330مجموع التحقق
32محجوز
64خيارات (حجم متغير)
إعلان عن جهاز توجيه
إزاحة البت0–78-1516-31
01340مجموع التحقق
32حد القفزةعلامة العنوان المُدارعلامة التكوين الأخرىمحجوزضمان مدى الحياة لجهاز التوجيه
64الوقت المتاح
96وقت إعادة الإرسال
128خيارات (حجم متغير)
التماس من الجيران
إزاحة البت0–78-1516-31
01350مجموع التحقق
32محجوز
64عنوان الهدف (16 بايت)
192خيارات (حجم متغير)
إعلان جار
إزاحة البت0–78-1516-31
01360مجموع التحقق
32من جهاز التوجيه (R)العلم (الأعلام) المطلوبتجاوز (O)محجوز
64عنوان الهدف (16 بايت)
192خيارات (حجم متغير)

في عملية إعادة التوجيه، تُحجز البايتات الأولى من نص الرسالة ولكنها لا تُستخدم. يلي ذلك عنوان الهدف وعنوان الوجهة. ويمكن إضافة خيارات غير محددة في النهاية.

إعادة توجيه ICMPv6
إزاحة البت0–78-1516-31
01370مجموع التحقق
32محجوز
64عنوان الهدف (16 بايت)
192عنوان الوجهة (16 بايت)
320خيارات (حجم متغير)

معالجة الرسائل

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

مراجع

  1. 1 2 أ. كونتا؛ س. ديرينغ (مارس 2006). م. غوبتا (محرر). بروتوكول رسائل التحكم في الإنترنت (ICMPv6) لمواصفات بروتوكول الإنترنت الإصدار 6 (IPv6) . مجموعة عمل الشبكة. doi : 10.17487/RFC4443 . STD 89. RFC 4443 .المعيار 89 للإنترنت . يلغي RFC 2463. يُحدّث RFC 2780. تم تحديثه بواسطة RFC 4884 .   
  2. ت. مروغالسكي؛ م. سيوديلسكي؛ ب. فولز؛ أ. يورتشينكو؛ م. ريتشاردسون؛ س. جيانغ؛ ت. ليمون؛ ت. وينترز (نوفمبر 2018). بروتوكول التكوين الديناميكي للمضيف لبروتوكول الإنترنت الإصدار السادس (DHCPv6) . فريق عمل هندسة الإنترنت . doi : 10.17487/RFC8415 . ISSN 2070-1721 . RFC 8415 . المعيار المقترح. القسم 3. يلغي RFC 3315 و 3633 و 3736 و 4242 و 7083 و 7283 و 7550 . 
  3. م. كروفورد (أغسطس 2000). إعادة ترقيم الموجهات لبروتوكول IPv6 . مجموعة عمل الشبكة. doi : 10.17487/RFC2894 . RFC 2894 .المعيار المقترح.
  4. ر. فيدا؛ ل. كوستا، محرران (يونيو 2004). اكتشاف مستمع البث المتعدد الإصدار 2 (MLDv2) لبروتوكول IPv6 . مجموعة عمل الشبكة. doi : 10.17487/RFC3810 . RFC 3810 .معيار مقترح. تحديثات RFC 2710. تم تحديثه بواسطة RFC 4604 .  
  5. 1 2 ر. بونيكا؛ ر. توماس؛ ج. لينكوڤا؛ س. لينارت؛ م. بوكادير (فبراير 2018). PROBE: أداة مساعدة لفحص الواجهات . فريق عمل هندسة الإنترنت . doi : 10.17487/RFC8335 . ISSN 2070-1721 . RFC 8335 . المعيار المقترح. تحديثات RFC 4884 . 
  6. إس. ديرينغ ؛ آر. هيندن (يوليو 2017). مواصفات بروتوكول الإنترنت، الإصدار 6 (IPv6) . فريق عمل هندسة الإنترنت . doi : 10.17487/RFC8200 . STD 86. RFC 8200 .معيار الإنترنت 86. ثانية. 8.1. عفا عليها الزمن RFC 2460 . 
  7. ر. برادن ؛ د. بورمان؛ س. بارتريدج (سبتمبر 1988). حساب مجموع التحقق للإنترنت . مجموعة عمل الشبكة. doi : 10.17487/RFC1071 . RFC 1071 .معلوماتية. تم التحديث بواسطة RFC 1141 .