My home router is a custom built Arch linux box. For some additional privacy/security I have it set up as an OpenVPN client to an OpenVPN server, running on a VPS I operate. All of my home traffic goes through this VPN tunnel 24/7. This setup works perfectly.
On occasion, I would like to have some traffic bypass the vpn tunnel and use my regular, un-VPN'd connection. The destination ip addresses are numerous and varied, so it's not feasible to simply hardcode static routes.
Instead, I thought I would set up an openvpn server instance on the router, available to clients on the LAN, and then use policy based routing to route all traffic from that vpn subnet (of connected clients) directly through my internet connection, bypassing the tunnel that all other internet traffic goes through. This way, clients on my home network could connect to this internal vpn and reach the internet without going through the router's vpn tunnel.
Does this sound like feasible? Am I correct in thinking I could use source based routing through a separate routing table to bypass the router's client vpn tunnel? Any pitfalls or details (related to iptables, or routing tables) to be aware of to make this work?
Thanks in advance.