For context, I have followed all Tom’s guides and other settings mentioned in various different forums with no resolution yet.
My company has a dedicated server build hosted with a cloud provider, with the following hardware:
- Ryzen 9 7950x
- Asrock server motherboard w/ 2x 10G Broadcom NIC Ports
- 128GB RAM
- 2 x 1TB NVMe
- 5 Public IPs
Host:
- XCP
For VMs, we have:
- 2 x Windows Server, 1 for a CLOUD DC & another for our cloud storage host system (the cloud dc is necessary for the storage one to reference AD)
- 1 x Linux system that hosts our reverse proxy, docker containers and VPN connection
The goal was to get all of the VMs behind a PFSense VM so they all interface behind one IP and there is better security since they will be behind an actual firewall.
But, when doing all my testing, I am getting poor performance speeds when testing behind the PFSense LAN.
I have both 10G NICs available, one is the host management which a vif was created to be the WAN connection for PFSense while the other for the LAN connection. This setup is just straight simple connections, no VLANS, TX checksums disable on both vifs connected to PFSense and all VMs were rebooted after the vifs attached. I have tested several other ethtool config modifications, changing MTUs, etc, but nothing works. I have even tried completely opening the firewall for everything (only used as an open base for testing purposes to try anything)
When running speed tests directly through the network connections in the windows cli using the speedtest binary, I can hit 8-10Gb everytime. But when running behind pfsense, I am lucky to get 3Gb, which isnt sufficient since we have 400+ users from different states having constant connection sessions to the cloud storage solution we self host (not nextcloud or owncloud lol).
I imagine this is a freebsd driver related issue, possibly with the NICs, but incase there is some sort of setting im missing, I figured id reach out to see if other have insight. Ive even tried BRAVE and CHAT AI, but no luck.
If it is a freebsd related issue, maybe I should just install openwrt and use that?
Our needs are very small for our setup since my traefik reverse proxy handles most of the work, so all we need is:
- A firewall to put our VMs behind to secure them
- Be able to install tailscale client to connect to my headscale controlplane so the other DCs can see our CLOUD DC’
- Be able to port forward the http traffic to my traefik reverse proxy to handle all our microservices and point to our cloud storage implementation
All ideas for a more streamlined setup are welcome as well, otherwise, any info on this particular issue is much appreciated. Im an IT guy, but networking isnt my area of expertise.