Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I use the builtin VPN configuration of NetworkManager to connect to our Microsoft PPTP VPN server. It is a barebone VPN configuration tool(maybe i'm wrong) which routes all your traffic through the configured VPN. I'm rather looking for a sophisicated VPN client in Ubuntu Jaunty which is configurable and will be able to route traffic from certain sources or applications through the VPN and others through the default network. For example, our custom application traffic will go through VPN and others not.

Posted in superuser. As per suggestion, cross posting here.


I was looking for a tool like KPNC recommended by Jure. But please post the steps to configure the traffic routing based on the application for your recommended tool if it's not so obivous. I went through the screenshots available in KVPNC and found it as very configurable but didn't found out how to configure what I want!!! Thanks.

share|improve this question
Routing isn't done at the application level, but at the subnet level. I'm not sure you're going to find a way to route just Firefox through a VPN tunnel unless all the resources you're accessing lie down a specific set of subnets you can route. – Kevin Kuphal Aug 18 '09 at 19:41
@Kevin Thanks for your reply. I'm not sure about this, but in Windows I guess I have seen a VPN client which routes based on the application names(path of the exe) to it. Not possible in Ubuntu though ? :) I have completely moved away from XP for past 1 year and I don't want to go to XP for running just one application. – blntechie Aug 18 '09 at 19:46

It sounds like you may be looking for a SOCKS type of proxy. That's the only thing under Windows that I recall being able to route based on TCP port. While not application routing per se, it was able to route some things independently of others.

Sending firefox over the VPN is easy if you set up a proxy at the far end and point Firefox at that proxy. By virtue of needing to go to the ip of the proxy server, it will get routed over the vpn, or to nowhere if you aren't connected.

Most VPN's are able to push to the client whether they become the default gateway or not for connected clients. This is a little misleading since you can't just change gateway's or you're dead where you stand, but it does intercept traffic headed to the internet and points it at the PPTP/VPN endpoint/whatever. The opposite of this is called split-tunneling where you allow, say, internet traffic to proceed normally, but anything destined for the internal network gets shoveled over the VPN.

As for a SOCKS type of proxy for Ubuntu, you can usually bend SSH to do this with the -L or -D options, or you could try tsocks.

Or am I barking up the wrong tree?

share|improve this answer

I am not exactly sure but most likely the VPN client just adds a virtual NIC, which means that you can manipulate the exact flow of the network by modifying the routing table, check out 'route -v' and 'route -h' on your client for more information.

share|improve this answer

I like kvpnc

share|improve this answer
I'm exactly looking for a tool like this. But not sure how to make this tool work to route only one of my application(say Firefox) to go throught the VPN. Need to do it in the Network node in that tool? Not having enough reputation to upvote. ELse would have. Adding this is an edit to question also.Thanks a lot. – blntechie Aug 18 '09 at 19:33
One doubt though : It won't work with Gnome? Requirements say "KDE >= 3.3.x (KDE3 version)/>= 4.1.x (KDE4 version) (required)" – blntechie Aug 18 '09 at 19:41

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.