所有,
我正在尝试为我创build一种能够在我的Proxmox基础架构中使用本地networking的方式。
目前,一切都从wlan0的NAT运行,所有内部机器具有相同的本地IP地址 – 这对我来说根本不是很有用。 我试图用ovs来解决这个问题。
我的ovs设置:
[wlan0] [IP Stack] | | [maplebridge] -- vport1 -- vport2
我的ovsconfiguration:
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
这是我在networking下的networking界面中看到的: 
这是如果我尝试设置我的一个虚拟机使用networking适配器vport1会发生什么情况: 
正如你所看到的,我不能将vports 1或2连接到我的任何虚拟机。 Proxmox的这个设置如何工作?
编辑:
有人build议我尝试使用从Proxmox Web GUI创build的ovs桥尝试NAT over NAT,如下所示:
在Proxmox中创build一个新的子网(例如192.168.2.0/24),即从“maplebridge”中删除“wlan0”。
所有的虚拟机应该连接一个虚拟局域网,但不能与无线局域网连接。
stream量必须通过Proxmox中的内部NAT进行路由,当网桥启动时(要添加到/ etc / network / interfaces中),必须激活NAT:
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的地址冲突,因为他们是一样的?
当我使用这个configuration时,我无法在192.168.2.0/24子网跨虚拟机或外部获得任何连接。 我能够select虚拟机vmbr1用于他们的networking接口,但他们只能ping本地主机或他们分配的IP。
我得到了内部VMnetworking的工作。
将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
然后,我将networking设备vmbr1分配给我的VM,并使用10.0.2.xnetworking中的静态IPconfiguration每个VM。 然后,我在VM和Proxmox主机的sysctl.conf中启用了ipv4转发。
/etc/sysctl.conf: net.ipv4.ip_forward = 1
内部和外部networking现在都在工作!