I am using VPN (Cisco IPSec) through the default Mountain Lion network preferences. In Lion (and also in Snow Leopard), I did the following to change the routing back to using my default gateway for all traffic, and thne set up a few routes for the specific IP-ranges that needed to go through VPN:
# Route traffic through VPN:
route -nv add -net IPRANGE -interface utun0
#...more lines for the different IP-ranges that should go through VPN)
# Route all other traffic through the old default gateway:
route change default DEFAULT-GATEWAY-IP
This seems to not work under Mountain Lion. The (new implementation?) of Cisco IPSec seems to dynamically add a lot of routes to the routing table as I visit them in the browser.
I have debugged this a lot (pinging, traceroute'ing), but still haven't found a solution.
The basic problem I'm trying to solve is just to route traffic for specific IP-ranges through VPN, everything else should act as I am not connected to VPN. Any other solution that achieves that will be fine with me =)