حجت رستمی
دانشجوی رشته شبکه و متخصص Passive

پروتکل BOOTP چیست؟ معرفی بوت پی با جزئیات

پروتکل BOOTP یک پروتکل خود راه انداز بر مبنای UDP/IP میباشد که اجازه میدهد یک host خودش به صورت اتوماتیک عمل booting را بدون نظارت کاربر پیکربندی نماید . BOOTP اطلاعاتی در مورد IP address های اختصاص یافته به یک host ، و IP address های server های میزبان و نام فایل های مورد نیاز برای بارگزاری درون حافظه و اجرای آن را ارائه میدهد. دیگر اطلاعات پیکربندی مانند local subnet mask ، local time offset ، آدرس های پیش فرض و اختصاص یافته به منابع موجود در شبکه و نیز آدرس های مختلف سرویس های اینترنتی را میتوان توسط BOOTP به اطلاع host های موجود در شبکه رساند.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

BOOTP از دو port numbers شناخته شده استفاده می کند . پورت UDP با شماره 67 که برای server ها مورد استفاده قرار میگیرد و پورت UDP با شماره 68 که از آن برای client ها استفاده میشود. نحوه برقراری ارتباط به این شکل است که Client های سرویس گیرنده BOOTP با استفاده از یک پیام broadcasts ، یک packet که BOOTREQUEST نامیده میشود را به server ارسال میکنند که این packet شامل آدرس فیزیکی client های شبکه میباشد(البته به صورت اختیاری در صورت وجود میتواند شامل IP address های کلاینتها نیز باشد). در قسمت هجدم از دوره آموزش نتورک پلاس به بررسی نحوه کارکردن پروتکل BOOTP و DHCP می پردازیم.

همان طور که گفته شد Client ها میتوانند این درخواست را با ارسال یک پیام broadcasts با آدرس 255.255.255.255 که یک آدرس ویژه میباشد و محدوده آدرس های broadcasts نیز نامیده میشود به اطلاع server برسانند.در ادامه Client ها منتظر پاسخ server میمانند ، اگر در یک بازه زمانی مشخص پاسخی دریافت نکردند، client ها درخواستشان را میتوانند مجددا ارسال کنند.

Server ها با استفده از یک packet تحت عنوان BOOTREPLY پاسخ درخواست client ها را ارسال میکنند درخواست به صورت اختیاری میتواند شامل اسامی فایلهای عمومی برای boot باشد به عناون مثال استفاده از اسامی مانند unix یا tosinso.com باشد زمانی که server پیام BOOTREPLY را ارسال میکند ، این فیلد جایگزینی برای fully qualified path name میشود که مناسب فایلهای boot میباشد .

server ها در تعیین این اسامی ممکن است از دیتا بیس خود، که مرتبط کننده آدرس های client ها و درخواست filename های کلاینتها میشود استفاده کنند که یک فایل boot اختصاصی و سفارشی شده برای کلاینتها میباشد. اگر filename یا اسم فایل bootrequest یک رشته خالی باشد آنگاه server ها یک فایل filename که شامل فایل پیش فرض برای بارگزاری (loaded) کلاینتها میباشد را برای آنها ارسال میکند.در مورد client هایی که IP address خود رانمیدانند، server ها باید یک دیتا بیس از آدرس های فیزیکی مرتبط با IP address ها را نیز داشته باشند، که این IP address های کلاینتها درون فیلدی با نام bootreply قرار داده شده است.

BOOTP جایگزینی برای RARP بود که عملکرد آن فقط در لایه Data Link شبکه ها بود همان طور که در ابتدا نیز گفته شد BOOTP یک پروتکل پیکر بندی بر مبنای UDP/IP بود که اطلاعات پیکربندی بیشتری را ارائه میداد و به شما امکان پیکربندی اتوماتیک کل IP های شبکه را در اختیار قرار می داد . BOOTPدر نهایت اساس معرفی و شکل گیری پروتکل DHCP شد که مخفف کلمات Dynamic Host Configuration Protocol است و امروزه در شبکه های کامپیوتری از DHCP به جای BOOTP برای پیکربندی و اختصاص IP address ها به صورت اتوماتیک جهت ارتباط با منابع شبکه استفاده میشود.در جدول زیر ساختار پروتکل BOOTP را مشاهده میکنید.

وب سایت توسینسو

توضیح هر کدام از فیلد های موجود در جدول

  • OP یا operation code پیامی که میتواند شامل BOOTREQUEST یا BOOTREPLYباشد.
  • Htype : نوع آدرس سخت افزاری
  • Hlen : یا طول آدرس سخت افزاری
  • Xid) transaction ID) : شناسه ای که به فرایند بین server و client اختصاص میابد.
  • Secs : ثانیه های سپری شده از زمان آغاز در خواست IP توسط کلاینتها یا تمدید IP که به این فرایند اختصاص یافته است.
  • Flags : بیت پرچم
  • Ciaddr : آدرس ip کلاینتها
  • Yiaddr : آدرس ip کلاینت شما
  • Siaddr : آدرس ip سرور بعدی مورد استفاده در bootstrap
  • Giaddr : ادرس ip مورد استفده در بوت شدت توسط یک relay agent
  • Chaddr : ادرس سخت افزاری کلاینت
  • Sname : host name برای یک server اختیاری با یک رشته خالی از محتوا
  • File: شامل نام فایل boot ، یک رشته خاتمه دهنده تهی ، نام عمومی یا یک رشته تهی در DHCPDISCOVER ، یک fully qualified directory-path name در DHCPOFFER
  • Options : فیلد پارامتر های اختیاری

پروتکل های مرتبط با BOOTP : شامل IP ، UDP ، DHCP ، RARP میباشد.


حجت رستمی
حجت رستمی

دانشجوی رشته شبکه و متخصص Passive

دانشجوی رشته اینترنت و شبکه های گسترده علاقه مند به یادگیری active شبکه

نظرات