Hello all,
I virtualize my firewall via OPNsense, and previously had it set up using Hyper-V core. I recently began the move to Proxmox, but have been struggling with a couple issues. Note, I am not necessarily the most experienced in networking, as most of my knowledge is self-taught.
For context:
I have a four port NIC, as well as two ports on the motherboard (for a total of six physical ethernet ports).
Three of the ports on the NIC are dedicated to my OPNsense VM via PCIe passthrough while the fourth is configured on a bridge (vmbr1). One of the ports on the motherboard is connected to a physical switch, which allows me to access Proxmox (10.75.0.50). The second port is currently unoccupied, but is supposed to be dedicated to a single VM (once I get to that point).
Here are screenshots of my network settings:
OPNsense hardware settings:
My VLANs:
1: 192.168.1.0/24; GW 192.168.1.1
5: 10.75.0.0/24; GW 10.75.0.254
10: 10.75.10.0/24; GW 10.75.10.254
100: 172.16.100.0/24; GW 172.16.100.254
I have a Raspberry Pi running pi-hole on VLAN 5, which serves as a DHCP server for VLAN 5 and a DNS server for my entire home network via IP 10.75.0.100.
Now here are where my issues start.
I created a new VM, and originally attached it to vmbr2, which is a bridge dedicated to just VLAN 10, which is configured within OPNsense. When starting up the VM, the VM is able to pull its IP from the DHCP server on OPNsense, but was unable to resolve any domains. My firewall rules are configured properly within OPNsense, as I am able to ping my pi-hole and other DNS servers such as 1.1.1.1 and 8.8.8.8. Here is its hardware settings for reference:
To make sure this is not just some weird configuration issue I overlooked, I instead connected the VM's NIC to vmbr1, which acts as a trunk for VLANs 100, 101 and 102. This is also connected to my physical switch. The VM, connected to VLAN 100, pulls an IP, but is still unable to resolve any DNS queries. Using a live Debian iso, I was able to confirm that this VM could connect to the OPNsense web UI, but cannot connect to anything else.
I confirmed that devices on VLAN 100 are able to connect out by connecting a physical computer to my physical switch. This computer pulls an IP from DHCP like the VM, but is able to resolve DNS, and access the general internet as normal.
I then connected the VM's NIC to vmbr0, which is supposed to be a port dedicated to Proxmox management connected to my physical switch, on the same subnet as my Raspberry Pi. On this bridge, the VM was able to pull an IP and make DNS queries from the local Raspberry Pi, and from 8.8.8.8, whereas it was previously unable to on vmbr1 and vmbr2.
This leads me to believe the issue lies somewhere within my network config for Proxmox and OPNsense, or am I wrong? I don't know how else to approach diagnosing and troubleshooting this issue, and would greatly appreciate any assistance.
To add, I noticed that Pi-Hole seems to not get any DNS requests from the VM. I was able to confirm that the packets are reaching the firewall, but it doesn't seem to be reaching the Pi, despite OPNsense seemingly passing them.
I virtualize my firewall via OPNsense, and previously had it set up using Hyper-V core. I recently began the move to Proxmox, but have been struggling with a couple issues. Note, I am not necessarily the most experienced in networking, as most of my knowledge is self-taught.
For context:
I have a four port NIC, as well as two ports on the motherboard (for a total of six physical ethernet ports).
Three of the ports on the NIC are dedicated to my OPNsense VM via PCIe passthrough while the fourth is configured on a bridge (vmbr1). One of the ports on the motherboard is connected to a physical switch, which allows me to access Proxmox (10.75.0.50). The second port is currently unoccupied, but is supposed to be dedicated to a single VM (once I get to that point).
Here are screenshots of my network settings:
OPNsense hardware settings:
My VLANs:
1: 192.168.1.0/24; GW 192.168.1.1
5: 10.75.0.0/24; GW 10.75.0.254
10: 10.75.10.0/24; GW 10.75.10.254
100: 172.16.100.0/24; GW 172.16.100.254
I have a Raspberry Pi running pi-hole on VLAN 5, which serves as a DHCP server for VLAN 5 and a DNS server for my entire home network via IP 10.75.0.100.
Now here are where my issues start.
I created a new VM, and originally attached it to vmbr2, which is a bridge dedicated to just VLAN 10, which is configured within OPNsense. When starting up the VM, the VM is able to pull its IP from the DHCP server on OPNsense, but was unable to resolve any domains. My firewall rules are configured properly within OPNsense, as I am able to ping my pi-hole and other DNS servers such as 1.1.1.1 and 8.8.8.8. Here is its hardware settings for reference:
To make sure this is not just some weird configuration issue I overlooked, I instead connected the VM's NIC to vmbr1, which acts as a trunk for VLANs 100, 101 and 102. This is also connected to my physical switch. The VM, connected to VLAN 100, pulls an IP, but is still unable to resolve any DNS queries. Using a live Debian iso, I was able to confirm that this VM could connect to the OPNsense web UI, but cannot connect to anything else.
I confirmed that devices on VLAN 100 are able to connect out by connecting a physical computer to my physical switch. This computer pulls an IP from DHCP like the VM, but is able to resolve DNS, and access the general internet as normal.
I then connected the VM's NIC to vmbr0, which is supposed to be a port dedicated to Proxmox management connected to my physical switch, on the same subnet as my Raspberry Pi. On this bridge, the VM was able to pull an IP and make DNS queries from the local Raspberry Pi, and from 8.8.8.8, whereas it was previously unable to on vmbr1 and vmbr2.
This leads me to believe the issue lies somewhere within my network config for Proxmox and OPNsense, or am I wrong? I don't know how else to approach diagnosing and troubleshooting this issue, and would greatly appreciate any assistance.
To add, I noticed that Pi-Hole seems to not get any DNS requests from the VM. I was able to confirm that the packets are reaching the firewall, but it doesn't seem to be reaching the Pi, despite OPNsense seemingly passing them.
Last edited: