When I run sudo openvpn foo.conf I do not yet have a default gateway defined.

Once the connection is established, I run sudo ip route add default via X.X.X.X, where X.X.X.X is the local IP of the newly created tun interface.

That works perfectly fine.

Avoiding the manual step, I would like OpenVPN do this for me. So I add route default to the configuration.

This fails with: NOTE: unable to redirect default gateway -- Cannot read current default gateway from system

Why does it want a current default gateway when I would replace it anyway? How can I have OpenVPN add the default gateway correctly (without using external scripts)?

  • 2
    This ;push "route" is in my config file. I believe it's one of the default, but commented options. You may be able to add push "route" to define a default route. – user38537 Dec 20 '18 at 22:34
  • You can't redirect-gateway when you don't actually have one to redirect! – Michael Hampton Dec 20 '18 at 23:15
  • 1
    @user38537 I have no control over the other side. Anyway, is not the same as "default". Tried that already with route @Michael: Not using said option; – user569825 Dec 21 '18 at 13:34

The best practice of the openvpn is adding the two routes ( and to avoid replace the original default route. For this you can use the route options in the open vpn client configuration file:


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.