Fiz isso usando uma idéia oposta - roteando todos, exceto o usuário "direto", para a vpn ao invés de rotear o usuário direto para a interface wlan. Porque os ips de rede vpn são estáticos
for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 > $f; done
echo 1 > /proc/sys/net/ipv4/route/flush
iptables -t mangle -A OUTPUT -m owner ! --uid-owner direct2net -j MARK --set-mark 42
iptables -t mangle -A OUTPUT -d (vpn ip) -j MARK --set-mark 0
iptables -t nat -A POSTROUTING -m mark --mark 42 -j SNAT --to-source (local ip in vpn's network)
ip rule add fwmark 42 table 42
ip route add default via (vpn network gateway) dev tun0 table 42