Hello,
I cannot seem to get DHCP to work - looks like the packages are not forwarded - to either a VM or a container in Proxmox, using Linux Native Bridge. It does however work if I have the same configuration using OVS. Proxmox is running as an instance inside ESXi 7.0.
ESXi Config
I cannot seem to get DHCP to work - looks like the packages are not forwarded - to either a VM or a container in Proxmox, using Linux Native Bridge. It does however work if I have the same configuration using OVS. Proxmox is running as an instance inside ESXi 7.0.
ESXi Config
- Network adapters added as VMXNET3
- Hardware assisted virtualization is exposed to the guest OS
- IOMMU is exposed to the guest OS
- vSwitch Security:
- Promiscuous mode accepted
- MAC adadress changes accepted
- Forged transmits accepted
- All port groups inherit the settings from the above vSwitch
- pveversion:
[*]proxmox-ve: 6.2-1 (running kernel: 5.4.41-1-pve)
pve-manager: 6.2-6 (running version: 6.2-6/ee1d7754)
pve-kernel-5.4: 6.2-2
pve-kernel-helper: 6.2-2
pve-kernel-5.4.41-1-pve: 5.4.41-1
pve-kernel-5.4.34-1-pve: 5.4.34-2
ceph-fuse: 12.2.11+dfsg1-2.1+b1
corosync: 3.0.3-pve1
criu: 3.11-3
glusterfs-client: 5.5-3
ifupdown: residual config
ifupdown2: 3.0.0-1+pve2
ksm-control-daemon: 1.3-1
libjs-extjs: 6.0.1-10
libknet1: 1.15-pve1
libproxmox-acme-perl: 1.0.4
libpve-access-control: 6.1-1
libpve-apiclient-perl: 3.0-3
libpve-common-perl: 6.1-3
libpve-guest-common-perl: 3.0-10
libpve-http-server-perl: 3.0-5
libpve-storage-perl: 6.1-8
libqb0: 1.0.5-1
libspice-server1: 0.14.2-4~pve6+1
lvm2: 2.03.02-pve4
lxc-pve: 4.0.2-1
lxcfs: 4.0.3-pve2
novnc-pve: 1.1.0-1
openvswitch-switch: 2.12.0-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.2-7
pve-cluster: 6.1-8
pve-container: 3.1-8
pve-docs: 6.2-4
pve-edk2-firmware: 2.20200229-1
pve-firewall: 4.1-2
pve-firmware: 3.1-1
pve-ha-manager: 3.0-9
pve-i18n: 2.1-3
pve-qemu-kvm: 5.0.0-4
pve-xtermjs: 4.3.0-1
qemu-server: 6.2-3
smartmontools: 7.1-pve2
spiceterm: 3.1-1
vncterm: 1.6-1
zfsutils-linux: 0.8.4-pve1
[*]
Proxmox
- Network Config:
Code:
auto ens161
iface ens161 inet manual
ovs_type OVSPort
ovs_bridge vmbr2
auto vmbr2
iface vmbr2 inet manual
ovs_type OVSBridge
ovs_ports ens161
Container
- Config:
Code:
arch: amd64
cores: 1
hostname: test2
memory: 512
net0: name=eth0,bridge=vmbr2,hwaddr=82:97:D3:68:1F:50,ip=dhcp,type=veth
ostype: ubuntu
rootfs: storage:102/vm-102-disk-0.raw,size=8G
swap: 512
unprivileged: 1
Linux Native BridgeProxmox
- Network Config:
Code:
auto ens161
iface ens161 inet manual
auto vmbr2
iface vmbr2 inet manual
bridge-ports ens161
bridge-stp off
bridge-fd 0
Container
- Config:
Code:
arch: amd64
cores: 1
hostname: test2
memory: 512
net0: name=eth0,bridge=vmbr2,hwaddr=82:97:D3:68:1F:50,ip=dhcp,type=veth
ostype: ubuntu
rootfs: storage:102/vm-102-disk-0.raw,size=8G
swap: 512
unprivileged: 1
Summary- Disabled firewall on dom0 (Proxmox)
- Disabled firewall on container network
- Running the Linux Native Bridge does not allow the DHCP replies to be forwarded to the container, while running the same with OVS Bridge allows the DHCP replies to be forwared.
- From dom0 (Proxmox) I can see the following DHCP exchange:
-
Code:
23:54:02.914073 82:97:d3:68:1f:50 > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 342: 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 82:97:d3:6 8:1f:50, length 300 23:54:03.916669 00:0c:29:bb:77:80 > 82:97:d3:68:1f:50, ethertype IPv4 (0x0800), length 342: 192.168.XXX.XXX.67 > 192.168.XXX.XXX.68: BOOTP/DHCP, Reply, length 300
- While in the Container (in Linux Native Bridge mode) I can only see the request:
Code:21:54:02.914083 82:97:d3:68:1f:50 > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 342: 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 82:97:d3:68:1f:50, length 300