نظام العنونة IPv6:
مع التطور والانتشار الكبير لشبكة الانترنت والشبكات المعتمدة بآلية الاتصال على TCP/IPفإن عدد عناوين IPv4أصبح مستهلك بشكل شبه كامل، استخدام شبكات محلية مع عناوين IP خاصة و تقنية NAT ساعد بحل هذه المشكلة ولكنه ليس حل جذري لذلك تم إيجاد IPv6 ليكون كحل طويل الأمد لهذه المشكلة وهو قادر على التعامل مع عدد كبير جداً من عناوين IPوبالتالي يدعم عدد كبير جداً من الأجهزة المتصلة بالانترنت.
تعرفنا في مقال سابق عن عناوين IP بشكل عام
كل الأمور الخاصة بالطبقة الثالثة كآلية توجيه البيانات وبرتوكولات التوجيه كلها تعمل بنفس الطريقة مع عناوين IPv6مع إضافة لبعض التعديلات بسبب اختلاف طول العناوين
الجدول التالي هو مقارنة بين عناوين IPv4 and IPv6
|
IPv4 |
IPv6 |
العنوان |
يستخدم 32 bit |
يستخدم 128 bit |
نوع العنوان |
Unicast, multicast and broadcast |
Unicast, anycast, and multicast والنوع broadcast يتم من خلال استخدام عنوان محدد |
Subnetting and prefix |
يمكن استخدام subnet والبادئة الخاصة بجزء الشبكة يشار لها ب /nn بعد عنوان IP |
يمكن استخدام subnet والبادئة الخاصة بجزء الشبكة يشار لها ب /nnn بعد عنوان IP |
تخصيص العناوين |
Static and dynamic via DHCP |
يدعم عدة طرق لتخصيص عنوان IP: · Static · Static prefix with EUI-64 and other method · Stateless address auto-configuration (SLAAC) · Stateful DHCPv6 |
Private IP |
يوجد عدد من المجالات الخاصة والتي لايمكن استخدامها للوصول لشبكة الانترنت |
يدعم العناوين الخاصة بشكل مشابه ل IPv4 ولا يمكن استخدامها للوصول للانترنت |
Interface IP address |
عنوان واحد فقط |
يمكن استخدام أكثر من عنوان |
DNS |
يستخدم السجل A |
يستخدم السجل AAAA |
IP header |
له حجم متغير بين 40-60 bytes بحسب الخيارات المضافة |
له حجم ثابت 40 bytes ولا يدعم خيارات ولكنه يستخدم ترويسات إضافية لحمل المعلومات لبرتوكولات الطبقة الثالثة |
برتوكولات التوجيه |
يدعم: Distance vector, link-state, hybrid وأكثر البرتوكولات استخداماً هي: RIPv2, OSPFv2, EIGRP, IS-IS for IGP and BGP-4 for EGP |
يدعم: distance vector, link-state and hybrid ويتطلب إصدارات جديدة من برتوكولات محددة مثل: RIPng, OSPFv3, EIGRP for IPv6, MP-BGP |
برتوكول الإدارة |
ICMP |
ICMPv6 |
تحديد العناوين |
يستخدم ARP protocol |
يستخدم: Neigbhor Discovery Protcol مع ICMPv6 |
NAT |
يستخدم NAT مع عناوين IP الخاصة للسماح لها بالاتصال مع خارج الشبكة باستخدام عنوان IP عام |
يحوي على عدد كبير جداً من العناوين وكل جهاز يخصص له عنوان خاص ولا يوجد حاجة لاستخدام NAT |
الشكل التالي هو مثال لعملية اتصال بين الجهاز A والجهاز B باستخدام IPv6 وبشكل مشابه للإصدار الرابع IPv4سيتم تخصيص عنوان لكل جهاز في الطبقة الثالثة وكل router interfaceسيكون له عنوان IPv6أيضاً
الجهاز Aسيقوم بارسال حزمة بيانات IPv6 ليتم تغليفها ضمن Ethernet Frame إلى البوابة الافتراضية default gateway والتي هي الراوتر R1
الراوتر R1يقوم بعملية فك التغليف لحزمة البيانات وينظر إلى جدول التوجيه ليعرف مسار القفزة التالية ويجد أن مسار القفزة التالية هو الراوتر R2ويقوم بتغليف حزمة البيانات على شكل Layer2 Frame ويقوم بارسالها إلى الراوتر R2والذي سوف يقوم بنفس العملية حتى يقوم بإيصال الحزمة إلى الجهاز B

في المثال السابق الاختلاف الواضح عن الاصدار السابق هو شكل عنوان IP ولكن هناك اختلافات أخرى غير مرئية وهي كيف يعرف IPv6 الوجهة الافتراضية default gateway؟ وهل يقوم باستخدام ARPلإيجاد عنوان MAC address لجهاز معروف عنوانه IP ضمن نفس الشبكة الفرعية subnet؟
العديد من البرتوكولات التي تعمل مع الإصدار الرابع IPv4 من الممكن أن تعمل مع الإصدار السادس IPv6 ولكن مع بعض التعديلات ويوجد بعض البرتوكولات غير ضرورية في الإصدار السادس ويوجد بعض البرتوكولات الجديدة التي تم استخدامها، مثلاً ICMP and DHCPلا يتم استخدامهم بشكل مماثل للاصدار السابق لذلك تم إيجاد ICMPv6 and DHCPv6 وآلية عمل البرتوكول ARP تم استبدالها ببرتوكول يدعى IPv6 Neighbor Discoveryوالبرتوكولات OSPF, EIGRPوبرتوكولات التوجيه الأخرى تم تعديلهم للعمل مع الإصدار السادس واصبحوا OSPFv6, EIGRPv6 and RIPng
IPv6 Header:
عناوين الإصدار السادس مصممة لتقدم نفس المهمة الخاصة بعناوين الإصدار الرابع مع تطوير في بعض الأمور الأخرى، المعيار RFC 2460 عرف الترويسة الخاصة ب IPv6 packet

معظم الحقول لها نفس الغرض بالمقارنة مع IPv4ولكن في IPv6 يوجد اختلاف أساسي وهو الإضافات بالترويسات مع طول الترويسة الثابث، IPv6 يسمح للترويسة بحمل معلومات لبرتوكولات الطبقة الثالثة والترويسات الإضافية تتموضع بعد الترويسة الثابتة وقبل الحمولة payload
الحقل Next headerيستخدم لتحديد الترويسة التالية في حزمة البيانات وفي حال عدم وجود ترويسات إضافية فسوف يشير هذا الحقل إلى ترويسة الطبقة الرابعة (مثل TCP header) وفي جال وجود ترويسة إضافية فسوف يشير إلى نوع الترويسة الإضافية.
هذا الإصدار يسمح باستخدام أكثر من إضافة للترويسات بشكل متسلسل وكل ترويسة إضافية تحوي على حقل Next Header والذي يستخدم لتحديد الترويسة الإضافية التالية وأخر ترويسة ستشير إلى ترويسة برتوكول الطبقة الرابعة (مثل TCP)
الشكل التالي يظهر مثال على تسلسل الترويسات الإضافية، أول ترويسة لا تحوي على أي إضافات وبالتالي ستشير إلى الحقل الخاص بترويسة TCPأما في المثال الثالث فيوجد ترويستين إضافيتن الأولى Routing extension haederوالثانية Fragmentation extention headerوالتي سيكون فيها حقل Next Header يشير إلى TCP header

AddressingIPv6:
أكثر إختلاف ملاحظ بين الاصدارين هو طول العنوان، الإصدار السادس IPv6 له طول 128 bitsبينما الإصدار الرابع له طول 32 bitsوالسبب هو أن الهدف من الإصدار السادس الحصول على عدد عناوين أكبر، بالإضافة إلى أن الإصدار الرابع يتم تمثيله بالنظام العشري أو الثنائي أما الإصدار السادس يتم تمثيله بالنظام الست عشري والعنوان يمثل بمجموعات 16 bits – أربع أرقام ست عشرية متبعوعة (:) كما في المثال التالي:
2340:1111:AAAA:0001:1234:5678:9ABC:1234
بعض الأمور المستخدمة لتقليل التعقيد الخاص بهذا النظام:
· الأصفار في بداية كل مجموعة يمكن حذفها
· في حال كانت المجموعة تحوي على أربع اصفار يمكن حذفها وكتابة (::) وهذا الاختصار يمكن أن يحدث لمرة واحدة فقط في العنوان
لنفرض أن لدينا العنوان التالي:
FE00:0000:0000:0001:0000:0000:0000:0056
يمكننا كتابة هذا العنوان على الشكل التالي:
FE00:0:0:1:0:0:0:56
كما يمكن اختصاره بشكل أكبر كتالي:
FE00:0:0:0:1::56
وكما في الإصدار الرابع يمكننا الإشارة للبادئة الخاصة بالشبكة كما في المثال التالي:
2222:1111:0:1:A:B:C:D/64
حيث 64 تشير إلى القسم الخاص لتعريف الشبكة وللحصول على عنوان هذه الشبكة تستبدل باقي الاحرف بعد 64 بأصفار

يمكن كتابة العنوان السابق بشكل:
2222:1111:0:1:0:0:0:0 or 2222:1111:0:1::.
أنواع العناوين في IPv6:
· Unicast: يستخدم لتعريف interface واحد محدد
· Anycast: يستخدم لتعريف مجموعة من interface (عدة عقد) وعندما يستخدم هذا العنوان فإن حزمة البيانات يتم استلامها من قبل أقرب interfaceله هذا العنوان
· Multicast: تستخدم لتعريف مجموعة من interfaceوعندما يستخدم هذا العنوان فإن حزم البيانات يتم تسليمها لكل interface له هذا العنوان
وفي هذا النظام من العنونة لا يوجد عنوان broadcast كما في نظام العنونة IPv4ولإرسال حزمة بيانات بشكل broadcast يتم استخدام multicast addressوفي كل نوع من هذه العناوين يوجد أنواع إضافية أخرى.
عناوين IPv6 الخاصة والمحجوزة:
بشكل مشابه لنظام العنونة IPv4 يوجد بعض العناوين التي لا يجب استخدامها والجدول التالي يظهر هذه العناوين
العنوان |
الاستخدام |
::1/128 |
Loopback address |
::/128 |
عنوان غير محدد |
64:ff9b::/96 |
للترجمة بين IPv4 – Ipv6 |
::ffff:0:0/96 |
IPv4 mapped address |
100::/64 |
تجاهل كتلة العناوين هذه |
2001::/23 |
مخصص لبرتوكول IETF |
2001::/32 |
خاص لبرتوكول TEREDO |
2001:2::/48 |
للمرجعية |
2001:db8::/32 |
للتوثيق |
2001:10::/28 |
خاص ل ORCHID |
2002::/16 |
تحويل من 6to4 |
Fc00::/7 |
Unique-local |
Fe80::/10 |
Linked-scoped unicast |
تخصيص عناوين IPv6:
الإصدار السادس يدعم عدة طرق لتخصيص العناوين وهي:
· Static
· Static prefix with EUI-64
· Stateless address auto configuration (SLAAC)
· Stateful DHCPv6