تقریباً تمام رایانه های جهان امروز به اینترنت متصل هستند و شبکه سازی با استفاده از پروتکل های شبکه انجام می شود. بیش از ۷۰۰۰ پروتکل شبکه در جهان وجود دارد و تعداد آنها همچنان در حال افزایش است. همه دستگاه های متصل به شبکه در یک سطح با یکدیگر تعامل دارند و پیام ها را در یک توالی معین و در قالب خاصی رد و بدل می کنند. پروتکل شبکه دقیقاً ترتیب چنین تعاملی است، سیستم خاصی از اشکال و قوانین، که به عنوان مجموعه ای از رویه ها برای هر سطح از سلسله مراتب شبکه ارائه می شود. پروتکل های شبکه همانند زبان انسان ها هستند که بدون آن برقراری ارتباط امکان پذیر نیست، تجهیزات شبکه همچون سرور که نقش مهم آن بر هیچکس پوشیده نیست، با استفاده از نرم افزارها و قابلیت های جدید توانسته اند نیازهای به روز و همگام با تکنولوژی بشر و همچنین محاسبات پیچیده سازمان ها و ادارات را به راحتی پاسخگو باشند. یکی از این پروتکل ها، پروتکل PXE می باشد، که در این مقاله قصد داریم آشنایی بیشتری بدست آوریم.
اگر دقت کنید تمامی جوانب زندگی در چهارچوب های تعیین شده به نام قوانین قرار دارند. بدون قانون نمی توان نظم را بر دنیا حاکم کرد. پروتکل های شبکه نیز می توانند تعریفی مانند قوانین دنیای ما داشته باشند. درحقیقت پروتکل ها، استانداردهای انعطاف پذیری هستند که اجازه حکومت بر اینترنت را تا حدودی امکان پذیر می کند. یکی از مهم ترین دلایل محبوبیت اینترنت نسبت به تکنولوژی های دیگر، نامتمرکز بودن آن است. به این معنی که هرکسی می تواند بدون جواب پس دادن، هر چیزی که دلش می خواهد در آن منتشر کند. به خاطر همین موضوع است که اشاره کردیم پروتکل ها اجازه حکومت بر شبکه و اینترنت را تا حدودی امکان پذیر می کند. هدف خلق و استفاده از پروتکل های نتورک در ابتدا برای برقراری ارتباط بود. پروتکل شبکه مجموعه ای از قوانین ثابتی است که تعیین می کند چگونه داده ها بین دستگاه های مختلف در یک شبکه منتقل شوند. اساساً، پروتکل به دستگاه های متصل این امکان را می دهد تا صرف نظر از هر گونه تفاوت در نوع پردازش داخلی، ساختار یا طراحی شان، با یکدیگر ارتباط برقرار کنند. این یک رویکرد و قانون کلی در زیر ساخت شبکه است، در پروتکل PXE که نقش حیاتی در زیرساخت مرکز داده را دارد توسط محصولات زیادی پشتیبانی می شود و در اختیار شرکت ها قرار می گیرد.
پروتکل PXE یا PXE Boot مخفف Pre-boot Execution Environment بخشی حیاتی از زیرساخت مرکز داده است و می توان آن را با استفاده از نرم افزارهای متن باز یا محصولاتی که توسط شرکت ها پشتیبانی می شوند، پیاده سازی کرد. PXE این قابلیت را فراهم می کند تا سرورها یا ورک استیشن ها به صورت خودکار از طریق شبکه راه اندازی شوند. افراد فعال در حوزهٔ پیاده سازی زیرساخت سرورهای bare metal، دستگاه های تعبیه شده یا embedded devices و دستگاه های اینترنت اشیا با درک عمیق این مبحث می توانند از مزایای PXE بهره بیشتری ببرند. در ساده ترین حالت، محیط PXE به معنای راه اندازی سیستم از طریق کارت شبکه است. برای راه اندازی دستگاه در محیط PXE، انجام دستورالعمل های مربوطه لازم می باشد. به تعبیر ساده می توان گفت، محیط PXE به معنای راه اندازی سیستم از طریق کارت شبکه است. برای راه اندازی دستگاه دریک محیط PXE، انجام برخی دستورالعمل ها لازم است و رایج ترین روش برای انجام PXE، پیکربندی DHCP Server در جهت ذخیره و ارائه اطلاعات می باشد.
این پروتکل به کامپیوتر این امکان را می دهد که از طریق شبکه بصورت Remote بوت شود و این در حالیست که سیستم کلاینت هارد دیسکی ندارد و از طریق یک سرور مجزا در شبکه بوت می شود و سیستم عامل روی آن نصب می شود و آماده به کار می شود. PXE برای اولین بار به عنوان یک فریمورک Wired for Management یا WfM توسط شرکت Intel در سال 1999 معرفی شد. WfM شرکت اینتل امروز توسط Active Management Technology جایگزین شده است اما PXE همچنان ابزاری ارزشمند در نزد متخصصان شبکه در سرتاسر جهان است. بوت کردن سیستم از طریق شبکه معمولا در محیط هایی انجام می شود که سیستم های کلاینت فاقد هارد دیسک هستند و این فرآیند بوت از طریق روتر ها و سرور های مرکزی انجام می شود و سیستم های کلاینت که در اینجا به آنها Thin Client میگوییم بصورت مرکزی مدیریت می شوند. در محیط هایی با پردازش ها و محاسبات متمرکز هزینه های نگهداری کاهش می یابد و امکان افزایش امنیت شبکه و کنترل متمرکز روی سیستم های کلاینت را به ما می دهد.
اجزای PXE Boot
در خصوص معرفی PXE، نیاز است به سه ویژگی زیر پرداخته شود:
1. کارت شبکه با قابلیت PXE
به خاطر داشته باشید که تمام کارت های شبکه یکسان نیستند. بسیاری از کارت های شبکه عمومی قابلیت PXE را ندارند اما این مسئله به سرعت در حال تغییر است زیرا پیشرفت ها در این زمینه باعث شده ویژگی های بیشتری به دستگاه های ارزان تر اضافه گردند. در سرورهای دیتاسنتر، استفاده از کارت شبکه با قابلیت PXE یک استاندارد محسوب می شود.
2. DHCP
DHCP به کلاینت اجازه می دهد تا آدرس IP را دریافت کرده و به سرورهای شبکه دسترسی پیدا کند. در DHCP دو نوع عامل وجود دارد:
• DHCP server
• DHCP client
DHCP server پیکربندی شبکه و آدرس IP را به کلاینت ها ارائه می دهد. DHCP client نیز روی کامپیوترهایی که به شبکه متصل هستند اجرا شده و درخواست پیکربندی را برای DHCP server ارسال می کند.
3. TFPT Server
می توان گفت که TFTP مخفف Trivial File Transfer Protocol پروتکلی ساده مبتنی بر UDP جهت ارسال و دریافت یک فایل می باشد و به راحتی در محیط هایی که دارای منابع محدود هستند قابل پیاده سازی است. TFTP از ویژگی هایی همچون directory listing نمایش محتوای دایرکتوری، authentication یا احراز هویت و authorization یا اجازه و تعیین سطح دسترسی برخوردار نمی باشد. بنابراین نیاز است از مسیر دقیق فایلی که قصد دانلود آن را دارید مطلع باشید.
پروتکل PXE درخواست کاربر را به سرور ارسال می کند و پشتیبانی از قابلیت PXE را نیز اعلام می کند. پس از آن، اگر سرور از قابلیت PXE استفاده کند، یک لیست از بوت سرورها و سیستم عامل های موجود را به کاربر ارسال می کند. در اینجا، کاربر بوت سرور مورد نیاز را پیدا کرده و آنچه باید دانلود شود را دریافت می کند. پس از آن کاربر با استفاده از پروتکل TFTP فایل مورد نظر را دانلود کرده و آن را اجرا می کند تا سیستم عامل بارگذاری شود. اگر سرور به PXE مجهز نشده باشد، کد PXE را نادیده می گیرد تا از اختلال در عملیات DHCP و پروتکل Bootstrap به اختصار BP جلوگیری شود. بطور کلی پروتکل PXE معمولا در محیط هایی که سرویس دهنده های شبکه مدیریت می شوند، مورد استفاده قرار می گیرد. عملکرد پروتکل PXE شامل چندین مرحله کلیدی است. ابتدا زمانی که یک کامپیوتر جدید روشن می شود و به شبکه متصل می گردد، آن ها از طریق پروتکل DHCP به دنبال دریافت آدرس IP می کند. در این مرحله سرور DHCP پیشنهادی شامل آدرس IP و آدرس سرور PXE را برای دستگاه ارسال می کند. پس از دریافت اطلاعات، کامپیوتر از سرور PXE درخواست می کند تا فایل های بوت لازم را از روی شبکه دریافت کند. سرور PXE یک فایل بوت مناسب فراهم می آورد که به کامپیوتر امکان می دهد از طریق شبکه سیستم عامل خود را بارگیری کند. پس از اتمام این مراحل، کامپیوتر قادر به بارگذاری سیستم عامل و نرم افزارهای مورد نیاز از روی شبکه خواهد بود. این فرآیند نشان دهنده کارایی و سادگی استفاده از پروتکل PXE است و قابلیت مدیریت و توزیع متمرکز نرم افزارها را به مدیران IT می دهد.
مزایای کلیدی استفاده از قابلیت PXE شامل موارد زیر هستند :
• ذخیره سازی متمرکز اطلاعات امنیت اطلاعات را برای شبکه فراهم می کند.
• نگهداری از سیستم های کلاینت را آسان می کند زیرا بسیاری از کار ها بصورت Remote انجام می شود.
• این پروتکل باعث کاهش هزینه های سخت افزاری و نرم افزاری می شود. با پیاده سازی PXE، سازمان ها می توانند نیاز به
دیسک های فیزیکی جداگانه برای هر دستگاه را حذف کنند، زیرا بوت سیستم ها از طریق شبکه امکان پذیر است.
• سیستم کلاینت یا همان Workstation نیازی به هارد دیسک یا سایر دستگاه های ذخیره سازی برای بوت شدنش ندارد.
• پروتکل PXE باعث افزایش بهره وری تیم های IT می شود. مدیران IT می توانند به سادگی مدیریت سیستم عامل ها و نرم افزارها را از طریق شبکه انجام داده و این فرآیند را برای تعداد زیادی از دستگاه ها به صورت همزمان انجام دهند.
• PXE به Vendor خاصی وابسته نیست. به این معنی که میتوانید به راحتی شبکه خود را گسترش دهید و همچنان از PXE استفاده کنید.
در پروسه این پروتکل بازیابی تصویر دیسک نصب شده محیط های شرکتی مفید است. اگر تیم فناوری اطلاعات به نصب یا به روز رسانی سیستم عامل روی بسیاری از ماشین ها به طور همزمان نیاز داشته باشد بازیابی همه آنها از یک سرور سریعتر از قرار دادن یک دیسک فیزیکی در هر کامپیوتر است. اجرای نصب کامل از خود سرور بوت نیز امکان پذیر است در این مورد کامپیوتر بوت PXE به عنوان یک تیم کلاینت عمل می کند. فقط از طريق ماوس و صفحه کلید ورودی دریافت می کند و خروجی را روی صفحه نمایش برمی گرداند کل سیستم شامل برنامه ها و فایل های ذخیره شده روی سرور اجرا می شود. استفاده از پروتکل PXE می تواند بهبود چشمگیری در کارایی سیستم ها و مدیریت شبکه ها به ارمغان آورد. این پروتکل امکان نصب خودکار و یکپارچه سیستم عامل ها و نرم افزارها را برای دستگاه های متعدد فراهم می کند که منجر به کاهش زمان و هزینه های مربوط به مدیریت سیستم ها می شود. یکی از مزایای کلیدی پروتکل PXE، امکان بازیابی سریع سیستم ها در مواقع خرابی است. با استفاده از این پروتکل می توان در صورت وقوع مشکلاتی نظیر خرابی در سیستم عامل یا از دست رفتن داده ها، فرآیند بازیابی سیستم ها را با سرعت بالا و به صورت متمرکز انجام داد. علاوه بر این PXE به مدیران شبکه این امکان را می دهد تا با استانداردسازی فرآیند نصب و پیکربندی سیستم ها، مدیریت بهتری روی زیرساخت های شبکه خود داشته باشند. همچنین این پروتکل به ویژه در محیط های بزرگ مانند مراکز داده و شبکه های سازمانی که نیاز به مدیریت تعداد زیادی دستگاه دارند، بسیار مؤثر است.
چالش های این پروتکل به این صورت است که علی رغم مزایای قابل توجه پروتکل PXE پیاده سازی آن می تواند با چالش هایی نیز همراه باشد. یکی از اصلی ترین چالش ها، نیاز به تنظیم دقیق سرورها و کلاینت ها است تا فرآیند بوت به درستی انجام شود. هرگونه اشتباه در تنظیمات شبکه یا مشکلات ارتباطی بین سرور و کلاینت می تواند باعث عدم موفقیت در بوت شود. چالش دیگری که ممکن است در پیاده سازی PXE بروز کند، مسائل امنیتی است. با توجه به اینکه این پروتکل از پروتکل های قدیمی مانند TFTP استفاده می کند که فاقد ابزارهای امنیتی مدرن هستند، ممکن است به بروز آسیب پذیری های امنیتی منجر شود. بنابراین استفاده از روش های امنیتی تکمیلی مانند فایروال ها و شبکه های مجازی می تواند در مقابل تهدیدهای احتمالی محافظت کند. سایر چالش ها می توانند شامل محدودیت های سخت افزاری، سازگاری با تجهیزات مختلف و نیاز به منابع سروری مناسب برای پشتیبانی از تعداد زیادی کلاینت باشند. اعمال تغییرات در زیرساخت های موجود برای سازگاری با پروتکل PXE نیز می تواند از چالش های مربوط به پیاده سازی باشد. با وجود این چالش ها اگر پروتکل PXE به درستی پیاده سازی و مدیریت شود، می تواند به عنوان یک ابزار قدرتمند در بهبود کارایی و مدیریت شبکه ها مورد استفاده قرار گیرد. در نهایت بررسی و رفع چالش های احتمالی در مراحل مختلف پیاده سازی می تواند از موفقیت در بهره برداری از این فناوری اطمینان حاصل کند.
در انتها باید خاطر نشان شد که یک سیستم را بدون هیچ دستگاه ذخیره سازی راه اندازی نمایید که موجب افزایش کارایی و کاهش هزینه می شود. همچنین، نیازی به یک دستگاه USB جهت ذخیره سازی و استفاده از ابزار های ریکاوری نخواهید داشت. شما می توانید فقط با بوت کردن کامپیوتر دارای مشکل از طریق شبکه و استفاده از ابزارهای rescue یا نجات سیستم یا سیستم های ریکاوری، مشکل را تشخیص دهید. در مجموع پروتکل PXE ابزاری قدرتمند برای مدیران شبکه است که نصب و راه اندازی و مدیریت سیستم عامل ها را در محیط های پیچیده شبکه ای تسهیل می کند. با کاهش زمان و هزینه ها، این پروتکل به کاربران این امکان را می دهد تا با بهره وری بیشتری کار کنند و خطاهای انسانی را به حداقل برسانند. بنابراین، در محیط های مدرن شبکه ای که به سرعت و دقت بسیار بالا نیاز دارند، پروتکل PXE انتخابی واجب و ضروری محسوب می شود.