OpenVPN / OpenVPN/openvpn

feature request - method to update resolution of --remote while still connected

Open
#281 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement feature question
Dominant language
C
Stars
14.6k
Forks
3.4k
PR merge metrics
No merged PRs in 30d

Description

This can probably be seen more as a feature request than a bug, but it has to be a common problem. I know it affects users of corp's cloud service

Describe the bug
When a user configures push-dns and persist-tun and then gets disconnected they cannot reach the DNS server to resolve --remote entries. If DNS has changed they will be stuck forever trying to reconnect until they restart the process. This is a common configuration as the same users who do not wish to leak DNS also want a "internet killswitch" which is persist-tun

To Reproduce
use a DNS server that is only reachable over the VPN (push-dns and/or redirect-gateway) + persist-tun. Change DNS for the hostname(s) in --remote. Kill old server, simulating a server migration.

Expected behavior
It would be nice if the client was able to refresh its DNS for --remote entries while still connected, so that if the VPN server migrates with the above config options in place it can still connect.

Version information (please complete the following information):
All openvpn2 versions. This was fixed in openvpn3 as of version 16_beta which was released October 2021

Additional context
This would be super helpful for corp's openvpn cloud service. This affects us.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the reported setup: push-dns or redirect-gateway with persist-tun, a VPN-only DNS server, and a changed --remote hostname. Compare the OpenVPN 2 behavior with the stated OpenVPN 3 fix from version 16_beta. Done means the client can refresh --remote resolution while still connected and reconnect after the old server is removed.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
networking
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.