My institute has an internal network that can be accessed via a VPN server. It s turned on with a modprobe tun followed by a service openvpn start (which asks for remote authentication)

I need OpenVPN as I wish to ssh to a computing server in the institute network. However, due to certain restrictions, accessing the Internet from within the institute network is hard (and possibly impossible with the added layer of the vpn). When I open up Chrome and try to access an internet site, it takes me to a captive portal page that doesn't let me log in properly (I presume it detects that I am coming from the VPN IP and not from a regular internal IP).

How can I tell Chrome to use my regular home wifi connection instead of going through the vpn tunnel, while having SSH go through VPN?

  • 1
    Could you tell us a bit more about the topology? You use a virtual device to get to the VPN, right? How are the route configured? – Braiam Dec 18 '13 at 18:36
  • We can not give you more specific advice without additional information. See the links I gave you and if you have questions aout the specific commands, add additional information as requested by Braiam. – Panther Dec 21 '13 at 17:06
  • @bodhi Ah.. Unfortunately i'm not at home for a coulple of days, but i'll post the config file when I get back – Manishearth Dec 21 '13 at 17:39

On OpenVPN usually the server "decides" this for you: It can be configured to tell clients to send all their traffic (by default) through the VPN - which makes sense e.g. if the VPN is used to secure your internet connection.

The openVPN configuration you are using is probably setting your "default route" so most connections (to the internet) are made through the VPN.

As your institute probably does not want to provide internet access through their VPN (i am just guessing), they would have to change the configuration on the server.

As a hint for the admin that configures the VPN server: The configuration probably includes a line like this:

push "redirect-gateway def1 bypass-dhcp" 

Commenting out that line and reloading the server should resolve the issue for all clients.

If there is somehow no way to change the server configuration, you will have to rely on some "hacking" for this issue on your client - but since this should really be resolved on the server side, i won't get deeper into this (yet).


You have to manually define the routes. The exact syntax of the command is going to vary with you interfaces, gateway, and what traffic you wish to route where. Web traffic (chrome) is on ports 80 (http) and 443 (https) by default.

Here are 2 explanations of how to route your traffic.



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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