Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

On selecting server/remote from the GUI #452

Open
selvanair opened this issue Sep 10, 2021 · 5 comments
Open

On selecting server/remote from the GUI #452

selvanair opened this issue Sep 10, 2021 · 5 comments

Comments

@selvanair
Copy link
Collaborator

An experimental support for using --management-query-remote with the GUI is here:

https://github.com/selvanair/openvpn-gui/tree/query-remote-v2

Comments / tests would be much appreciated.

Depends on two proposed changes to OpenVPN core:

(i) Have an option to query the daemon for the list of remotes available
We could work around this by parsing the connection entries / remotes in the config file , but querying this via management looks more logical, and more reliable to me. If remote-random is in use, parsing the config is not an option as ordering consistent with the daemon is important for an efficient implementation (see (ii) below).

https://patchwork.openvpn.net/patch/1942/

(ii) Extend the "remote SKIP" management command to take an argument for skipping multiple remotes.
Without this, --management-query-remote is pretty much unusable when there are more than couple of remote entries. Each command sent to the management takes up to a second to get acted on causing long delays if a large number of remotes have to be skipped one by one. This also requires a consistent ordering of the remote entries in the daemon and the GUI.

https://patchwork.openvpn.net/patch/1945/

OpenVPN feature branch including these patches: https://github.com/selvanair/openvpn/tree/query-remote

Capture

The list could be sorted alphabetically by clicking on any column header. A location icon could be added to the list but currently there is no support in the config file for such metadata in connection entries.

@chipitsine
Copy link
Contributor

chipitsine commented Sep 10, 2021

I played recently with RiseUP VPN. It negotiates peers list via json communication.
nice is "preffered endpoint", so you can see either the one preffered of the full list (if you wish).

can we review aproaches of RiseUP VPN ?

@selvanair
Copy link
Collaborator Author

IIUC, what you have in mind would require a tight control on the config file (like constructing it from scratch, or massively re-writing it) before passing it to the OpenVPN command line. In OpenVPN-GUI, we impose almost no limitations on the config file, let the daemon decide what is allowed, and strongly depend on what the daemon provides via the management interface. Changing that would make a different UI.

OpenVPN daemon (core) does not support selecting an arbitrary remote. One is limited by the semantics of "remote SKIP", "remote ACCEPT" and "remote MOD host port" commands. The latter gives the impression that any user-defined value can be set, but, in practice, it does not work that way.

What you have in mind could be supported by having the remote list constructed by the GUI, and then passing preferred ones or the selected one at start as a "--remote host port protocol" option. But that would work only if the config file has no --remote option specified.

Some niceties like remembering previous selection can be easily added though.

@chipitsine
Copy link
Contributor

also what comes to mind from AirVPN and NordVPN, small country flag is displayed for each connection. I'm pretty sure it is some arbitrary graphic image.

dealing with "udp 1194" is not comfortable as dealing with icons

@selvanair
Copy link
Collaborator Author

I'm closing this as the required patches to the core never got enough traction. See above for details.
Can revisit when the situation changes.

@selvanair selvanair closed this as not planned Won't fix, can't repro, duplicate, stale Dec 17, 2022
@cron2
Copy link
Contributor

cron2 commented Dec 18, 2022 via email

@selvanair selvanair reopened this Dec 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants