WinGate 7 can do this for specified ports.
This is because it can intercept connections, and specify which gateway to use in policy, so can decide which gateway to use based on the client IP. You can do this by intercepting to a TCP mapping proxy, or to a protocol proxy like the WWW proxy (or a combination depending on destination port).
WinGate 6 can't do this unless you had a physical NIC for each subnet of clients. This is because WinGate 6 uses a static configuration per proxy, and unless you can get the clients to go through different proxies, you can't assign different gateways.
We do also have plans for an implementation of source routing, but it's not going to make it into the initial WinGate 7 release due to time constraints.
If you'd like to try this out with WinGate 7, drop an email to
support@qbik.comRegards
Adrien