شرح IPv4 Header / IPv6 Header
و بروتوكول الـ IP بتكون من Header و في داخل هذا الـ Header يتوجد عدة خانات ، كل خانة له وظيفه محددة حيث يتم بناء الـ Header من اعلى الى اسفل بشكل مرتب بعد أن يقوم بإضافة المعلومات و البيانات المطلوبة والتي يجب أن يتم اضافته في كل خانة من الخانة ، سأقوم بشرح هذه الخانة بالتفصيل الممل و نستعرف على كل خانة ما هي وظيفته و على ماذا تحتوي ، و يجب أن نعلم إنه كما ذكراً سابقاً يوجد نوعان من العناوين عنوان من الإصدار الرابع و عنوان من الإصدار السادس و كل من هذه العناوين تحتوي على Header خاص بكل عنوان ، و مع العلم إنه يوجد بعض التغيرات ما بين الـ IPv4 Header و IPv6 Header سأقوم بشرح كل واحد بشكل منفرد لنتعرف عليهم بشكل ممتاز .
قبل أن نبداء في الشرح يجب أن نتعرف على حجم و طول كل من الـ IPv4 Header و IPv6 Header لنكون على معرفة في كل شيء .
- IPv4 Header : حجمه byte 32، و طوله byte 20 .
- IPv6 Header : حجمه byte 32، و طوله byte 40 .
كما في النماذج التالية :
شرح IPv4 Header
الآن سنبداء بتعرف على IPv4 Header سنتعرف على جميع الخانات الموجودة في داخله ، و بعدها سنتعرف على IPv6 Header .
الخانات الموجودة في IPv4 Header عددهم 14 خانة سأقوم بذكرهم و شرحهم .
Version, IHL, Type of Service, Total Length, Identification, Flags, Fregment Offset, Time to live, Protocol, Header Checksum, Source Address, Destination Address, Options, Padding.
هذه هي الخانات الموجودة في عنوان الإصدار الرابع كما هي موجودة في النموذج اعلى و سأقوم الآن بشرح كل واحدة .
- النسخة Version : هذه الخانة المسؤولة عن ترويسة البروتوكول الخاص في الإنترنت ، حيث تقوم بتحديد رقم الصيغة و رقم نسخة أو اصدار البروتوكول طبعا الـ IPv4 ليستطيع المستقبل فهم الية التعامل مع الـ Header و أجزاءه و خاناته ، و حجم هذه الخانة bit 4.
- IHL: وظيفة هذه الخانة إنه تقوم بعملية ترويس لبروتوكول الـ IP ليكون بحجم bit 32 ، حيث يدل على بداية جمع المعلومات و حجم هذه الخانة bit 4 .
- Type of Service : هذه الخانة المسؤولة عن تحديد نوع الخدمات المطولبة ، مثل خدمة نقل المعلومات و البيانات التي يرساله المستخدمين و معلومات التوجيه و الكثير من الخدامات الآخر و حجم هذه الخانة bit 8 .
- Total Length : هذه الخانة هي المسؤولة عن تحديد طول الرسالة أو بمعنى آخر طول حزمة البيانات و بعده يقوم بإضافة طول التروسية و حجم هذه الخانة bit 16 .
- Identification : هذه الخانة المسؤولة عن اعادة تجميع الحزم كما كانت من بداية تجميعها و تستخدم ايضاً لتميز الحزم عن بعضهم البعض ، وحجم هذه الخانة bit 16 .
- Flags : هذه الخانة هي المسؤولة عن تقنية الاتصال مثل تقوم بعملية تحديد لحزمة البيانات المستقبلة هل هي آخر حزمة من البيانات أو لا و حجم هذه الخانة hit 3 .
- Fregment Offset : هذه الخانة من أهم الخانات الموجودة و وظيفة هذه الخانة إنه تقوم بعملية تجزئة للحزمة المرسلة إذا كانت كبيرة ، بمعنى كبيرة إذا كانت أكبر من الحجم المسموح به في داخل الشبكة و حجم هذه الخانة bit 13 .
- Time to live : هذه الخانة المخصصة لعملية الوقت مثل عندما ترسل الحزمة يجب أن نعلم أن في داخل الحزمة يوجد عدة بيانات أو خصائص ، حيث يتم تحديد وقت معين لهذه الحزمة ولكن في حال بقة هذه الحزمة تدور في شبكة الايثرنيت لفترة أطول من الازم أو قد تم اجتياز الوقت المحدد لهذه الحزمة ، دون أن تصل للهدف المطولب ستتوقف الحزمة عن عملية الإرسال و ستقوم بالغاء العملية بنفسها و حجم هذه الخانة bit 8 .
- Protocol : هذه الخانة المسؤولة عن البروتوكولات التي سيتم استخدامها في جزء من البيانات المرسلة في داخل الحزمة و حجم هذه الخانة bit 8 .
- Header Checksum : تستخدم هذه الخانة في عملية التأكد من سلامة البيانات في اقسام تجميع البيانات ما قبل إرسال ه حيث تقوم هذه الخانة ببعض العملية الحسابية و حساب نتيجتها و إذا تأكد من إنه صحيح سيتم إرسال ، و عند وصول الرسالة للهدف المطلوب سيتم إعادة حساب القيمة مرة أخرى فإذا تطابقت القيمتان سيتم التاكد من من سلامة النقل هذه .
- Source Address : هذه الخانة المسؤولة عن عنوان الـ IP لجهاز المرسل ، وحجم الخانة bit 32 .
- Destination Address : هذه الخانة المسؤولة عن عنوان الـ IP لجهاز المستقبل ، وحجم هذه الخانة bit 32 .
- Options : هذه الخانة تستخدم في عملية الخيارات مثل وظائف التحكم في الاتصالات مثل الأمن و التوجيه و المسارات هذه غير ضرورية، ويبدا حجم هذه الخانة من 0 الى 32 .
- Padding أو Data : هذه الخانة هي من أهم الخانة التي قمنا بذكرها و وظيفة هذه الخانة إنه تحتوي على جميع البيانات التي قمنا بذكرها و التي سيتم إرساله ، هذه الخانة لا يوجد له حجم محدد بينما تاخذ حجمه عندما ا تكتمل البيانات كلها و مع العلم إنه البيانات متغيرات بمعنى إنه لا يوجد له حجم حدد و هذه الخانة هي المعتمد عليها من جميع الخانة التي ذكرنها مسبقاً .
شرح IPv6 Header
IPv6 Header : قبل أن نبداء في التعرف على الإصدار السادس يجب أن نتذكر إنه الـ IPv4 Header يتكون من 14 خانة، و تم اختصار 8 خانات في الإصدار السادس ليصبح 8 خانة سأقوم بذكرهم مع العلم إنهم نفس الحقول ولكن يوجد بعض الاختلف .
- النسخة Version : هذه الخانة المسؤولة عن ترويسة البروتوكول الخاص في الإنترنت ، حيث تقوم بتحديد رقم الصيغة و رقم نسخة أو اصدار البروتوكول طبعاً الـ IPv6 ليستطيع المستقبل فهم آلية التعامل مع الـ Header و أجزاءه و خاناته ، و حجم هذه الخانة bit 4.
- Traffic Class : هذه الخانة نفسه خانة الـ Type of Service ولكن تم تغيره اسمها في الإصدار السادس لتكون Traffic Class.
- Flow Label : هذه خانة جديد تم اضافتها في الإصدار السادس ولم تكن موجودة في الإصدار الرابع ، و هي الخانة المسؤولة عن تحديد تدفق البكت و تستخدم ايضاً مع جودة الخدمة .
- Payload Length : هذه الخانة نفسه خانة الـ Total Length في الإصدار الرابع و تم تغيره لـ Payload Length في الإصدار السادس .
- Next Header : هذه الخانة نفسه الـ Protocol في الإصدار الرابع و تم تغيره لـ Next Header في الإصدار السادس .
- Hop Limit : هذه الخانة هي نفسه Time to live في الإصدار الرابع و تم تغيره لـ Hop Limit في الإصدار السادس .
- Source Address : هذه الخانة المسؤولة عن عنوان الـ IP الخاص في جهاز المرسل و يكون حجم عنوان الإصدار السادس في هذه الخانة bit 128 بينما في هذا الحقل في الإصدار الرابع يكون حجم العناون bit 32 ، و حجم هذه الخانة على حجم العنوان bit 128 .
- Destination Address : هذه الخانة المسؤولة عن عنوان الـ IP الخاص في جهاز المستقبل ويكون ايضاً عنوان من الإصدار السادس و يكون حجم هذه الخانة bit 128 كما هي في خانة المرسل ، و حجم الخانة سيكون ايضاً bit 128 على حجم العنوان .
الخانات التي تم حذفها من الإصدار السادس :Checksum, Option, Fragmentatio .