تفاوت بین IPv4 و IPv6 چیست؟

تفاوت بین IPv4 و IPv6 چیست؟

به عنوان توسعه دهنده ی وب و یا مدیر یک مجموعه همیشه خوب است که حواسمان به تغییرات پروتکل ها (مانند IPv4 و IPv6 و HTTP/2) و نحوه ی اثرگذاری آن ها بر کارمان باشد. آدرس های IPv4 در حال انقراض هستند و دنیا در حال حرکت به سمت IPv6 است تا بتوانیم تمام دستگاه ها را به اینترنت متصل کنیم. در این مقاله می خواهیم در رابطه با تفاوت های بین IPv4 و IPv6 صحبت کرده و به سرگذشت IPv5 نگاهی بیندازیم.

IPv4 چیست؟

IPv4 (مخفف Internet Protocol Version 4 - به معنی نسخه ی چهارم پروتکل اینترنت) یک عدد دودویی (باینری - binary) که برای شناسایی کامپیوترها و دستگاه های دیگر در شبکه ی TCP/IP مورد استفاده قرار می گیرد. اولین نسخه از آن در سال 1983 میلادی و توسط گروه (Internet Engineering Task Force (IETF و در  RFC 791 (نسخه ی به روز رسانی شده ی RFC 760) تعریف شد. آدرس های IPv4 در واقع 32 بیتی هستند و 5 کلاس مختلف به نام های A و B و C و D و E دارند. از این میان کلاس های A و B و C برای مشخص کردن آدرس میزبانِ (host) شبکه طول بیت های مختلفی دارند. آدرس های کلاس D برای برای multicasting و آدرس های کلاس E برای استفاده های آینده رزرو شده اند. IPv4 از رکوردهای منابع کلاس A در DNS استفاده می کند تا نام هاست ها را به IP ها متصل کند.

مثال زیر را ببینید؛ این یک آدرس IPv4 برای www.google.com است (172.16.254.1). اعداد بین هر علامت نقطه (علامت اعشار) بین 0 و 255 هستند و octet نام دارند؛ بنابراین در هر آدرس IP چهار octet وجود دارد:

قالب کلی آدرس های IPv4 - منبع تصویر ویکی پدیا
قالب کلی آدرس های IPv4 - منبع تصویر ویکی پدیا

از آنجا که در هر آدرس IP فقط 4 octet وجود دارد، تعداد IP های ممکن 4.2 میلیارد خواهد بود. شاید به نظرتان 4 میلیارد عدد بزرگی است اما از اوایل دهه ی 1980 میلادی و شایع شدن اینترنت این محدودیت باعث ایجاد مشکلات متعددی شده است، چرا که دیگر هیچ آدرسی باقی نمانده است (مگر در شرایط خاص و برای استفاده های خصوصی). برای روشن تر شدن موضوع باید بگویم که مجموعه ی آدرس های IPv4 رایگان ARIN در 24 سپتامبر سال 2015 خالی شد! همچنین با مراجعه به http://www.potaroo.net/tools/ipv4/ می توانید برخی دیگر از مجموعه IP های خالی شده را مشاهده کنید:

تاریخ تمام شدن IP های موجود برای مجموعه های مختلف
تاریخ تمام شدن IP های موجود برای مجموعه های مختلف
نموداری از آدرس های IPv4 باقی مانده
نموداری از آدرس های IPv4 باقی مانده

وضعیت چنان بحرانی شده است که برای دریافت IPv4 باید پروسه ای بسیار طولانی را طی کنید تا مشخص شود که آیا چنین IP به شما تعلق می گیرد یا خیر. به همین خاطر IPv6 ارائه شد.

ابزارهای تست Ping برای IPv4

برای مشخص کردن ping یک آدرس IPv4 می توانید command prompt ویندوز را باز کرده و داخل آن کلمه ی ping را به همراه آدرس سایت مورد نظرتان بنویسید. مثلا ping google.com

گرفتن ping از آدرس های IPv4
گرفتن ping از آدرس های IPv4

ping گرفتن یعنی ارسال بسته های ICMP به آدرسی خاص و اندازه گیری زمان سپری شده تا لحظه ی دریافت پاسخ. مفهوم ping به این دلیل اهمیت پیدا می کند که به latency وب سایت ها مربوط می شود و به طور مستقیم با تاخیر و کُندی وب سایت ها (در واحد میلی ثانیه) در ارتباط است؛ چقدر طول می کشد که داده ای در اینترنت جا به جا شود، به مقصدش برسد و به شما برگردد. بنابراین هر چه ping سریع تر باشد (مقدار ping کمتر باشد) یعنی اتصال ما زنده تر و سریع تر است.

IPv6 چیست؟

IPv6 (مخفف Internet Protocol Version 6) به دلیل کمبود آدرس های IP برای جایگزینی IPv4 طراحی شد. این بار گروه IETF در سال 1996 و در RFC 1883 معرفی شد. آدرس های IPv6 دارای 128 بیت طول (16 بایت) هستند بنابراین با IPv6 می توانیم 2 به توان 128 آدرس IP مختلف داشته باشیم! اگر این عدد را محاسبه کنیم چیزی شبیه به 340,282,366,920,938,000,000,000,000,000,000,000,000 می شود! بنابراین دیگر جای نگرانی از بابت کمبود آدرس های IP موجود نداریم.

IPv6 (به جای A) از رکوردهای منابع AAAA در DNS برای میزبانی IP ها استفاده کرده و از IPSec پشتیبانی می کند. آدرس زیر یک نمونه آدرس IPv6 متعلق به گوگل است:

2607:f8b0:4005:804::200e

همچنین باید بدانید که صفرهای ابتدایی قابل حذف هستند چرا که آدرس های IPv6 می توانند به سه حالت فشرده شده، فشرده نشده و کاملا آزاد (بدون هیچ فشرده سازی) نوشته شوند.

قالب کلی آدرس های IPv6 - منبع تصویر ویکی پدیا - مقایسه ipv4 و ipv6
قالب کلی آدرس های IPv6 - منبع تصویر ویکی پدیا

همچنین اگر به آمار گزارش شده توسط گوگل از اتصال از طریق IPv6 توجه کنید متوجه می شوید که میزان اتصال با IPv6 سر به فلک گذاشته است و با سرعتی باورنکردنی در حال رشد می باشد. در صف اول این تکنولوژی بلژیک با 45 درصد و آمریکا با 29 درصد قرار دارند.

تست Ping برای آدرس های IPv6

برای مشخص کردن ping یک آدرس IPv6 می توانید command prompt ویندوز را باز کرده و داخل آن کلمه ی ping را به همراه آدرس سایت مورد نظرتان بنویسید.

برای سیستم های UNIX: 

ping6 google.com

برای سیستم های ویندوز:

ping google.com -6

تست ping برای آدرس های IPv6 - مقایسه ipv4 و ipv6
تست ping برای آدرس های IPv6

اگر می خواهید بدانید که ISP شما (شرکت هایی مانند شاتل، صبانت، مخابرات و ... که خدمات اینترنت و پهنای باند ارائه می کنند) از IPv6 استفاده می کند یا خیر می توانید به سایت هایی مانند test-ipv6.com و  ipv6test.google.com سر بزنید و اتصال خود را چک کنید. توجه داشته باشید که هنوز ISP های بسیار زیادی (حتی در خارج از ایران) از IPv6 استفاده نمی کنند چرا که این کار به تغییرات زیر بنایی مهمی نیاز دارد.

دیگر مزایای IPv6

بیشتر بودن تعداد آدرس ها تنها مزیت IPv6 نیست. از مزایای دیگر آن می توان به موارد زیر اشاره کرد:

  • routing بهینه شده
  • پیکربندی خودکار قابلیت ها جهت مدیریت آسان تر (عدم نیاز به DHCP)
  • عدم وجود NAT (شفافیت بهتر برای تمامی دستگاه ها)
  • عدم وجود IP های تکراری
  • داشتن IPSEC به صورت پیش فرض
  • multicast routing ارتقاء یافته و بهتر
  • قالب های ساده شده ی header

IPv5 چه شد؟

هیچ وقت حرفی از IPv5 به میان نیامد و دلیلش هم این بود که IPv5 برای دلایل دیگری استفاده می شد! آقای Raffi Krikorian مقاله ای کامل در این رابطه نوشته است که می توانید از آن استفاده کنید. به طور خلاصه می توان گفت پروتکلی به نام  Internet Stream Protocol در دهه ی 1970 میلادی برای انتقال صوت و ویدیو ارائه شد. در سال 1990 بازبینی شده و به ST2 تغییر نام پیدا کرد. ST2 بسته (packet) های خود را با internet protocol version number 5 مشخص می کند اما هیچ گاه با نام IPv5 معروف نشد.

نویسنده شوید
دیدگاه‌های شما

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.