در Proxmox VE، شبکه‌ی مجازی‌سازی به‌صورت پیش‌فرض از bridge (پل شبکه‌ای) استفاده می‌کند. Bridge به این معناست که ماشین‌های مجازی (VMها) یا کانتینرها می‌توانند مستقیماً به شبکه‌ی فیزیکی وصل شوند، انگار که یک دستگاه واقعی روی آن شبکه هستند.

این کار باعث می‌شود که هر VM بتواند:

  • یک IP معتبر (public یا private) دریافت کند.

  • مستقیماً با شبکه LAN یا اینترنت ارتباط داشته باشد.

  • توسط روتر یا سوئیچ به عنوان یک کلاینت مستقل شناسایی شود.

مزایای استفاده از Bridge در Proxmox

  • VMها می‌توانند مستقیم با شبکه ارتباط داشته باشند.

  • ماشین‌ها می‌توانند از DHCP سرور شبکه IP بگیرند.

  • از نظر عملکرد شبکه، مثل یک سیستم فیزیکی مستقل عمل می‌کنند.

  • نیازی به NAT نیست (برخلاف حالت routed یا isolated).

 ساختار پیش‌فرض شبکه در Proxmox

وقتی Proxmox را نصب می‌کنید، به‌صورت پیش‌فرض یک bridge به نام vmbr0 ساخته می‌شود که به کارت شبکه فیزیکی مثل enp0s31f6 متصل است.

مثال از /etc/network/interfaces

auto lo
iface lo inet loopback

iface enp0s31f6 inet manual

auto vmbr0
iface vmbr0 inet static
    address 192.168.1.100
    netmask 255.255.255.0
    gateway 192.168.1.1
    bridge_ports enp0s31f6
    bridge_stp off
    bridge_fd 0

توضیح خطوط مهم:

  • bridge_ports enp0s31f6: مشخص می‌کند که این Bridge به کدام کارت شبکه فیزیکی متصل است.

  • address: IP سرور Proxmox روی این bridge تنظیم شده.

  • bridge_stp off: STP غیرفعال است (پروتکل جلوگیری از Loop).

  • bridge_fd 0: زمان delay فورواردینگ صفر است.

 چگونه یک VM را به Bridge وصل کنیم؟

  1. وارد پنل Proxmox شوید.

  2. VM مورد نظر را انتخاب کنید.

  3. به تب Hardware بروید.

  4. روی Add → Network Device کلیک کنید.

  5. Bridge را روی vmbr0 قرار دهید.

  6. Type را روی virtio (سریع‌تر) بگذارید.

  7. تنظیمات را ذخیره و VM را روشن کنید.

 تنظیم شبکه داخل VM

برای لینوکس:

auto eth0
iface eth0 inet dhcp

یا برای IP استاتیک:

auto eth0
iface eth0 inet static
    address 192.168.1.101
    netmask 255.255.255.0
    gateway 192.168.1.1

برای ویندوز:

  • از کنترل پنل → Network → تنظیمات کارت شبکه → DHCP یا Static IP بدهید.

نکات مهم:

  1. اگر از سرور در دیتاسنتر استفاده می‌کنید، حتماً بررسی کنید که Bridge Mode روی شبکه یا سوییچ مجاز باشد.

  2. اگر از کارت شبکه با نام مثل eno1 یا enpXsY استفاده می‌کنید، در bridge_ports باید دقیقاً همان نام ذکر شود.

  3. اگر سرور شما چند IP دارد (مثلاً برای VMهای public)، برای هر VM می‌توانید یک IP مجزا بدهید.

  4. برای چند کارت شبکه، می‌توانید چند Bridge مختلف ایجاد کنید: مثلا vmbr1, vmbr2, و هرکدام را به یک NIC مختلف وصل کنید.

 مثال کاربردی: ساخت Bridge دوم برای شبکه خصوصی

فرض کنید می‌خواهید یک شبکه خصوصی بین VMها بسازید:

auto vmbr1
iface vmbr1 inet static
    address 10.10.10.1
    netmask 255.255.255.0
    bridge_ports none
    bridge_stp off
    bridge_fd 0

در این حالت، VMهایی که به vmbr1 وصل شوند، به یکدیگر دسترسی دارند ولی به شبکه خارجی متصل نیستند. ایده‌آل برای شبکه داخلی (private LAN).

آیا این پاسخ مفید بود؟ 1 کاربر این مقاله را مفید می دانند (1 رای)