تبیان، دستیار زندگی
با رشد انفجاری شبکه اینترنت، کلاس های آدرس IP عدم کارایی خود را نشان دادند. شاید در زمان طراحی پروتکل IP هیچ یک از طراحان باور نمی کردند که فضای 32 بیتی آدرس IP و کلاس های آدرس، زمانی رو به پر شدن بگذارد.
عکس نویسنده
عکس نویسنده
بازدید :
زمان تقریبی مطالعه :

چگونه شبکه‌ها را آدرس‌دهی می‌کنیم


با رشد انفجاری شبکه اینترنت، کلاس های آدرس IP عدم کارایی خود را نشان دادند. شاید در زمان طراحی پروتکل IP هیچ یک از طراحان باور نمی کردند که فضای 32 بیتی آدرس IP و کلاس های آدرس، زمانی رو به پر شدن بگذارد. در حالی که صدهزارمین شبکه دنیا در سال 1996 و پانصدهزارمین شبکه در سال 2001 میلادی به اینترنت پیوست!

چگونه شبکه‌ها را آدرس‌دهی می‌کنیم

در این زمان طبیعی بود که کسی نمی توانست کلاس های A و B را ثبت نماید چرا که تمام این آدرس ها قبلا ثبت شده بودند. کلاس های A و B برای صاحبان این آدرس ها بسیار بزرگ بود در حالی که کلاس C کفاف بسیاری از سازمان ها و موسسات بزرگ را نمیداد. تحقیقی که در نیمه اول دهه نود انجام شد نشان می داد که بیش از نیمی از شبکه های ثبت شده با کلاس A (با ظرفیت 1677214 ماشین) و کلاس B (با ظرفیت 65534 ماشین) حداکثر 50 ماشین در شبکه خود دارند!! بدین ترتیب هزاران هزار آدرس IP هدر رفته بود. در طرف مقابل وقتی مثلاً یک دانشگاه تمایل به راه اندازی شبکه ای با حدود 4000 ماشین میزبان داشته باشد مجبور است 16 کلاس C ثبت کند. در این حالت در جدول مسیریاب های ستون فقرات شبکه ی اینترنت به ازای یک شبکه ی واحد باید 16 رکورد مسیر درج شود تا مسیر رسیدن به آن شبکه ی واحد مشخص باشد. اگر این دانشگاه، می توانست کلاس B ثبت کند فقط یک رکورد در جدول مسیر یابی درج می شد ولی در حدود 61000 آدرس IP تلف می شد!

چگونه شبکه‌ها را آدرس‌دهی می‌کنیم

ثبت کلاس های A و B فضای آدرس های IP را هدر می دهد در حالی که کلاس C ناکافی است و منجر به افزایش بسیار زیاد جدول مسیریابی می شود. (شبکه های با بیش از 254 ماشین، 2 رکورد در جدول مسیریابی دارند، بیش از 1022 ماشین چهار رکورد، بیش از 4095 ماشین، 16 رکورد و به همین ترتیب).

اگرچه در پروتکل IPv6 این مشکل به طور کامل برطرف می شود (چون آدرس ها 128 بیتی هستند) ولی می بایست برای نسخه فعلی IP نیز یک چاره ی سریع و موثر اندیشیده میشد. بدین ترتیب ساختار آدرس های "بدون کلاس یا classless" معرفی گردید. پس از عملیاتی شدن این ساختار بر روی مسیرهای شبکه اینترنت، حجم جداول مسیر یابی به طرز چشم گیری کاهش پیدا کرد زیرا تمام شبکه هایی که با بیش از یک کلاس C در شبکه حضور داشتند رکورد آنها یکی شد.

آدرس های بدون کلاس که در فضای آدرس های کلاس C تعریف می شوند اگرچه مثل قبل دو بخش شماره شناسایی شبکه و شماره ماشین را دارند ولی بر خلاف کلاس های A، B و C این دو بخش دارای طول متغیری هستند. به عوان مثال اگر شبکه ای دارای هشت کلاس C متوالی به آدرس های 215.50.24.0 تا 215.50.31.0 باشد می توان شماره شناسایی این شبکه را 215.50.24.0 با 21 بیت NetID (به جای 24 بیت) در نظر گرفت.

به شبکه ای که با چند کلاس متوالی C آدرس دهی می شود اصطلاحاً ابر شبکه یا supernet گفته می شود

مثلا برای 215.50.24.0 خواهیم داشت :

00000000 000 00011 00110010 11010111

و برای 215.50.31.0 به صورت زیر است:

00000000 111 00011 00110010 11010111

قسمتی که با رنگ قرمز نشان داده شده است قسمت NetID و مابقی در HostID است.

از آنجایی که در آدرس های بدون کلاس اندازه ی دقیق بخش NetID مشخص نیست لذا همیشه آدرس های بدون کلاس با یک "الگو یا mask" مشخص می شود. در مثال قبلی برای مشخص کردن شماره شناسایی شبکه، گذشته از تعیین آدرس 215.50.24.0 باید الگو 255.255.240.0 نیز در کنار آن مشخص باشد. بیت های 1 در این الگو، فضای در نظر گرفته شده برای شماره ی شناسایی شبکه (NetID) را تعیین می کند.

چگونه شبکه‌ها را آدرس‌دهی می‌کنیم

به شبکه ای که با چند کلاس متوالی C آدرس دهی می شود اصطلاحاً ابر شبکه یا supernet گفته می شود.

یک آدرس بدون کلاس به همراه الگوی آن معنا پیدا می کند. در ضمن مسیریاب ها نیز در تحلیل الگوها به اشتباه نخواهند افتاد. ممکن است سوال کنید مسیریاب از کجا متوجه می شود که مثلا الگوی 255.255.252.0 الگوی کلاس B نیست بلکه الگوی آدرس های بدون کلاس است؟

جواب این سوال ساده است. تمام آدرس های بدون کلاس در فضای آدرس های کلاس C هستند. یعنی عدد سمت چپ آنها در محدوده 192 تا 223 است. در این حالت قطعاً الگوی 255.255.252.0 / 194.50.24.0 متعلق به کلاس B نخواهد بود. زیرا آدرس IP به شماره ی 194.50.24.0 نشان دهنده ی کلاس C است.

فاطمه مجدآبادی

بخش دانش و زندگی تبیان


منابع:

Internet engineering / E.Malekian

Computer network

A top-down approach / Kurose & Ross