یکی از ویژگیهای نرمافزارهای مجازیسازی دارا بودن ویژگی شبکه مجازی برای ارتباط ماشینهای مجازی با خود و دنیای بیرون آن است که در این قسمت به طور کامل آن را بررسی خواهیم کرد.
شبکه مجازی در VMware workstation شامل موارد زیر است:
- سوئیچهای مجازی (Virtual Switches)
این نوع سوئیچها به مانند سوئیچهای فیزیکی اجزای شبکه را به هم متصل میکند و نام آنها از VMnet1، VMnet2 و… تشکیل شده است.
در زیر جدول شبکههای این نرمافزار را مشاهده میکنید که نام پیشفرض آنها هم در جدول ذکر شده است، توجه داشته باشید با این شبکهها در ادامه کار خواهیم کرد.
نام سوئیچ | نوع شبکه |
VMnet0 | Bridged |
VMnet8 | NAT |
VMnet1 | Host-only |
توجه داشته باشید در ویندوز میتوانید ۲۰ سویچ مجازی ایجاد کنید و در لینوکس ۲۵۵ تا.
- آداپتورهای شبکه مجازی (Virtual Network Adapters)
از این سرویس برای ایجاد کارت شبکه مجازی در سیستم استفاده خواهد شد و از آن طریق میتوانید ماشینهای مجازی خود را شبکه کنید.
- سرور DHCP مجازی
این سرویس ipهای مورد نظر شما را به کارت شبکه مشخص شده که از نوع Host-only یا NAT است میدهد.
- سرویس NAT
این سرویس هم برای ارتباط بین شبکه داخلی و شبکه خارجی کاربرد دارد که روی آن کار خواهیم کرد.
برای اینکه بهتر با موضوع شبکه در این نرمافزار آشنا شویم سرویس Virtual Network Editor را اجرا میکنیم، برای این کار وارد Start شوید و به مانند شکل روبرو سرویس Virtual Network Editor را با سطح دسترسی Administrator اجرا کنید.
در این سرویس سه نوع کارت شبکه را مشاهده میکنید که قبلاً هم به آن اشاره کردیم.
Bridged: نام کارت شبکهی مجازی که برای آن در نظر گرفته شده است VMnet0 است، این نوع کارت شبکه برای ارتباط با شبکهی خارجی کاربرد دارد مثلاً اگر بخواهید ماشین مجازی ایجاد شده در سیستم خود را در شبکه واقعی سازمان خود معرفی کنید باید از این گزینه استفاده کنید.
Host-only: برای ارتباط ماشین مجازیها با هم است و برای ایجاد یک شبکه داخلی کاربرد دارد و نمیتوان با شبکه خارجی در ارتباط بود.
NAT: این نوع شبکه برای اختصاص دادن یک رنج IP نامعتبر که فقط در شبکه داخلی کاربرد دارد استفاده میشود یعنی همان شبکه Host-only با این تفاوت که میتوانید با شبکه بیرونی هم در ارتباط باشید یعنی اینکه نرمافزار VMware خود را به عنوان یک روتر بین ماشین مجازی و شبکه واقعی قرار میدهد و ارتباط آنها را برقرار میکند.
شبکه کردن دو ماشین مجازی با یکدیگر
استفاده از کارت شبکه Host-only
برای تست عملی کار در شبکه دو ماشین مجازی را آمادهی این کار میکنیم، در شکل روبرو ماشین Server-2012 را که قبلاً ایجاد کردهایم را مشاهده میکنید، از رو همین ماشین یک Full Clone تهیه کردیم تا بتوانیم این دو ماشین با ویندوز سرور ۲۰۱۲ را با هم شبکه کنیم برای شروع کار بر روی Edit virtual machine settings کلیک کنید.
در این قسمت لیست سختافزار ماشین مورد نظر را مشاهده میکنید برای اضافه کردن کارت شبکه به این ماشین بر روی Add کلیک کنید.
گزینهی Network Adapter را انتخاب کنید و بر روی Finish کلیک کنید.
در این صفحه و برای شروع کار ارتباط شبکه را از نوع Host-only در نظر میگیریم، یعنی بعد از انتخاب Custom از لیست کشویی گزینهی VMnet1 (Host-only) را انتخاب کنید و بر روی OK کلیک کنید.
دقیقاً کارهای قبلی را برای ماشین دوم که با نام Clone of server-2012 است را انجام دهید که این موضوع را در شکل روبرو مشاهده میکنید.
بعد از روشن کردن ماشین مجازی وارد سرویس CMD شوید و دستور ipconfig /all را اجرا کنید، همانطور که مشاهده میکنید آدرس ۱۹۲.۱۶۸.۲۱.۱۳۰ از طریق سرویس DHCP دریافت شده است اگر در ماشین دوم هم همین دستور را اجرا کنید آدرس ip آن ۱۹۲.۱۶۸.۲۱.۱۳۱ خواهد بود، همانطور که در قسمت قبل بررسی کردیم سرویس سوئیچ مجازی نرمافزار VMware یک سرویس DHCP در خود دارد که به ماشینهایی که به کارت شبکهی از نوع Host-only و NAT متصل میشود به صورت اتوماتیک IP تخصیص میدهند.
اگر دوباره سرویس Virtual Network Editor را فعال کنید ، از لیست مورد نظر گزینهی VMnet1 را انتخاب کنید، در پائین صفحه Subnet IP و Subnet mask را مشاهده میکنید که در رنج ۱۹۲.۱۶۸.۲۱.۰ است که این همان آدرسی است که از طریق DHCP به ماشینها داده شده است، برای تنظیم DHCP هم میتوانید بر روی DHCP Settings کلیک کنید، توجه کنید اگر تیک گزینهی Use local DHCP… را بردارید دیگر سرویس DHCP به ماشینها آدرس اختصاص نخواهد داد و باید آدرس را به صورت دستی وارد کنید.
کار با کارت شبکه NAT
برای اینکه از عملکرد کارت شبکه NAT هم مطلع شویم دوباره وارد تنظیمات ماشین مجازی شوید و کارت شبکه را از لیست انتخاب کنید و بعد از سمت راست گزینهی VMnet8(NAT) را انتخاب کنید و بر روی OK کلیک کنید.
اگر دوباره دستور Ipconfig /all را اجرا کنید اطلاعات شکل روبرو را مشاهده خواهید کرد که آدرس IP تغییر کرده است و تفاوتی که در این قسمت میتوان مشاهده کرد این است که گزینهی Default Gateway اضافه شده است و این گزینه برای ارتباط ماشین شما با شبکه خارجی مانند اینترنت است، وارد Virtual Network Editor شوید و از لیست گزینهی VMnet8 را انتخاب کنید، همانطور که مشاهده میکنید رنج آدرس ۱۹۲.۱۶۸.۲۲۳.۰ در نظر گرفته شده است که به ماشین اختصاص داده شده است، برای اینکه از تنظیمات NAT مطلع شویم بر روی NAT Settings کلیک کنید.
در این صفحه، در قسمت Gateway IP آدرس ۱۹۲.۱۶۸.۲۲۳.۲ مشخص شده است، این آدرس برای دسترسی ماشینها به شبکههای خارجی کاربرد دارد، این آدرس مختص خود VMware Workstation است و پلی است بین ماشین و اینترنت، در قسمت Port Forwarding میتوانید عملیات Forwarding را برای ماشین مورد نظر خود انجام دهید، برای استفاده از این قسمت بر روی Add کلیک کنید و پورت TCP و UDP و آدرس مربوط به ماشین مجازی خود را تعریف کنید.
گزینهی Allow active FTP هم برای دسترسی به اطلاعات ماشین مجازی از طریق FTP است، گزینهی Allow any Organizationally Unique Identifier اجازه دادن به مک آدرس مشخص برای ارتباط با شبکه NAT است. در قسمت DNS Settings میتوانید تیک گزینهی Auto detect… را انتخاب کنید تا طبق شبکه شما آدرس DNS برای ماشین مورد نظر Set شود، ولی اگر بخواهید به صورت دستی این کار را انجام دهید، باید تیک گزینهی مورد نظر را بردارید، در قسمت policy سه گزینه وجود دارد که گزینهی order درخواست DNS را به ترتیب زمان ارسال میکند، گزینهی Rotate به صورت چرخشی در یک زمان ارسال میشود و گزینهی Burst درخواستها را به سه سرور همزمان ارسال میکند ولی منتظر پاسخ از یک سرور مینشیند، قسمت Timeout هم برای تعداد دفعاتی است که ماشین نمیتواند به سرور DNS متصل شود و گزینهی آخر هم Retries که برای بازخوانی تعداد بازدید از سرور DNS است، در آخر کار هم سه قسمت مشخص شده است که باید آدرس DNS سرورهای داخلی و خارجی خود را در صورت نیاز ثبت کنید.
در قسمت NetBIOS که نوع دیگری از DNS با محدودیت کمتر است میتوانید تعداد دفعات و تعداد بازنگری را برای آن مشخص کنید.
تا اینجا کارت شبکه مجازی از نوع NAT و Host-only را بررسی کردیم، برای اینکه بین دو ماشین یک ارتباط شبکهای ایجاد کنیم باید یک سری از مراحل را طی کنیم:
۱- تخصیص دادن آدرس IP به هر دو ماشین مجازی که این کار را در قسمت قبل انجام دادیم و ماشینها از طریق DHCP آدرس دریافت کردند.
۲- برای اینکه ارتباط بین دو ماشین را چک کنیم، میتوانیم از دستور Ping استفاده کنیم، ولی اگر از این دستور استفاده کنید با پاسخی مواجه نخواهید شد، دلیل آن هم این است که سرویس فایروال در هر دو ماشین روشن میباشد و اجازه عبور به این نوع ارتباط را نمیدهد.
برای اینکه در فایروال ویندوز به دستور ping دسترسی دهید باید وارد سرویس Firewall به مانند شکل روبرو شوید و از سمت چپ بر روی Inbound Rules کلیک راست کنید و گزینهی New Rule را انتخاب کنید.
در کل میتوانستیم فایروال را خاموش کنیم ولی بهتر است برای امنیت بیشتر rule تعریف کنیم.
در این صفحه گزینهی Custom را انتخاب کنید و بر روی Next کلیک کنید.
در این قسمت گزینهی All Programs را انتخاب کنید ولی اگر بخواهید سرویس یا نرمافزار خاصی از این Rule استفاده کنند باید گزینههای دو و سه را انتخاب کنید.
بر روی Next کلیک کنید.
در این قسمت پروتکل ICMPv4 را از لیست انتخاب کنید و بر روی Customize کلیک کنید.
در این قسمت برای اینکه ICMPv4 را محدود کنیم از لیست مورد نظر گزینهی Echo Request را انتخاب کنید و بر روی ok کلیک کنید، با این کار فقط دستور Ping که درخواست Echo Request ارسال میکند فعال خواهد شد.
بر روی OK کلیک کنید و در صفحه بعد بر روی Next کلیک کنید.
در این صفحه میتوانید مشخص کنید چه آدرس IP و یا رنج IP میتوانند مجوز لازم را داشته باشند، برای تعریف آدرس میتوانید گزینهی These IP addresses را انتخاب و بر روی Add کلیک کنید، با این کار میتوانید رنج آدرس شبکه خود را تعریف کنید و دیگر کسی با آدرسی به غیر از این رنج آدرس نمیتواند درخواست Ping بفرستد.
در این قسمت گزینهی اول را انتخاب کنید و بر روی Next کلیک کنید.
در این قسمت میتوانید مشخص کنید که این Rule در کدام شبکه کارایی داشته باشد که در حال حاضر هر سه گزینه را انتخاب کنید و بر روی Next کلیک کنید.
در قسمت آخر هم یک نام برای Rule خود ایجاد کنید و بر روی Finish کلیک کنید تا تنظیمات اعمال شود.
Rule قبلی که در فایروال تعریف شده در ماشین Server-2012 تعریف شده است و درخواست ping آن باز شده است، اما اگر دستور ping را برای آدرس ماشین روبرویی که در اینجا Clone of Server-2012 است اجرا کنید با پیام Request time out مواجه خواهید شد.
در این صفحه وارد ماشین دوم شدیم و آدرس ماشین Server-2012 که بر روی آن Rule مربوط به دستور ping را فعال کردیم را تست کردیم و همانطور که مشاهده میکنید دستور Ping به درستی در حال کار است و برای اینکه این دستور در هر دو ماشین فعال شود باید Rule قبلی را که با هم انجام دادیم در ماشین مجازی Clone of Server-2012 انجام دهید.
کار با کارت شبکه Bridge
برای اینکه ماشین مجازی شما با دنیای واقعی در تماس باشد باید از کارت شبکه از نوع Bridge استفاده کرد که در این بخش این موضوع را بررسی میکنیم.
وارد سرویس Virtual Network Editor شوید، در لیست مورد نظر به صورت پیشفرض کارت شبکه مجازی VMnet0 به عنوات کارت شبکهی Bridge در نظر گرفته شده است اگر به قسمت Vmnet Information توجه کنید در قسمت Bridged to یک گزینهی Automatic وجود دارد که با انتخاب آن به صورت خودکار یک کارت شبکه که اولویت آن بیشتر است برای ارتباط انتخاب خواهد شد ولی اگر از چند کارت شبکه محتلف در سیستم واقعی خود استفاده میکنید، بهتر است کارت شبکه اصلی سیستم خود که به شبکه سازمان شما یا شبکه محلی متصل است را انتخاب کنید که در اینجا کارت شبکهی Realtek PCIe GBE Family Controller انتخاب و بر روی OK کلیک میکنیم.
برای اینکه کارت شبکه Bridged را بر روی ماشین مجازی مورد نظر خود فعال کنید از سمت چپ Network Adapter را انتخاب کنید و در لیست مورد نظر گزینهی Bridged را انتخاب کنید، با این کار طبق تنظیمی که در قسمت قبل انجام دادید به صورت خودکار به کارت شبکه واقعی سیستم متصل خواهید شد، به این نکته توجه کنید که اگر از ماشین مجازی بر روی لپ تا یا سایر وسایل استفاده میکنید برای متصل شدن به شبکه واقعی باید تیک گزینهی Replicate physical Network
Connection state را انتخاب کنید.
اگر وارد ماشین مجازی Servre-2012 و وارد تنظیمات کارت شبکه شوید مشاهده خواهید کرد که دومسن شبکه واقعی ما که Int.net بوده به کارت شبکه اختصاص داده شده است و اگر هم وارد Details آن شوید مشاهده خواهید کرد که آدرس در رنج ۱۹۲.۱۶۸.۵.۰ دریافت کرده است، یعنی این ماشین در حال حاضر میتواند به شبکه واقعی ما متصل شود.
اگر به تنظیمات کارت شیکه سرور Clone of Server-2012 توجه کنید مشاهده خواهید کرد که رنج آدرس این ماشین هم به ۱۹۲.۱۶۸.۵.۰ تغییر کرده است.
توجه داشته باشید در قسمت قبل برای اینکه دستور ping را در این دو ماشین فعال کنیم در فایروال تنظیماتی انجام دادیم، اما برای اینکه بر روی این آدرس هم کارایی داشته باشد باید وارد فایروال هر یک از ماشینها شوید و رنج آدرس را در Rule مورد نظر که ایجاد کردید وارد کنید.
نکته: اگر کارت شبکهی خود را بر روی Bridge قرار دادید در صورتی که بر روی شبکه واقعی شما سرویس DHCP فعال نیست باید به هر دو ماشین مجازی به صورت دستی IP دهید.