معرفی PVM و سناریوی نصب روی VMware
(PVM)PersianVM یک هایپروایزور بومی برای مدیریت متمرکز ماشینهای مجازی سازمان است که در سناریوهای تست و آموزش یا محیط آزمایشگاهی میتواند داخل یک ماشین مجازی روی VMware نصب شود؛ اما چون خود PVM میزبان ماشینهای مجازی دیگر است، نصب آن روی VMware نیازمند تنظیمات خاص در سطح پردازنده و شبکه خواهد بود.
پیشنیازهای اجرای صحیح PVM…
در این مقاله، تنظیمات لازم برای نصب صحیح PVM روی VMware را بررسی میکنیم؛ از فعالسازی Nested Virtualization گرفته تا تنظیم گزینههای امنیتی Port Group مانند Promiscuous Mode، MAC Address Changes و Forged Transmits.
چرا نصب PVM روی VMware به به Nested Virtualization نیاز دارد؟
در حالت عادی، یک ماشین مجازی روی VMware مانند یک سیستم مستقل اجرا میشود و منابع پردازنده، حافظه، دیسک و شبکه را از میزبان اصلی دریافت میکند؛ اما زمانی که قرار است داخل همان ماشین مجازی، هایپروایزری مانند PVM نصب شود و ماشینهای مجازی دیگری را اجرا کند، ساختار متفاوت خواهد بود، زیرا ماشین مجازی PVM باید هم به قابلیتهای مجازیسازی پردازنده دسترسی داشته باشد و هم بتواند ترافیک شبکه ماشینهای داخلی خود را با MAC Addressهای متفاوت ارسال و دریافت کند.
- به همین دلیل، پیش از نصب و راهاندازی PVM روی VMware، لازم است دو بخش مهم بررسی و تنظیم شوند:
-
- تنظیم پردازنده برای فعالسازی Nested Virtualization
- تنظیم Port Group برای عبور ترافیک ماشینهای PVM
پیشنیازهای نصب PVM روی VMware
پیش از شروع نصب، بهتر است ماشین مجازی در VMware با منابع مناسب ایجاد شود. مقدار منابع موردنیاز میتواند بسته به تعداد ماشینهای مجازی داخل PVM متفاوت باشد، اما بهصورت کلی باید به موارد زیر توجه شود:
- تأمین فضای ذخیرهسازی کافی برای سامانه و دیسکها
- اتصال ماشین مجازی PVM به Port Group مناسب شبکه
- تأمین RAM مناسب برای پایداری ماشینهای مجازی داخلی
- تنظیم سیاستهای امنیتی Port Group روی حالت Accept
- فعالسازی Nested Virtualization برای ماشین مجازی PVM
- تأمین CPU کافی برای اجرای PVM و ماشینهای مجازی داخلی
⇐ نکته مهم این است که نصب PVM روی VMware معمولاً برای محیطهای تست، دمو، آموزش یا بررسی قابلیتها استفاده میشود. برای استفاده در محیط عملیاتی، بهتر است منابع سختافزاری، معماری شبکه و سیاستهای امنیتی بهصورت دقیقتر بررسی شوند.

فعالسازی Nested Virtualization در VMware
قابلیت Nested Virtualization این امکان را فراهم میکند که یک ماشین مجازی بتواند خودش نقش میزبان مجازیسازی را ایفا کند و داخل خود، ماشینهای مجازی دیگری را اجرا کند.
از آنجایی که PVM یک هایپروایزور است، برای اجرای ماشینهای مجازی به دسترسی به قابلیتهای مجازیسازی پردازنده نیاز دارد. اگر این قابلیت فعال نباشد، ممکن است نصب سامانه انجام شود، اما در زمان اجرای ماشینهای مجازی داخل PVM با مشکل مواجه شوید.
- برای فعالسازی این قابلیت در VMware، باید وارد تنظیمات ماشین مجازی شوید و در بخش CPU یا Processor گزینه زیر را فعال کنید:
Expose hardware-assisted virtualization to the guest OS ⇒

با فعال شدن این گزینه، ماشین مجازی PVM میتواند به قابلیتهای مجازیسازی سختافزاری پردازنده مانند Intel VT-x یا AMD-V دسترسی داشته باشد و ماشینهای مجازی داخلی خود را اجرا کند.
چرا Nested Virtualization برای PVM ضروری است؟
PVM برای اجرای ماشینهای مجازی، به قابلیتهای مجازیسازی در سطح پردازنده نیاز دارد. زمانی که PVM روی سرور فیزیکی نصب میشود، این دسترسی مستقیماً از سختافزار دریافت میشود. اما وقتی PVM داخل یک ماشین مجازی روی VMware نصب میشود، این قابلیت باید از طریق VMware در اختیار ماشین مجازی قرار گیرد.
- برخی از مشکلات احتمالی عبارتاند از:
- اجرا نشدن ماشینهای مجازی داخل PVM
- خطا در زمان روشن کردن ماشین مجازی
- شناسایی نشدن قابلیت مجازیسازی توسط سامانه
- اختلال در عملکرد سرویسهای وابسته به مجازیسازی
- عدم امکان استفاده صحیح از منابع پردازنده برای ماشینهای داخلی
بنابراین، فعالسازی Nested Virtualization یکی از مهمترین مراحل نصب PVM روی VMware است.

تنظیمات شبکه برای ماشین مجازی PVM
پس از تنظیمات پردازنده، بخش مهم بعدی مربوط به شبکه است. ماشینهای مجازی که داخل PVM ایجاد میشوند، هرکدام MAC Address مخصوص به خود را دارند؛ بنابراین ترافیکی که از ماشین مجازی PVM عبور میکند، الزاماً فقط با MAC Address کارت شبکه خود PVM ارسال و دریافت نمیشود.
نقش Port Group در عبور ترافیک…
در این سناریو، ماشین مجازی PVM فقط یک سیستمعامل معمولی نیست؛ بلکه میزبان چند ماشین مجازی دیگر است. به همین دلیل، کارت شبکه و Port Group مربوط به آن باید اجازه عبور ترافیک با MAC Addressهای متفاوت را داشته باشند و لازم است تنظیمات امنیتی Port Group مربوط به ماشین مجازی PVM بررسی شود.

تنظیمات امنیتی موردنیاز در Port Group
در VMware، سیاستهای امنیتی Port Group یا vSwitch نحوه عبور ترافیک، تغییرات MAC Address و ارسال بستهها را کنترل میکنند؛ بنابراین برای اجرای صحیح PVM، گزینههای Promiscuous Mode ،MAC Address Changes و Forged Transmits باید در Port Group مربوط به ماشین مجازی PVM روی حالت Accept قرار گیرند.
| پارامتر | مقدار پیشنهادی | دلیل |
|---|---|---|
| Promiscuous Mode | Accept | امکان دریافت ترافیک با MAC Addressهای متفاوت |
| MAC Address Changes | Accept | پذیرش تغییر MAC Address در مقصد ترافیک |
| Forged Transmits | Accept | امکان ارسال ترافیک با MAC Address مبدا متفاوت |
این تنظیمات باعث میشوند ترافیک ماشینها بهدرستی از کارت شبکه ماشین مجازی PVM عبور کند و ارتباط شبکهای ماشینهای داخلی با اختلال مواجه نشود.

Promiscuous Mode چیست و چرا باید روی Accept باشد؟
وقتی کارت شبکه در وضعیت Promiscuous Mode قرار میگیرد، میتواند بستههای شبکه را مستقل از MAC Address خود دریافت کند. در سناریوی نصب PVM روی VMware، چون ماشینهای مجازی داخل PVM هرکدام MAC Address جداگانه دارند، غیرفعال بودن این گزینه ممکن است باعث عبور نکردن بخشی از ترافیک، قطع ارتباط یا اختلال در شبکه ماشینهای مجازی داخلی شود.
- بنابراین مقدار این گزینه باید به شکل زیر تنظیم شود:
Promiscuous Mode: Accept ⇒
MAC Address Changes چیست؟
گزینه MAC Address Changes مشخص میکند که VMware اجازه پذیرش ترافیک با MAC Address متفاوت از کارت شبکه ماشین مجازی را میدهد یا نه. در نصب PVM روی VMware، چون ماشینهای مجازی داخلی هرکدام MAC Address اختصاصی دارند، این گزینه باید روی حالت Accept قرار گیرد تا ترافیک آنها بهدرستی پردازش و به مقصد منتقل شود.
- مقدار پیشنهادی:
MAC Address Changes: Accept ⇒
Forged Transmits چیست؟
گزینه Forged Transmits مشخص میکند که ماشین مجازی اجازه ارسال پکت با MAC Address مبدا متفاوت از کارت شبکه خود را دارد یا نه. در PVM، چون ترافیک خروجی ماشینهای مجازی داخلی از طریق کارت شبکه ماشین PVM عبور میکند، Source MAC بستهها میتواند متفاوت باشد؛ بنابراین این گزینه باید روی حالت Accept قرار گیرد تا VMware ترافیک ماشینهای داخلی را مسدود نکند.
- برای جلوگیری از این مشکل، مقدار این گزینه باید روی حالت زیر قرار گیرد:
Forged Transmits: Accept ⇒
تنظیمات پیشنهادی برای ماشین مجازی PVM در VMware
برای نصب PVM روی VMware، بهتر است تنظیمات ماشین مجازی به شکل زیر بررسی شود:
| بخش تنظیمات | مقدار پیشنهادی |
|---|---|
| CPU | متناسب با تعداد ماشینهای مجازی موردنیاز |
| RAM | متناسب با بار کاری و تعداد ماشینها |
| Disk | فضای کافی برای نصب PVM و دیسک ماشینهای مجازی |
| Network Adapter | اتصال به Port Group مناسب |
| Nested Virtualization | Enabled |
| Promiscuous Mode | Accept |
| MAC Address Changes | Accept |
| Forged Transmits | Accept |
این جدول میتواند بهعنوان چکلیست اولیه پیش از نصب PVM مورد استفاده قرار گیرد.
خطاهای رایج پس از نصب PVM روی VMware
اگر تنظیمات بالا بهدرستی انجام نشود، ممکن است پس از نصب PVM با برخی خطاها یا اختلالها مواجه شوید. رایجترین مشکلات عبارتاند از:
-
ماشینهای مجازی داخل PVM اجرا نمیشوند
در این حالت، ابتدا باید فعال بودن Nested Virtualization بررسی شود؛ چون بدون این قابلیت، PVM نمیتواند ماشینهای مجازی داخلی را بهدرستی اجرا کند.
-
ماشینهای مجازی روشن میشوند اما شبکه ندارند
اگر ماشینها روشن میشوند اما شبکه ندارند، تنظیمات Port Group را بررسی کنید و سه گزینه Promiscuous Mode، MAC Address Changes و Forged Transmits را روی Accept قرار دهید.
-
ارتباط بعضی ماشینها برقرار است و بعضی دیگر مشکل دارند
اگر ارتباط بعضی ماشینها برقرار است و برخی دیگر مشکل دارند، احتمالاً عبور ترافیک با MAC Addressهای متفاوت در Port Group بهدرستی مجاز نشده است.
-
ترافیک خروجی ماشینهای داخلی عبور نمیکند
در این سناریو، گزینه Forged Transmits اهمیت دارد؛ اگر روی Reject باشد، VMware ممکن است ترافیک خروجی با Source MAC متفاوت را مسدود کند.
نکات مهم امنیتی هنگام تغییر تنظیمات Port Group
قرار دادن گزینههای امنیتی Port Group روی Accept برای سناریوهای Nested Virtualization لازم است، اما باید با دقت انجام شود. بهتر است این تنظیمات فقط روی Port Group مربوط به ماشین مجازی PVM اعمال شود، نه روی تمام شبکه یا Port Groupهای غیرمرتبط.
- برای مدیریت بهتر امنیت شبکه، پیشنهاد میشود:
- تنظیمات Accept فقط روی همان Port Group اعمال شود.
- یک Port Group اختصاصی برای ماشین مجازی PVM ایجاد شود.
- از اعمال این تنظیمات روی Port Groupهای عمومی خودداری شود.
- دسترسی شبکهای ماشین مجازی PVM بر اساس نیاز واقعی محدود شود.
- در محیطهای عملیاتی، تغییرات با هماهنگی تیم شبکه و امنیت انجام شود.
این کار باعث میشود هم PVM بتواند بهدرستی ماشینهای مجازی داخلی را اجرا کند و هم سطح ریسک شبکه کنترلشده باقی بماند.

چکلیست نهایی نصب PVM روی VMware
پیش از نصب یا راهاندازی نهایی PVM روی VMware، موارد زیر را بررسی کنید تا اجرای ماشینهای داخلی با اختلال پردازشی یا شبکهای مواجه نشود.
- تنظیم Forged Transmits روی حالت Accept
- اتصال کارت شبکه PVM به Port Group صحیح
- تنظیم Promiscuous Mode روی حالت Accept
- تست ارتباط شبکه ماشینهای داخلی پس از نصب
- ایجاد ماشین مجازی PVM با منابع پردازشی مناسب
- اختصاص فضای دیسک کافی برای ماشینهای داخلی
- تنظیم MAC Address Changes روی حالت Accept
- فعالسازی Nested Virtualization برای ماشین PVM
- فعالسازی گزینه Expose virtualization to guest OS
اجرای پایدار PVM روی VMware
برای نصب PVM روی VMware باید دو بخش اصلی بهدرستی تنظیم شود: فعالسازی Nested Virtualization در تنظیمات پردازنده و قرار دادن گزینههای Promiscuous Mode، MAC Address Changes و Forged Transmits روی حالت Accept در Port Group مربوط به ماشین مجازی PVM. با این تنظیمات، PVM میتواند ماشینهای مجازی داخلی خود را بدون اختلال پردازشی و شبکهای اجرا کند.



