Well, thanks to #pfsense I have this working now. Adding this for others and mainly myself, so I can re-do this at a later point :)
First I created a static dhcp lease for the machine that I wanted to use a certain WAN interface:
(if you run into trouble with the machine not using the static lease ip, make sure all other dynamic leases for the machine are removed, I had to do that and restart networking for this ubuntu machine for the static lease to go into effect)
Also I selected " Register DHCP static mappings in the DNS Resolver" under Services->DNS Resolvers so I can address this machine with "ubuntu" or "ubuntu.bindibox.net" (my local domain name)
In Hyper-V, I have created a Virtual Switch attached to my physical WAN connection:
and pfSense uses this for WAN aswell.
I shut down the pfSense VM, and gave it more network adapters in the VM settings:
and attached all of them to the vswitch that I mentioned above:
then under Interfaces->Assign in pfSense, I assigned the newly attached WAN interfaces and named them like so (i plan to name them wanubuntu, wanmumble, wanplexmediaserver so its more easier to understand which interface i want to use for which virtual machine):
Then under Firewall->Rules, under LAN tab I created a new rule:
and put it above the other rules by selecting the other rules and pressing "move other rules to the end":
You might want to remove gateway monitoring for all but one of them, under System->Routing by editing the gateways listed in there, for this very technical reason:
< monitus> apinger being a pile of poop and not working correctly with multi wan
Voila, it works!
First wget is before applying the previous rule we created, second wget is after the rule is applied: