شبکه و امنیت

آشنایی با مفهوم Host در پروتکل TCP/IP

هاست را در فارسی به «میزبان» ترجمه می‌کنند.  حال باید دید که «میزبان TCP/IP» به چه معنی است.

درواقع به هر سیستم در شبکه از TCP/IP برای ارتباط استفاده کند اصطلاحا یک TCP/IP Host می‌گوییم.

مثال ۱: کلیه رایانه‌های شخصی در یک شبکه که پروتکل TCP/IP روی آن‌ها تنظیم و فعال شده اعم از اینکه کلاینت باشد یا سرور، هر کدام برای خود یک Host مستقل به حساب می‌آیند.

مثال ۲: یک روتر را می‌توان یک TCP/IP Host به‌شمار آورد، به دلیل اینکه می‌توان TCP/IP را روی آن پیکربندی و فعال کرد و روتر را از طریق آن کنترل کرد.

مثال ۳: برخی از سوئیچ‌های حرفه‌ای توانایی پیکربندی و کنترل خود را از طریق TCP/IP به مدیر شبکه می‌دهند، پس این سوئیچ‌ها نیز TCP/IP Host هستند.

مثال ۴: برخی از UPSها توانایی اتصال مستقیم به شبکه را دارند. می‌توان از طریق یک رایانه شخصی و پروتکل TCP/IP آن‌ها را کنترل کرد. چنین UPS هایی درواقع مثال دیگری از TCP/IP Host هستند.

مثال ۵: چاپگرهایی هستند که مستقیما به شبکه متصل شده و رایانه‌های شخصی می‌توانند کارهای چاپی خود را از طریق TCP/IP به آن‌ها ارسال کنند، پس این چاپگرها نیز بیانگر TCP/IP Host هستند.

هر Host در TCP/IP دارای دو مشخصه اصلی و بارز است. به عبارت دیگر هر Host را می‌توان با دو خصوصیت از بقیه Hostها تفکیک کرد. این دو مشخصه عبارتند از:

  • نام (Host Name = TCP/IP Name)
  • آدرس (Host Address = IP Address)

اگر بخواهیم اصل ماجرا را در نظر بگیریم، آدرس در اولویت قرار داشته و هر Host باید حداقل یک آدرس منحصربه‌فرد داشته باشد. مشخصه «نام» برای سهولت در کار کاربران بوده اما برای پروتکل TCP/IP چندان مهم نیست. درواقع هنگامی که یک کاربر برای برقراری ارتباط با یک TCP/IP Host از «نام» استفاده می‌کند (مثلا http://www.yahoo.com) پروتکل TCP/IP به زحمت افتاده و باید آدرس مربوط به نام را پیدا کند چون مهم برای او IP Address است. به عبارت دیگر پروتکل با مکانیزم‌هایی که بعدا مورد بحث قرار می‌گیرد ابتدا اسم را به IP تبدیل کرده (مثلا آدرس http://www.sanjesh.org می‌شود ۹۲٫۲۴۲٫۱۹۵٫۱) و بعد ارتباط با سایت آغاز می‌شود.

Host Name

گفتیم که برای سهولت بیشتر کاربران، برای اکثر «میزبان‌های مهم» (Host) یک یا چند نام انتخاب می‌شود. بدیهی است که این نام‌ها باید از قوانینی تبعیت کرده و ضمنا مورد تایید «مراکز ثبت اسامی» نیز قرار بگیرند، به زبان دیگر باید اسم را ثبت (Register) کرد. چنانچه اسم یک Host ثبت نشود در آن صورت استفاده از نام معمولا محدود به کاربردهای داخلی شده و اغلب کاربران «خارج از شبکه داخلی» نام را نمی‌شناسند چرا که رسما ثبت نشده است.

مثال: فرض کنید کسی در محدوده خانوادگی خود یا میان دوستان و آشنایان نام «نرگس» را برای خود انتخاب کند اما نام شناسامه‌ای وی «فرزانه» باشد. طبیعی است هنگامی که می‌خواهد خود را رسما به همه معرفی کند «اسم شناسنامه‌ای» خودش که در اداره ثبت احوال درج شده به کار می‌برد زیرا همگان «اداره ثبت احوال» را به عنوان «مرکز معتبر ثبت اسامی» قبول دارند. اما افراد خانواده وی یا دوستان نزدیک وی می‌توانند با نام مستعار او را صدا بزنند.

اکنون نگاهی دقیق‌تر به قالب اسامی داشته باشیم، به‌طور کلی می‌توانیم دو قالب را برای نامگذاری تصور کنیم. با دقت به مثال‌های زیر موضوع روشن می‌شود:

قالب اول: هر یک از اسامی زیر به‌عنوان یک Host Name می‌تواند در پروتکل TCP/IP استفاده شود:

  • Narges
  • Reza
  • Server22
  • Client80
  • PC1
  • C1
  • C2
  • Palang
  • Moon
  • Star

قالب دوم:

  • yahoo.com
  • yahoo.com
  • neda.net.ir
  • dlink.com
  • sanjesh.org
  • tamin.org
  • sharif.edu
  • sharif.ac.ir
  • itrc.ac.ir
  • nist.gov
  • dci.ir

به روشنی پیداست که قالب دوم کامل‌تر است، اصطلاحا اگر اسمی در قالب اول باشد به آن اسم مستعار Alias یا Unqualified و اگر در قالب دوم باشد به آن FQDN (سرنام عبارت Fully Qualified Domain Name) می‌گویند.

معمولا اسامی قالب اول در محدوده داخلی شبکه‌ها استفاده شده، نیازی به ثبت ندارند اما اسامی قالب دوم عمدتا ثبت شده و در این صورت چه در محدوده داخلی و چه افراد خارج از شبکه داخلی می‌توانند از آن‌ها برای مراجعه به Host استفاده کنند.

اگر بخواهیم بگوییم یک اسم در قالب دوم (FQDN) معمولا از چه قسمت‌هایی تشکیل می‌شود، در جواب می‌توان گفت به ترتیب از سمت چپ:

الف) نام یا سرویسی که Host ارائه می‌دهد یا نقشی که Host بازی می‌کند.

  • www = Web Server
  • mail = Mail Server
  • ftp = FTP Server
  • time = Time Server
  • news = News (NNTP) Server

ب) نام شرکت، سازمان، مجموعه یا شخصی که Host بدان تعلق دارد (Company Name).

  • yahoo
  • gooogle
  • IRIB
  • Bank-Keshavarzi

ج) حوزه فعالیت میزبان (Activities).

  • com
  • net
  • org
  • gov
  • edu
  • ac
  • info
  • biz
  • tv

د) وابستگی منطقه‌‌ای و محلی اعم از فرهنگی، اجتماعی، … یا زبان استفاده شده در سایت (Locality).

  • ir = Iran
  • tr = Turkey
  • uk = United Kingdom
  • us = United States
  • ca = Canada

در یک FQDN چنانچه بخش ابتدایی سمت چپ را که (بیانگر نام سرویس است) کنار بگذاریم، به مجموع بقیه قسمت‌ها Domain گفته می‌شود که شامل نام شرکت، حوزه فعالیت و کشور می‌شود.

بنابراینFQDN  بطور کلی از دو بخش تشکیل شده:

به زیرمجموعه‌های یک Domain اصطلاحا SubDomain می‌گویند. در عمل معمولا از SubDomain برای نشان دادن شرکت‌ها، زیرگروه‌ها یا ساختارهای فرعی در یک مجموعه بزرگ استفاده می‌شود.

یک شرکت بزرگ رایانه‌ای را در نظر بگیرید که علاوه بر شرکت اصلی، از سه شرکت زیرمجموعه برای فعالیت‌های سخت‌افزار، نرم‌افزار و شبکه استفاده می‌کند. برای شرکت اصلی، یک Domain به نام a.net را در نظر گرفته آن را ثبت می‌کنیم. حال با توجه به گستردگی فعالیت‌های شرکت بزرگ رایانه‌ای و طبیعتا شرکت‌های زیرمجموعه، بد نیست که برای هر کدام از زیرمجموعه‌ها نیز یک Domain در نظر بگیریم:

  • برای شرکت سخت‌افزار a.net
  • برای شرکت نرم‌افزار a.net
  • برای شرکت شبکه a.net

هر یک از Domain های فوق را اصطلاحا SubDomain از a.net می‌نامیم.

IP Address

در پروتکل TCP/IP دو نوع آدرس برای IP  وجود دارد:

  • آدرس IP نسخه ۴ که به آن IPv4 می‌گویند.
  • آدرس IP نسخه ۶ که به آن IPv6 می‌گویند.

در این مقاله ما به تشریح کامل IPv4 خواهیم پرداخت.

استانداردهای اینترنت برای انواع آدرس‌های IPv4 عبارتند از:

  • Unicast
  • Multicast
  • Broadcast

Unicast

برای یک رابط شبکه در یک زیرشبکه اختصاص می‌یابد (یک مخاطب) برای ارتباط یک به یک استفاده می‌شود مانند آدرس یک منزل در شهر به عنوان یک گیرنده.

Multicast

یه یک یا چند رابط شبکه واقع ئر زیرشبکه‌های مختلف اختصاص می‌یابد (چند مخاطب) و برای ارتباط یک به چند استفاده می‌شود.

Broadcast

به تمام رابط‌های شبکه در یک زیرشبکه اختصاص داده می‌شود (برای تمام مخاطب‌های یک زیرشبکه) و برای ارتباط یک به همه در یک زیرشبکه مورد استفاده قرار می‌گیرد.

آدرس‌های Unicast در IPv4

آدرس‌های Unicast در IPv4 محل قرار گرفتن مخاطب را در شبکه تعیین می‌کنند، مانند آدرس منزل یک شخص در یک شهر. بنابراین آدرس‌های Unicast در IPv4 باید در سطح جهان منحصر به فرد بوده و دارای قالب یکسان باشد (البته می‌توان برای چند شبکه مستقل که قرار نیست با هم در ارتباط باشند آدرس‌های IP یکسانی در نظر گرفت).

هر آدرس IPv4 دارای دو بخش زیرشبکه و ID میزبان به صورت زیر می‌باشد:

IPv4 Address = Subnet prefix + Host ID

Subnet prefix (پیشوند زیرشبکه) به عنوان شناسه شبکه (Network identifier) یا آدرس شبکه (Network Address) شناخته می‌شود و تمام گره‌های شبکه در یک زیرشبکه باید Subnet prefix یکسانی بوده و پیشوند زیرشبکه باید در کل شبکه‌های TCP/IP منحصر به فرد باشد با توجه به مطالب فوق می‌توان IPv4 Address = Subnet prefix + Host ID را به‌صورت زیر تعریف نمود:

IPv4 Address = Network ID + Host ID

Host ID (ID میزبان) غالبا به‌عنوان آدرس میزبان (Host Address) شناخته می‌شود و برای شناسایی گره‌ها در زیرشبکه به کار می‌رود. ID میزبان نیز باید در یک زیرشبکه منحصر به فرد باشد. می‌توان به جای Host ID از Node ID نیز استفاده نمود.

IP Address در مجموعه یک عدد ۳۲ بیتی یا ۴ بایتی است که به فرم w.x.y.z تنظیم می‌شود. به‌طوری که ممکن است از ۴ بایت ممکن یک تا ۳ بایت برای پیشوند زیرشبکه و یا یک تا ۳ بایت برای IP میزبان در نظر گرفته می‌شود.

کلاس‌های آدرس در IPv4

آدرس‌های IPv4 دارای کلاس‌های نختلفی است که میزان بیت یا بایت اختصاص یافته به پیشوند زیرشبکه و Host ID را مشخص می‌کند. این کلاس‌ها همچنین تعداد شبکه‌ها و تعداد میزبان‌ها را نیز تعیین می‌کنند. به‌طور کلی، پنج نوع کلاس در IPv4 داریم که با نام‌های کلاس A، B، C،D و E شناخته می‌شود. کلاس A، B و C برای Unicast می‌باشد. کلاس D برای Multicast رزرو شده و کلاس E نیز برای کارهای آزمایشگاهی رزرو شده است.

کلاس A

برای شبکه‌هایی که دارای میزبان‌های خیلی زیاد هستند مورد استفاده قرار می‌گیرد، به‌طوری‌که ۸ بیت اول برای پیشوند زیرشبکه و ۲۴ بیت باقیمانده برای میزبان مورد استفاده قرار می‌گیرد قالب آدرس‌دهی در کلاس A به‌صورت زیر است:

کلاس A تا ۱۶۷۷۷۲۱۴ میزبان را می‌تواند آدرس‌دهی کند و به‌جای هر Host در قالب آدرس‌دهی می‌توان از اعداد ۱ تا ۲۵۴ را استفاده نمود. توجه داشته باشید درواقع اعداد اختصاص یافته به هر Host در قالب کلی از ۰ تا ۲۵۵ می‌باشد ولی اعداد ۰ و ۲۵۵ در شرایط خاص استفاده می‌شود.

کلاس A تا ۱۲۶ شبکه را پشتیبانی می‌کند یعنی به جای Network می‌توان از اعداد ۱ تا ۱۲۶ را استفاده نمود. در کلاس A اولین بیت سمت چپ همیشه باید صفر باشد با توجه به صفر بودن اولین بیت سمت چپ پس ما ۷ بیت داریم که می‌توانند ۱ باشند بنابراین ۱۲۷ شبکه خواهیم داشت اما چون عدد ۱۲۷ برای Loop back ذخیره شده است ما فقط می‌توانیم تا عدد ۱۲۶ را برای کلاس A استفاده نماییم.

کلاس B

کلاس B برای شبکه‌های متوسط تا بزرگ مورد استفاده قرار می‌گیرد به‌طوری‌که ۱۶ بیت اول برای شبکه و ۱۶ بیت باقیمانده برای میزبان مورد استفاده قرار می‌گیرد. قالب آدرس‌دهی در کلاس B به‌صورت زیر است:

در کلاس B اولین بیت سمت چپ در Network ID همیشه ۱ و دومین بیت همیشه ۰ می‌باشد. یعنی بایت اول در حالت حداکثری برابر ۱۰۱۱۱۱۱۱ می‌باشد (یعنی عدد ۱۹۱) پس نتیجه می‌گیریم که در کلاس B اولین بایت یا همان w می‌تواند اعداد ۱۲۸ تا ۱۹۱ باشد.

کلاس B تا ۱۶۳۸۴ شبکه را پشتیبانی می‌کند همچنین می‌توان در کلاس B تا ۶۵۵۳۴ میزبان را آدرس‌دهی نمود.

کلاس C

کلاس C برای آدرس‌دهی شبکه‌های کوچک استفاده می‌شود به‌طوری‌که ۲۴ بیت (۳ بایت) اول برای شبکه و ۸ بیت (۱ بایت) باقیمانده برای میزبان مورد استفاده قرار می‌گیرد. قالب آدرس‌دهی در کلاس C به‌صورت زیر است:

در کلاس C اولین و دومین بیت سمت چپ در Network ID همیشه ۱ و سومین بیت همیشه ۰ می‌باشد، یعنی بایت اول در حالت حداکثری برابر ۱۱۰۱۱۱۱۱ می‌باشد (یعنی عدد ۲۲۳) پس نتیجه می‌گیریم که در کلاس C اولین بایت یا همان w می‌تواند اعداد ۱۹۲ تا ۲۲۳ باشد.

کلاس C تا ۲۰۹۷۱۵۲ شبکه را پشتیبانی می‌کند. همچنین در این کلاس می‌توان تا ۲۵۴ میزبان را آدرس‌دهی نمود.

کلاس D

همانطور که قبلا اشاره شد کلاس D برای Multicast رزرو شده است. ۴ بیت اول در کلاس D به‌صورت ۱۱۱۰ می‌باشد یعنی بایت اول در حالت حداکثری برابر ۱۱۱۰۱۱۱۱ می‌باشد (یعنی عدد ۲۳۹) پس نتیجه می‌گیریم که در کلاس D اولین بایت یا همان w می‌تواند اعداد ۲۲۴ تا ۲۳۹ باشد یعنی کلاس D از رنج ۲۲۴٫۰٫۰٫۰ تا ۲۳۹٫۲۵۵٫۲۵۵٫۲۵۵ می‌باشد.

کلاس E

 برای کارهای آزمایشگاهی (تحقیقاتی) رزرو شده است ۴ بیت اول در کلاس D همیشه به‌صورت ۱۱۱۱ می‌باشد.

IPv4 از آدرس چندپخشی (Multicast) برای ارائه بسته‌های اطلاعاتی از یک منبع به چند مقصد استفاده می‌کند. همچنین IPv4 آدرس‌های Broadcast را برای ارائه بسته‌های اطلاعاتی از یک منبع به همه رابط‌ها بر روی شبکه به کار می‌برد.

آدرس‌های ویژه در IPv4

آدرس ۰٫۰٫۰٫۰ به آدرس IPv4 نامشخص معروف می‌باشد و فقط برای آدرس منبع، زمانی که گره با IPv4 پیکربندی نشده باشد و با استفاده از سرویس DHCP بخواهد IPv4 خود را به‌دست آورد مورد استفاده قرار می‌گیرد.

آدرس ۱۲۷٫۰٫۰٫۱ به نام آدرس back Loop معروف می‌باشد و یک گره را برای ارسال بسته‌ها به خودش فعال می‌کند.

ماسک زیرشبکه یا Subnet Mask

ماسک زیرشبکه برای نشان دادن شناسه مربوط به شبکه و همچنین شناسه مربوط به میزبان می‌باشد. که بیت‌های هر بخش آن یا همه صفر یا همه ۱ هستند (یعنی اعداد ۰ و ۲۵۵) به‌طوری‌که برای تعیین شناسه شبکه، به ازایهر بخش آدرس شبکه؛ عدد ۲۵۵ قرار می‌گیرد و به ازای هر بخش میزبان عدد صفر جایگزین می‌شود و عدد ۲۵۵ به مفهوم ثابت بودن آدرس IP در یک زیرشبکه می‌باشد و عدد ۰ به مفهوم عدد متغیر ۱ تا ۲۵۴ می‌باشد. ضمنا با استتفاده از ماسک زیرشبکه می‌توان کلاس شبکه را تعیین نمود.

حتما مشاهده کرده‌اید که هنگام وارد کردن IP بخشی نیز برای وارد کردن آدرس Default Gateway داریم. این آدرس معمولا دو کاربرد اصلی دارد:

آدرس کامپیوتری که اینترنت را برای کلاینت Share کرده است.

هنگامی که یک کامپیوتر در شبکه به اینترنت وصل است و باید اینترنت را در اختیار بقیه قرار دهد چنین حالتی پیش می‌آید. البته همیشه به این سادگی و فقط با تنطیم Gateway کارها انجام نمی‌شود اما این یکی از ساده‌ترین حالت‌هاست.

آدرس پورت روتر در سمتی از سگمنت که کلاینت در آن قرار دارد تا بدین‌وسیله به روتر وصل شود و در نتیجه با سگمنت‌های دیگر ارتباط برقرار کند.

نوع کلاس مورد استفاده برای آدرس‌دهی شبکه خود بستگی به تعداد Host های به‌کار رفته در شبکه دارد.

IPv6

IPv6 به جای ۳۲ بیت از ۱۲۸ بیت برای آدرس‌دهی IP استفاده می‌کند و درواقع از ۸ بخش ۱۶ بیتی تشکیل شده است و مقداردهی آن به‌صورت هگزادسیمال می‌باشد و با علامت : از یکدیگر جدا می‌شوند:

FE80: BA98: 7654: 3210: FEDC: BA98: 7654: 3210

آدرس‌دهی در IPv6 به دو قسمت تقسیم می‌شود به‌طوری که ۶۴ بیت اول (۸ بخش اول) برای آدرس‌دهی شبکه و ۶۴ بیت دوم (۸ بخش دوم) برای آدرس‌دهی میزبان استفاده می‌شود:

بخش آدرس‌دهی شبکه در واقع همان Prefix Subnet (پیشوند زیرشبکه) می‌باشد.

IPv6 ایمن‌تر از IPv4 می‌باشد. پروتکل IPv6 قادر به حمایت از ۵۰ اکتیلیون (هر اکتیلیون معادل یک عدد ۱ به همراه ۴۸ صفر است) آدرس IP است.

منبع: کتاب «شبکه‌های رایانه‌ای» شاخه آموزش فنی و حرفه‌ای

فرشید نوتاش حقیقت

همیشه نیازمند یک منبع آموزشی فارسی در حوزه نرم‌افزارهای آزاد/ متن‌باز و سیستم‌عامل گنو/لینوکس بودم. از این رو این رسالت رو برای خودم تعریف کردم تا رسانه «محتوای باز» رو بوجود بیارم.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

دکمه بازگشت به بالا