Hi, so I have a little Proxmox box with two VMs: VM1 and VM2 which is a clone of VM1. I change the mac of VM2 to avoid conflict and I reset the machine ID of VM1. I then have a seperate pfSense machine machine that that acts as router, firewall and DHCP server. Proxmox is on the 192.168.20.1/24 domain. In the DHCP server, Proxmox get IP 192.168.20.8 explicitly assigned. All good to this point. I’ve set VMs on pfSense to get the 192.168.20.9X addresses assigned. VM1 gets 192.168.20.91 assigned, while VM2 should be getting 192.168.20.92.
But this is what actually happens:
-
VM1 gets 192.168.20.106 assigned, despite telling pfSense to assign it 192.168.20.91. This happens even with VM2 shutdown. The DHCP Lease table is showing 91 up and running and does not list 106. Yet, the ARP table shows 106 assigned and no 91 assigned. This is even with me deleting the 106 entry from the ARP table several times and rebooting both the VM and the Proxmox server.
-
The VM is definately getting 106 assigned as I can log into it with 106 IP but 91 doesn’t respond (no route to host).
Is this something to do with the bridge configuration on Proxmox? Iv’e added a screenshot of what I see. It doesn’t seem to be that complicated to setup a bridge?
I can’t get my head around this so tips are welcome.

EDIT: I’ve just run ‘sudo ip’ on the VM and i see the ens18 interface with the MAC I assigned to it and the 106 IP assigned to this interface. There are then seven of ‘vethXXX’ interfaces. Not sure what these are. There are also four ‘brXXXX’ interfaces, one ‘loXXXX’ interface and one ‘docker0’ interface, the latter probably used by the docker subsystem running on the VM. I imagine the ‘brXXXX’ interfaces are the docker containers themselves (I think I have four running). But what are the ‘vethXXXX’ interfaces? Sounds like its something to do with “virtual interface”. Why so many and what is creating these?
Use dhclient -v to See the client side, check logs in the DHCP Server. Sniff maybe.
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
Fewer Letters More Letters AP WiFi Access Point DHCP Dynamic Host Configuration Protocol, automates assignment of IPs when connecting to a network IP Internet Protocol
3 acronyms in this thread; the most compressed thread commented on today has 3 acronyms.
[Thread #322 for this comm, first seen 30th May 2026, 20:30] [FAQ] [Full list] [Contact] [Source code]
It sounds like you’ve got another DHCP server running on that segment.
I had this exact fucking problem. Check if you’re using cloud-init and if there’s a holdover entry that may be overlooked.
For me, it was under the
/var/run/folder’s netplan, not the usual/etc/netplan.Is there a reason you sre using dhcp instead of assigning ips manually?
Dhcp is great if you don’t care about stuff, in my experiece as soon as you start caring you should do it manually
Wrong. It’s 2026. You should be setting static dhcp entries and using dhcp to ensure static IPs, not avoiding dhcp. Using manually assigned static IPs just means you’ve built a fragile unique snowflake.
Dhcp and ensuring it works is someting I don’t care about. I tell the kernel wich packets it should be interested in and how to sign itself and that will be it thank you very much.
I configure static routes and have all my machines and network segments neatly arranged in my database. I setup a new machine I know exactly what address it should have,it goes up and until it has a problem it will keep the address it was installed with.
Its 2026 I work like that, you can have your opinions I have mine. The difference is that I depend on one less thing that I don’t care about, so I have more profit margin.
Very old school; yes you can certainly do all of that and track all of that yourself. We all used to do it that way……But it’s 2026….just as you’d use a real editor rather than edlin, or password managers rather than text files, the new ways ARE better, easier and more consistent. Making sure dhcp works is one of the modern (honestly not that modern) basics that make sure your network is set up properly and isn’t hiding some misconfiguration gremlins that only work because of some static ip and route workaround you implemented years ago and worked “until now”.
I don’t know what I’m doing, please explain.
Having additional virtual network interfaces on VMs is completely normal, ens18 does indeed sound like the right one you should be looking at.
Seconding the other commenter who mentioned the possibility of a second DHCP server.
Is your Proxmox host wired via ethernet to the pfsense? Or are there WiFi APs in the mix anywhere
Do you have proxy arp setup on PVE? If not, try flushing the arp table in your pfSense.


