Все,
Я пытаюсь создать для меня возможность использовать локальную сеть в моей инфраструктуре Proxmox.
В настоящее время все работает через NAT от wlan0, и все внутренние машины имеют один и тот же локальный IP-адрес, что для меня не очень полезно. Пытаюсь исправить это с помощью овс.
Моя настройка ovs:
[wlan0] [IP Stack]
| |
[maplebridge] -- vport1
-- vport2
Моя конфигурация ovs:
ovs-vsctl add-br maplebridge #Create my bridge
ip link set maplebridge up # Turn on bridge
ovs-vsctl add-port maplebridge wlan0 # Add wlan0
ip addr del 192.168.1.136/24 dev wlan0 # Remove config from wlan0
dhclient maplebridge # DHCP IP addr to maplebridge
ip tuntap add mode tap vport1 # Create vport1
ip tuntap add mode tap vport2 # Create vport2
ip link set vport1 up # Turn on vport1
ip link set vport2 up # Turn on vport2
ovs-vsctl add-port maplebridge vport1 -- add-port maplebridge vport2 # Add ports to bridge
Настройки ovs:
root@henesys:/home/mztriz# ovs-vsctl show
55601e1b-928a-454b-9e7f-d5c24ed47fe9
Bridge maplebridge
Port maplebridge
Interface maplebridge
type: internal
Port "vport2"
Interface "vport2"
Port "vport1"What
Interface "vport1"
Port "wlan0"
Interface "wlan0"
ovs_version: "2.3.0"
Содержимое / etc / network / interfaces:
root@henesys:/home/mztriz# cat /etc/network/interfaces
auto lo
iface lo inet loopback
auto wlan0
iface wlan0 inet static
address 192.168.1.136
netmask 255.255.255.0
gateway 192.168.1.1
wpa-ssid ""
wpa-psk ""
allow-ovs maplebridge
iface maplebridge inet dhcp
ovs_type OVSBridge
ovs_ports vport1 vport2
allow-br0 vport1
iface vport1 inet manual
ovs_bridge vport1
ovs_type OVSPort
allow-br0 vport2
iface vport2 inet manual
ovs_bridge vport2
ovs_type OVSPort
Вот что я вижу в веб-интерфейсе в разделе Сеть:
Вот что произойдет, если я попытаюсь настроить одну из моих виртуальных машин для использования сетевого адаптера vport1:
Как видите, я не могу подключить vports 1 или 2 ни к одной из моих виртуальных машин. Как эта настройка работает в Proxmox?
РЕДАКТИРОВАТЬ:
Мне было предложено попробовать NAT через NAT с мостом ovs, созданным из веб-интерфейса Proxmox следующим образом:
Создайте новую подсеть (например, 192.168.2.0/24) внутри Proxmox, т.е. удалите "wlan0" из "maplebridge".
Все виртуальные машины должны быть подключены к одной виртуальной локальной сети, но не к wlan.
Трафик должен маршрутизироваться через внутренний NAT в Proxmox, NAT должен быть активирован при запуске моста (добавляется в / etc / network / interfaces):
auto vmbr1
iface vmbr1 inet static
address 192.168.1.136
netmask 255.255.255.0
ovs_type OVSBridge
pre-up iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o wlan0 -j MASQUERADE
Однако, если я это сделаю, не конфликтуют ли адреса из wlan0 и vmbr1, поскольку они одинаковы?
Когда я использую эту конфигурацию, я не могу получить какое-либо соединение в подсети 192.168.2.0/24 между виртуальными машинами или за ее пределами. Я могу выбрать vmbr1 для виртуальных машин для использования в своих сетевых интерфейсах, но опять же они могут пинговать только локальный хост или назначенные им IP-адреса.
У меня заработала внутренняя сеть виртуальных машин.
Добавлен OVS Bridge vmbr1 в Proxmox и изменен / etc / network / interfaces на следующее:
auto wlan0
iface wlan0 inet static
address 192.168.1.136
netmask 255.255.255.0
gateway 192.168.1.1
wpa-ssid ""
wpa-psk ""
auto vmbr1
iface vmbr1 inet static
address 10.0.2.1
netmask 255.255.255.0
ovs_type OVSBridge
pre-up iptables -t nat -A POSTROUTING -s 10.0.2.0/24 -o wlan0 -j MASQUERADE
Затем я назначил сетевое устройство vmbr1
на мои виртуальные машины и настроил каждую виртуальную машину со статическим IP-адресом в сети 10.0.2.x. Затем я включил пересылку ipv4 в sysctl.conf на виртуальных машинах и хосте Proxmox.
/etc/sysctl.conf:
net.ipv4.ip_forward = 1
Внутренняя и внешняя сети сейчас работают!