آدرس دهی اینترنتی یکی از ارکان اصلی در زیرساختهای شبکه است که به کمک آن دستگاههای مختلف در سراسر جهان به یکدیگر متصل میشوند. یکی از اصلیترین سیستمهای آدرسدهی در شبکههای اینترنتی، IPv4 (Internet Protocol version 4) است که از ابتدای توسعه اینترنت تاکنون بهعنوان پایهای برای ارتباطات شبکهای عمل کرده است. این آدرسها در شبکههای مختلف، از جمله سرورهای متصل به اینترنت استفاده میشوند که برخی از آنها برای مقاصدی مانند اتصال پایدار به اینترنت نیاز به IP ثابت دارند.آدرسهای IPv4 بهطور گسترده در شبکهها و سیستمهای مختلف استفاده میشوند، هرچند که با توجه به رشد سریع دستگاههای متصل به اینترنت، نسخه جدیدتری به نام IPv6 معرفی شده است.
آدرس IPv4 یک عدد 32 بیتی است که معمولاً به صورت چهار عدد دهدهی که با نقطه از یکدیگر جدا شدهاند (مانند 192.168.1.1) نوشته میشود. این سیستم به دلیل محدودیت تعداد آدرسها و نیاز به مدیریت بهتر فضای آدرسدهی، به کلاسهای مختلف تقسیمبندی میشود. در این مقاله، قصد داریم به بررسی دقیقتر کلاسهای IPv4، کاربردهای هرکدام، و نحوه تخصیص آنها در شبکههای مختلف بپردازیم.
تاریخچه و توسعه IPv4
IPv4 به عنوان یکی از نخستین استانداردهای پروتکل اینترنتی توسعه یافت تا به نیازهای ارتباطی شبکههای کامپیوتری پاسخ دهد. اولین نسخه این پروتکل در سال ۱۹۸۱ در سند RFC 791 توسط موسسه IETF (Internet Engineering Task Force) به تصویب رسید. این پروتکل توانست به سرعت جای خود را در شبکههای مختلف پیدا کند و تا به امروز نیز به عنوان پروتکل اصلی در اینترنت استفاده میشود. اما با گذشت زمان و افزایش دستگاههای متصل به اینترنت، محدودیتهای این نسخه از پروتکل نیز آشکار شد.
آدرس IP چیست؟
آدرس IP (Internet Protocol Address)، یک شناسه منحصر به فرد است که به دستگاهی متصل به شبکه اختصاص داده میشود. میتوان آن را به عنوان یک برچسب عددی در نظر گرفت که به کامپیوترها، سرورها، تلفنهای هوشمند و دیگر دستگاهها اجازه میدهد تا در یک شبکه یکدیگر را پیدا کرده و با هم ارتباط برقرار کنند. این آدرسها تضمین میکنند که دادههای ارسال شده در اینترنت به مقصد صحیح برسند.
IPv4 سیستم اصلی آدرسدهی شبکه است که از سال 1983 استفاده میشود. با وجود حرکت تدریجی به سوی IPv6، IPv4 هنوز به عنوان استاندارد اصلی ارتباطات اینترنتی و شبکهای استفاده میشود.
فرمت آدرس IPv4
آدرسهای IPv4 بر اساس سیستم دودویی (باینری) بوده و شامل 32 رقم باینری (بیت) میباشند. هر آدرس IPv4 یک عدد 32 بیتی است که به چهار بخش تقسیم میشود که به آنها «اُکتِت» یا «بایت» میگویند. هر اُکتِت شامل 8 بیت است که آدرس کامل 32 بیتی را تشکیل میدهند. اصطلاح «اُکتِت» به این دلیل استفاده میشود که هر گروه دقیقاً شامل 8 بیت است. در قالب خوانایی بیشتر برای انسانها، این اُکتِتها با نقطه از هم جدا میشوند؛ فرمتی که به آن «آدرس دهدهی نقطهدار» میگویند.
هر اُکتِت میتواند مقداری بین 0 تا 255 داشته باشد، که از این واقعیت ناشی میشود که یک عدد باینری 8 بیتی میتواند 256 مقدار مختلف (2^8=256) را نمایش دهد.
مثالی از آدرس IPv4 ممکن است به این صورت باشد: 192.168.43.241
نمایش دودویی
اگرچه آدرسهای IPv4 برای خوانایی بیشتر به صورت دهدهی نمایش داده میشوند، اما توسط کامپیوترها به صورت دودویی پردازش میشوند. هر اُکتِت به یک عدد باینری 8 بیتی تبدیل میشود. برای مثال، آدرس 192.168.43.241 به این صورت در قالب دودویی نمایش داده میشود:
- 192: 11000000
- 168: 10101000
- 43: 00101011
- 241: 1111001
بنابراین، آدرس 192.168.43.241 در قالب دودویی به این صورت است: 11000000.10101000.00101011.1111001
اهمیت هر بیت
هر بیت در یک آدرس IPv4 اطلاعاتی را فراهم میکند که به شناسایی شبکه و دستگاه خاص در آن شبکه کمک میکند، و همچنین تصمیمات مسیریابی و مدیریت زیرشبکهها را امکانپذیر میسازد.
- شبکه و میزبان: بیتها برای تعیین بخش شبکه و بخش میزبان آدرس استفاده میشوند. بسته به subnet mask، برخی بیتها نشاندهنده شبکه هستند و بقیه بیتها نشاندهنده میزبان در آن شبکه هستند.
- مسیریابی: روترها از شکل دودویی آدرسهای IP برای تصمیمگیریهای مسیریابی استفاده میکنند. بخش شبکه به تعیین شبکه مقصد کمک میکند، در حالی که بخش میزبان دستگاه خاصی را در آن شبکه شناسایی میکند.
- ایجاد subnet: نمایش دودویی امکان ایجاد زیرشبکه یا subnet را فراهم میکند. با تغییر بیتها (با استفاده از subnet mask)، شبکههای بزرگتر میتوانند به شبکههای کوچکتر و مدیریتپذیرتر تقسیم شوند.
محدودیتهای IPv4
با وجود اینکه IPv4 برای مدت طولانی به خوبی عمل کرده است، محدودیتهایی نیز دارد. مهمترین محدودیت آن، تعداد محدود آدرسهای ممکن است. این موضوع با رشد سریع اینترنت و ورود فناوریهایی مانند اینترنت اشیا (IoT) بیش از پیش محسوس شده است. برای مقابله با این مشکل، راهحلهای مختلفی مانند NAT (Network Address Translation) و نسخه جدیدتری از IP به نام IPv6 ارائه شدهاند. اما قبل از بررسی این راهحلها، بیایید به جزئیات کلاسهای IPv4 بپردازیم.
کلاسهای آدرس IPv4
برای مدیریت بهتر فضای آدرسدهی و همچنین تخصیص بهینه آدرسها در شبکههای کوچک، متوسط و بزرگ، IPv4 به پنج کلاس اصلی تقسیمبندی شده است: کلاس A، کلاس B، کلاس C، کلاس D و کلاس E. هرکدام از این کلاسها برای مقاصد و سناریوهای مختلف طراحی شدهاند.
این کلاسها بر اساس محدودهای از آدرسهای IP که میتوانند به آنها تعلق گیرند، تقسیم شدهاند. تفاوت اصلی بین این کلاسها در تعداد بیتهای شبکه (Network bits) و بیتهای میزبان (Host bits) است که به هر کلاس اختصاص داده شده است.
کلاس A
نشانیهای کلاس A معمولاً توسط سازمانهای بسیار بزرگ مانند شرکتهای چندملیتی و نهادهای دولتی که به فضای وسیعی از نشانیهای IP نیاز دارند، استفاده میشوند.
- محدوده آدرس: 1.0.0.0 تا 127.0.0.0
- subnet mask پیشفرض: 255.0.0.0
- تعداد میزبانها در هر شبکه: 16,777,214
- تعداد شبکهها: 128 (تنها 126 مورد قابل استفاده هستند، زیرا دو شبکه برای موارد خاص رزرو شدهاند)
کلاس B
آدرسهای کلاس B عمدتاً توسط سازمانهای متوسط و بزرگ مانند دانشگاهها، شرکتهای متوسط و ارائهدهندگان خدمات اینترنت منطقهای استفاده میشوند.
- محدوده آدرس: 128.0.0.0 تا 191.255.0.0
- subnet mask پیشفرض: 255.255.0.0
- تعداد میزبانها در هر شبکه: 65,534
- تعداد شبکهها: 16,384
کلاس C
آدرسهای کلاس C برای شبکههای کوچکتر استفاده میشوند و معمولاً در محیطهای اداری، سازمانهای آموزشی با چندین بخش و شبکههای خانگی مورد استفاده قرار میگیرند.
- محدوده آدرس: 192.0.0.0 تا 223.255.255.0
- subnet mask پیشفرض: 255.255.255.0
- تعداد میزبانها در هر شبکه: 254
- تعداد شبکهها: 2,097,152
کلاس D
آدرسهای کلاس D برای ارتباط چندپخشی (Multicast) رزرو شدهاند، جایی که یک بسته به صورت همزمان به چندین گیرنده ارسال میشود.
- محدوده آدرس: 224.0.0.0 تا 239.255.255.255
- تخصیص به گروههای چندپخشی یا multicast: آدرسهای کلاس D برای شناسایی گروههای مالتیکست استفاده میشوند.
کلاس E
کلاس E برای مصارف آینده و اهداف تحقیقاتی رزرو شده است. این کلاس در حال حاضر در شبکههای عمومی استفاده نمیشود و تنها در موارد خاص و برای اهداف آزمایشی ممکن است به کار گرفته شود.
- محدوده آدرس: 240.0.0.0 تا 255.255.255.255
محدودههای ویژه آدرس IP
علاوه بر کلاسهای استاندارد، محدودههای خاصی از آدرسهای IP وجود دارند که برای اهداف خاصی طراحی شدهاند.
آدرسهای Loopback
آدرسهای لوپبک برای آزمایشهای داخلی و انجام تشخیصها بر روی دستگاه محلی استفاده میشوند.
- محدوده آدرس: 127.0.0.0 تا 127.255.255.255
- آدرس معمول: 127.0.0.1 (که به آن “localhost” نیز میگویند)
آدرسهای خصوصی
آدرسهای خصوصی برای استفاده در شبکههای داخلی رزرو شدهاند.
- محدوده آدرسها:
- کلاس A:از 10.0.0.0 تا 10.255.255.255
- کلاس B: از 172.16.0.0 تا 172.31.255.255
- کلاس C: از 192.168.0.0 تا 192.168.255.255
APIPA (Automatic Private IP Addressing)
در صورتی که دستگاه نتواند از سرور DHCP آدرس IP دریافت کند، به طور خودکار از محدوده 169.254.0.0/16 به آن آدرس اختصاص داده میشود.
- محدوده آدرس: 169.254.0.0/16
NAT و حل مشکل کمبود آدرس
با توجه به محدودیت آدرسهای IPv4، NAT یکی از تکنیکهای کلیدی است که امکان استفاده مجدد از آدرسهای خصوصی در شبکههای مختلف را فراهم میکند. NAT به دستگاههای موجود در یک شبکه خصوصی اجازه میدهد تا از طریق یک آدرس عمومی واحد به اینترنت متصل شوند، در حالی که همچنان از آدرسهای خصوصی در داخل شبکه استفاده میکنند.
معرفی IPv6
با توجه به محدودیتهای آدرسدهی IPv4 و رشد سریع تعداد دستگاههای متصل به اینترنت، IPv6 به عنوان نسخه جدید پروتکل اینترنت معرفی شد. IPv6 از آدرسهای 128 بیتی استفاده میکند که امکان تخصیص تعداد بسیار بیشتری از آدرسها را فراهم میآورد.
از جمله مزایای IPv6 میتوان به موارد زیر اشاره کرد:
- تعداد بیشتر آدرسها: IPv6 با استفاده از آدرسهای 128 بیتی امکان تخصیص تریلیونها آدرس را فراهم میکند.
- امنیت بهتر: IPv6 از ابتدا با ویژگیهای امنیتی یکپارچه طراحی شده است.
- قابلیت چندپخشی بهتر: IPv6 پشتیبانی بهتری از چندپخشی (Multicasting) دارد.
- سادهتر شدن پیکربندی: IPv6 فرآیند پیکربندی دستگاههای جدید را بهبود داده است.
جمع بندی
آدرسدهی IPv4 به مدت چندین دهه پایهای برای شبکههای اینترنتی بوده است. با استفاده از تقسیمبندی به کلاسهای مختلف و تکنیکهایی مانند NAT، IPv4 توانسته است با رشد سریع اینترنت و تعداد دستگاههای متصل مقابله کند. هرچند با توجه به محدودیتهای این پروتکل، نسخه جدیدتری به نام IPv6 معرفی شده که آینده آدرسدهی اینترنتی را در دست دارد.
با این وجود، IPv4 همچنان در بسیاری از شبکهها استفاده میشود و دانش درباره کلاسهای مختلف آن و نحوه تخصیص آدرسها برای مدیران شبکه و متخصصان IT ضروری است.