آموزش رایگان ccna Enterprise؛ آدرسدهی در پروتکل TCP/IP چگونه انجام میشود؟
در این قسمت از سلسله مقالات آموزش ccna به انواع کلاسهای IP پرداخته و مواردی مانند قواعد تعریف کلاسها، آدرس loopback، آدرس خصوصی، آدرس APIPA، طرحهای آدرسدهی و… را بررسی میکنیم. با فالنیک همراه باشید.
- آدرسدهی در TCP/IP چگونه است؟
- درک سیستم دودویی (باینری)
- آدرس کلاسها در پروتکل IP
- آدرسهای کلاس A
- آدرسهای کلاس B
- آدرسهای کلاس C
- آدرسهای کلاس D
- آدرسهای کلاس E
- قواعد تعریف کلاسها (Rules for Defining Classes) در پروتکل IP
- آدرس Loopback
- آدرسهای خصوصی (Private Addresses)
- APIPA چیست؟
- آدرسهای آیپی نامعتبر برای میزبانها (Invalid IP Addresses for Hosts)
- طرحهای آدرسدهی (Addressing Schemes)
آدرسدهی در TCP/IP چگونه است؟
اجازه دهید شروع این بخش را با نمایش دودویی یک آدرس آیپی آغاز کنیم تا مطمئن شویم قبل از رفتن به مطالب پیشرفتهتر که مبتنی بر تبدیل مقادیر باینری به کلاسهای اعشاری هستند آمادگی اولیه را پیدا کردهاید.
درک سیستم دودویی (باینری)
از مطالب شماره قبل میدانیم که آدرس IP یک آدرس 32 بیتی است که به چهار گروه هشت بیتی تقسیم میشود. چهار اکتت معمولاً به عنوان مقادیر اعشاری نمایش داده میشوند، اما امکان نمایش آنها به شکل دودویی مشابه حالت زیر وجود دارد:
11000000 10101000 00000001 00001111
توجه داشته باشید که چهار مجموعه هشت بیتی (یک یا صفر) وجود دارد که در مجموع 32 بیت (هشت × چهار مجموعه) میشوند و یک آدرس IP را تشکیل میدهند. اکنون اجازه دهید به نحوه نمایش دودویی یک اکتت اشاره کنیم.
مقادیر هشت بیت در هر اکتت در جدول زیر نشان داده شده است. مشاهده میکنید که بیت اول در یک اکتت (سمت راست) دارای مقدار اعشاری یک است، بیت دوم دارای مقدار اعشاری دو، بیت سوم دارای مقدار اعشاری چهار است و مقادیر با هر بیت اضافی دو برابر میشوند. همچنین، میتوانید مشاهده کنید که بیت هشتم دارای اعشار 128 است.
نکته: بیت اول به عنوان بیت کم اهمیت یا بیت مرتبه پایین شناخته میشود، در حالی که بیت هشتم به عنوان بیت مهم یا بیت مرتبه بالا شناخته میشود.
برای محاسبه مقدار باینری یک اکتت با یک عدد اعشاری مانند 192، باید بیتهایی را فعال یا در اصطلاح تخصصی «روشن» کنیم تا به عدد 192 برسیم. همانگونه که در جدول زیر نشان داده شده است.
در جدول، توجه داشته باشید که بیت هشت و بیت هفت برای ارائه مقدار 128 + 64 روشن هستند که برابر با 192 است. بیتی که حالت روشن دارد 1 و حالت خاموش 0 میگیرد. بنابراین ترکیب هشت بیت برای ساخت عدد 192 برابر با 11000000 نیاز است.
اکنون که میدانید چگونه یک مقدار اعشاری را به باینری و یک مقدار باینری را به اعشاری تبدیل کنید، تمرینات زیر را به عنوان کار کلاسی انجام دهید.
تمرین، تبدیل مقادیر اعشاری به باینری را با پر کردن جدول زیر تمرین میکنید:
در تمرین زیر، مقادیر باینری را به مقادیر اعشاری تبدیل کنید.
آدرس کلاسها در پروتکل IP
هر آدرس IP به یک کلاس آدرس مجزا و مخصوص به خود تعلق دارد. جامعه اینترنتی این کلاسها را برای قرار دادن شبکههایی با اندازههای مختلف تعریف کرده است. کلاسی که آدرس IP را توصیف میکند، ابتدا شناسه شبکه و بخشهای شناسه میزبان آدرس، همراه با تعداد میزبانهایی را که در آن شبکه پشتیبانی میشوند، تعیین میکند. آدرسهای کلاس مختلف عبارتند از کلاس A، کلاس B، کلاس C، کلاس D و کلاس E.
جدول زیر ویژگیهای مهم کلاسهای آدرس را که باید در آزمون CCNA در مورد آنها اطلاعات داشته باشید نشان میدهد. در ادامه توضیحات کاملتری در ارتباط با هر یک از این کلاسها مشاهده میکنیم.
آدرسهای کلاس A
یک آدرس کلاس A دارای یک ماسک زیر شبکه پیشفرض 255.0.0.0 است، به این معنی که اکتت اول شناسه شبکه است و سه اکتت آخر نشاندهنده بخش شناسه میزبان آدرس است. هر اکتت میتواند شامل 256 مقدار ممکن (0-255) باشد، بنابراین یک آدرس کلاس A از 16,777,216 میزبان در شبکه (256 × 256 × 256 ) پشتیبانی میکند. در واقع، تنها 16777214 آدرس معتبر برای استفاده در سیستمها وجود دارد، زیرا دو آدرس در هر شبکه IP وجود دارد که شما مجاز به اختصاص آنها به سیستمها نیستید، زیرا رزرو شدهاند. اینها آدرسهایی هستند که همه بیتهای میزبان روی «صفر» (شناسه شبکه) و همه بیتهای میزبان روی «یک» (آدرس پخش) را تنظیم کرده و نشان میدهند. بنابراین با یک آدرس کلاس A، نمیتوانید n.0.0.0 یا n.255.255.255 (که n شناسه شبکه شما است) را به هیچ میزبانی در شبکه اختصاص دهید.
نکته امتحانی: شما باید بدانید که چگونه آدرسهای کلاس A را برای آزمون شناسایی کنید. آدرسهای کلاس A دارای یک آدرس IP هستند که در آن اکتت اول بین 1 تا 127 و دارای یک ماسک زیر شبکه پیشفرض 255.0.0.0 هستند. شما همیشه میتوانید یک آدرس کلاس A را شناسایی کنید، زیرا مقدار اکتت اول بین اعداد «یک» و 127 قرار میگیرد. اگرچه آدرسی که با 127 شروع میشود از نظر فنی یک آدرس کلاس A است، اما شما مجاز به استفاده از آدرسی نیستید که با 127 شروع میشود، زیرا برای آدرس loopback رزرو شده است. نمونهای از آدرسهای کلاس A آدرس آیپی 12.56.87.34 است: اولین اکتت 12 است که در محدوده 1-127 قرار دارد.
آدرسهای کلاس B
آدرسهای کلاس B دارای ماسک زیر شبکه پیشفرض 255.255.0.0 هستند، به این معنی که دو اکتت اول شناسه شبکه و دو اکتت آخر بخش شناسه میزبان آدرس هستند. این بدان معنا است که ما میتوانیم 65536 میزبان (256 × 256) در شبکه داشته باشیم. با اینحال، صبر کنید! فراموش نکنید که دو آدرس رزرو شده را حذف کنید. بنابراین به تعداد 65534 آدرس در اختیار ما قرار دارد که قادر به اختصاص به میزبانهای شبکه هستیم. شما میتوانید یک آدرس کلاس B را بدون مشکل شناسایی کنید، زیرا اکتت اول با عددی شروع میشود که بین 128 و 191 قرار میگیرد. به دلیل تعداد میزبانهایی که در یک آدرس کلاس B پشتیبانی میشوند، شرکتهای با ابعاد متوسط از آدرس کلاس B استفاده میکنند.
نکته امتحانی: شما باید بدانید که چگونه آدرسهای کلاس B را شناسایی کنید. آدرسهای کلاس B دارای یک آدرس آیپی هستند که در آن مقدار اکتت اول بین 128 و 191 است. به یاد داشته باشید که آدرسهای کلاس B دارای یک ماسک زیر شبکه پیشفرض 255.255.0.0 هستند.
آدرسهای کلاس C
آدرسهای کلاس C دارای ماسک زیر شبکه 255.255.255.0 هستند، به این معنی که سه اکتت اول شناسه شبکه و اکتت آخر شناسه میزبان است. داشتن تنها یک اکتت به عنوان شناسه میزبان به این معنی است که یک آدرس کلاس C میتواند تنها از 254 میزبان (256 – 2) در شبکه پشتیبانی کند.
در یک آدرس کلاس C مقدار اکتت اول در بازه 192 و 223 قرار دارد. بهطور مثال، آدرس آیپی 202.45.8.6 یک آدرس کلاس C است، زیرا 202 بین 192 و 223 قرار دارد. ماسک زیر شبکه این کلاس 255.255.255.0 است.
نکته امتحانی: در آزمون CCNA پرسشهایی در ارتباط با آدرسهای کلاس C مطرح میشوند، بنابراین باید قادر به شناسایی آدرسها باشید. آدرسهای کلاس C دارای یک آدرس آیپی هستند که مقدار اکتت اول آن در بازه 192 و 223 قرار دارد. علاوه بر این، به یاد داشته باشید که آدرسهای کلاس C دارای یک ماسک زیر شبکه پیشفرض 255.255.255.0 هستند.
آدرسهای کلاس D
آدرسهای کلاس D برای انواع خاصی از برنامههای کاربردی در شبکه مثل برنامههای چندپخشی (Multicasting) استفاده میشود. برنامههای Multicasting این توانایی را دارند تا دادهها را بهطور همزمان برای آدرسهای مختلفی ارسال کنند. از آنجایی که آدرسهای کلاس D برای آدرسهای چندپخشی استفاده میشوند، شما آنها را بهطور خاص به میزبانهای شبکه برای ارتباطات عادی شبکه اختصاص نمیدهید.
آدرسهای کلاس D دارای مقداری در اکتت اول هستند که از 224 تا 239 متغیر است. با این محدودهها، کلاس D دارای پتانسیل 268,435,456 گروه چندپخشی منحصر به فرد است که کاربران میتوانند از یک برنامه چندپخشی عضو این گروهها شوند.
آدرسهای کلاس E
نکته خندهدار در مورد آدرسهای کلاس E این است که آنها فقط برای اهداف آزمایشی طراحی شدهاند، بنابراین شما هرگز آدرس کلاس E را در شبکه نخواهید دید. آدرسهای کلاس E دارای یک اکتت اول با مقدار بین 240 و 247 هستند.
نکته امتحانی: با اطمینان خاطر به شما میگوییم در آزمون CCNA چندین سوال در ارتباط با شناسایی آدرس کلاسهای A، B و C مشاهده میکنید. از اینرو، مطمئن شوید که ویژگیهای هر کلاس مانند محدوده آدرسهای آن کلاس، تعداد میزبان پشتیبانی شده و ماسک زیر شبکه پیشفرض را میدانید.
برای اینکه دانش خود در ارتباط با کلاسها و نحوه شناسایی آنها را محک بزنید، در تصویر زیر کلاسهای متعلق به آدرسهای IP مختلف و زیرشبکههای مرتبط با آنها را مشخص کنید.
قواعد تعریف کلاسها (Rules for Defining Classes) در پروتکل IP
اغلب از من سوال میشود که طراحان چگونه محدوده آدرس هر کلاس را به دست میآورند. طراحان کلاسها اینکار را با مشخص کردن کرانه هر کلاس تعریف شده بر مبنای قواعد زیر تعیین میکنند:
• آدرسهای کلاس A: همیشه با صفر شروع میشوند. این مقادیر باینری 00000001 تا 01111111 یا معادل اعشاری 1 تا 127 هستند. توجه داشته باشید که شما نمیتوانید آدرس 00000000 داشته باشید، بنابراین این محدوده از 1 شروع میشود.
• آدرسهای کلاس B: همیشه با 10 شروع میشوند. این مقادیر باینری 10000000 تا 10111111 یا معادل اعشاری 128 تا 191 هستند.
• آدرسهای کلاس C: همیشه با 110 شروع میشوند. این مقادیر باینری از 11000000 تا 11011111 یا معادل 192 تا 223 هستند.
• آدرسهای کلاس D: همیشه با 1110 شروع میشوند. این مقادیر باینری از 1110000 تا 11101111 یا معادل 224 تا 239 هستند.
• آدرسهای کلاس E: همیشه با 11110 شروع میشوند. این مقادیر باینری از 11110000 تا 11110111 یا معادل اعشاری 240 تا 247 هستند.
آدرس Loopback
همانگونه که در پاراگراف قبل اشاره کردیم، شما اجازه ندارید به یک میزبان آدرس IP اختصاص دهید که دارای مقدار 127 در اکتت اول است. به این دلیل که محدوده آدرس کلاس A در بازه 127 قرار دارد که آدرس رزرو شده برای loopback است.
آدرس Loopback برای اشاره به سیستم محلی استفاده میشود که به عنوان میزبان محلی نیز شناخته میشود. اگر مجبور هستید تا تأیید کنید که نرمافزار TCP/IP در سیستم محلی بهدرستی مقداردهی اولیه شده است، حتی اگر آدرس آیپی نداشته باشید، میتوانید به آدرس Loopback که معمولاً با مقدار 127.0.0.1 مشخص میشود پینگ کنید.
نکته: شما میتوانید به سیستم محلی خود از طریق خط فرمان با تایپ ping 127.0.0.1، ping localhost یا ping loopback پینگ انجام دهید تا مطمئن شوید که پشته پروتکل TCP/IP روی سیستم شما بهدرستی کار میکند یا خیر.
آدرسهای خصوصی (Private Addresses)
نوع دیگری از آدرسها که باید در مورد آنها اطلاعات کافی داشته باشید آدرسهای خصوصی هستند. یک آدرس خصوصی را میتوان به یک سیستم اختصاص داد، اما نمیتوان از آن برای ارتباطات اینترنتی استفاده کرد. آدرسهای خصوصی در اینترنت غیرقابل مسیریابی هستند، بنابراین هر سیستمی که از آنها استفاده میکند قادر نخواهد بود دادهها را به اینترنت ارسال کند. آدرسهای خصوصی سه محدوده زیر را دارند:
• 10.0.0.0–10.255.255.255
• 172.16.0.0–172.31.255.255
• 192.168.0.0–192.168.255.255
رشد روزافزون اینترنت باعث شد تا دستگاههایی که نیازمند دسترسی به اینترنت بودند از طریق آدرس آیپی عمومی قادر به اتصال با اینترنت نباشند، زیرا آدرسهای در دسترس بهاتمام رسیدند. بنابراین آدرسهای خصوصی در داخل شبکهها به کار گرفته شدند، زیرا توسط سیستمهای دیگر در اینترنت مشاهده نمیشوند. علاوه بر این، فناوری برگرداندن آدرس شبکه (NAT) برای ترجمه آدرس خصوصی به آدرس عمومی بهعنوان راهکاری (موقت) برای حل این مشکل ابداع شد.
نکته امتحانی: برای آزمون CCNA به خاطر داشته باشید که امروزه یکی از مهمترین ملاحظات طراحی شبکهها، استفاده از آدرسهای خصوصی به صورت داخلی و استفاده از NAT برای ترجمه آدرس خصوصی به آدرس عمومی است تا در اینترنت امکان مسیریابی آن وجود داشته باشد. رویکرد فوق اجازه میدهد تا تجهیزاتی مثل رایانهها که دارای آدرسهای خصوصی هستند از طریق بهدست آوردن یک آدرس عمومی با استفاده از فناوری NAT به تبادل اطلاعات با یکدیگر بپردازند.
APIPA چیست؟
امروزه سیستمها از ویژگی آدرسدهی آیپی خصوصی خودکار (APIPA) پشتیبانی میکنند. هنگامیکه یک کلاینت راهاندازی میشود و نمیتواند با سرور DHCP ارتباط برقرار کند، کلاینت بهطور خودکار یک آدرس 169.254.x.y را برای خودش پیکربندی میکند. اگر مشکلی در سرور DHCP وجود داشته باشد و هیچ یک از سیستمهای موجود در شبکه نتوانند آدرسی به دست آورند، همه کلاینتها یک آدرس در محدوده آدرس 169.254 به خود اختصاص میدهند تا بتوانند با یکدیگر ارتباط برقرار کنند (زیرا آنها همه در یک شبکه واحد قرار دارند).
البته دقت کنید که APIPA یک دروازه پیشفرض ارائه نمیکند، بنابراین نمیتوانید به منابع موجود در شبکه راه دور و اینترنت دسترسی داشته باشید، اما همچنان میتوانید با سیستمهای موجود در شبکه خود ارتباط برقرار کنید. هنگام عیبیابی برای تعیین اینکه چرا یک ماشین قادر نیست با شبکه ارتباط برقرار کند، باید ابتدا به آدرس آن نگاه کنید. اگر در محدوده 169.254.x.y قرار دارد به این معنا است که موفق نشده با سرور DHCP ارتباط برقرار کرده و از آن آدرس دریافت کند.
آدرسهای آیپی نامعتبر برای میزبانها (Invalid IP Addresses for Hosts)
سرپرستان شبکه نمیتوانند آدرسهای آیپی یکسانی را به میزبانهای موجود در شبکه اختصاص دهند. چرا یک آدرس کلاس C میتواند تنها 254 میزبان داشته باشد و نه 256 داشته باشد؟ دلیل این اختلاف ظاهری این است که دو مورد از این آدرسها از مجموعه میزبان موجود کسر شدهاند. اولی آدرسی است که تمام بیتهای آن در شناسه میزبان روی 0 تنظیم شده که نشاندهنده شناسه شبکه است. دومی آدرسی است که تمام بیتهای آن در شناسه میزبان روی 1 تنظیم شده که نشاندهنده آدرس پخشی شبکه است. به عنوان مثال، در شبکه کلاس C که آدرس 200.158.157.x دارد، آدرسهای 200.158.157.0 (شناسه شبکه) و 200.158.157.255 (آدرس پخشی) برای اختصاص به میزبانها در شبکه در دسترس نیستند و تعداد موجود را کاهش می دهد. بنابراین امکان تخصیص 254 آدرس وجود دارد.
آدرسهایی که اکتت اول آنها برابر با 127 باشد، نباید به سیستمها اختصاص داده شوند. به یاد داشته باشید که این آدرس به عنوان آدرس loopback رزرو شده است و شما نمیتوانید آدرس را به هیچ میزبانی اختصاص دهید. بهطور کلی، آدرسهای غیرقانونی به شرح زیر خلاصه میشوند:
• هر آدرسی که با 127 شروع میشود: آدرس آیپی که با 127 شروع میشود برای آدرس loopback رزرو شده است و نمیتوان آنرا به یک سیستم اختصاص داد. نمونهای از این آدرس غیر قانونی 127.50.10.23 است.
• همه بیتهای میزبان روی «صفر» تنظیم شدهاند: شما مجاز نیستید به سیستمی یک آدرس IP اختصاص دهید که همه بیتهای بخش شناسه میزبان روی «صفر» تنظیم شده باشد، زیرا این شناسه شبکه است. نمونهای از این آدرس غیر قانونی 131.107.0.0 است.
• همه بیتهای میزبان روی «یک» تنظیم شدهاند: شما مجاز نیستید به سیستمی یک آدرس IP اختصاص دهید که همه بیتهای میزبان روی 1 تنظیم شدهاند، زیرا این آدرس با آدرس پخشی شبکه مطابقت دارد. نمونهای از این نوع آدرسهای غیرقانونی 131.107.255.255 است.
• یک آدرس تکراری: شما مجاز نیستید به سیستم آدرسی را اختصاص دهید که سیستم دیگری از آن استفاده میکند، زیرا باعث خطای آدرس آیپی تکراری میشود.
عدم مسیریابی دادههای مربوط به آدرسهای خصوصی در اینترنت مشکلی بهوجود نمیآورد، زیرا آدرسهای خصوصی در پشت یک سرور NAT قرار میگیرند که آدرس خصوصی را به یک آدرس عمومی که میتواند در اینترنت مسیریابی شود، ترجمه میکند. آدرسهای خصوصی نقش مهمی در تعامل کلاینتهای یک شبکه محلی با یکدیگر دارند. در مقالات آتی اطلاعات بیشتری در ارتباط با NAT کسب میکنیم.
برای آنکه دانش خود در ارتباط با شناسایی درست آدرسهای معتبر را محک بزنید در جدول زیر، مشخص کنید که یک آدرس معتبر برای تخصیص به یک سیستم در شبکه چیست و اگر آدرسی نامعتبر است، دلیل آنرا مشخص کنید.
طرحهای آدرسدهی (Addressing Schemes)
در یک شبکه، دادهها را میتوان به چند روش مختلف به مقصد ارسال کرد:
- از طریق یک آدرس تکپخشی (unicast)،
- از طریق یک آدرس همهپخشی (Broadcast)
- از طریق یک آدرس چندپخشی (Multicast)
تفاوت هر یک از روشهای فوق به شرح زیر است:
• Unicast: اطلاعات را به یک سیستم ارسال میکند. با استفاده از IP اینکار از طریق ارسال دادهها به آدرس آیپی سیستم مقصد انجام میشود.
• Broadcast: اطلاعات را به همه سیستمهای موجود در شبکه ارسال میکند. دادههایی که برای همه سیستمها ارسال میشوند با استفاده از آدرس پخشی ارسال میشوند. نمونهای از آدرس پخشی برای یک شبکه 192.168.2.255 است. آدرس پخشی با تنظیم تمام بیتهای میزبان بر روی 1 و سپس تبدیل اکتت به یک عدد اعشاری تعیین میشود. علاوه بر این، یک آدرس همهپخشی internetwork نیز وجود دارد که برابر با 255.255.255.255 است که برای دادههایی در نظر گرفته شده که قرار است برای همه شبکهها ارسال شود.
• Multicast: اطلاعات را به گروه انتخابی از سیستمها ارسال میکند. بهطور معمول، این فرآیند در ارتباط با سیستمهایی که آدرس چندپخشی دارند انجام میشود. در ادامه هر دادهای که به آدرس چندپخشی ارسال میشود توسط همه سیستمهای عضو در آدرس دریافت میشود. اکثر آدرسهای چندپخشی با مقدار 224.x.y.z آغاز میشوند و به عنوان آدرسهای کلاس D در نظر گرفته میشوند.