PfSense using WAN with lower speed in MultiWan setting
Happy New Year!
I setup pfSense and it works like a charm. There are two WAN connections, WAN1 (10Mbs) and WAN2 (2Mbs).
During the first few days, the connections appear to be balancing optimally (using the Tier 1, Tier 2, etc. setup found in google). My setup involves Routing groups, Firewall Rules, and gateway monitoring using OpenDNS and GoogleDNS. Previously, it worked really great that sometimes i would get 11.9Mbs for download.
Now, the connections do not appear to be load balancing. Instead, pfSense would use WAN2 (2Mbps) by default. I cannot figure out why. Since WAN2 is the slower connection, my internet download speed would slow down. I am forced to disable WAN2 just to maintain decent internet speed, so that pfSense would stick to WAN1.
One thing i noticed – after doing a reboot of pfSense, i would try internet speed test and get 11.6Mbs, but after doing a second speed test, I would get 2Mbps, which means that WAN2 was selected by pfSense.
My only intention is to use WAN2 as the failover, and use WAN1 as the default gateway. I don't need the additional speed beyond 10Mbps, so any solution to figure this out will be happily welcomed.
Any clues on how to fix this.
I am new to this by the way, so your understanding will be much appreciated.
Hi all. I figured it out. I thought maybe WAN1, despite the speed, was experiencing high latency, and high latency was the basis for the load balancing rule in Routing>groups. I increased the threshold and my speed test was back to 11.9Mbps.
With a single-threaded download it can only go over 1 link. If using a download manager that starts multiple downloads on parts of the file, then you benefit from a gateway group with multiple gateways at Tier1. The total download speed can be the total of all links.
But if the downlaod swamps a link so much that the link ping times get really high, then the gateway monitoring might think the gateway is down - which is not really true.
As you have found, the easy way to fix that is to increase the latency threshold.
Another way is to do traffic shaping on the interface/s and give ICMP/ping priority.
Or a bit of both.