mirror of
https://github.com/davegallant/vpngate.git
synced 2025-08-07 09:02:31 +00:00
69 lines
1.7 KiB
Markdown
69 lines
1.7 KiB
Markdown
# vpngate
|
|
|
|
This is a client for [vpngate.net](https://www.vpngate.net/).
|
|
|
|

|
|
|
|
This client fetches the list of available relay servers provided by vpngate.net. Once connected to a relay server, speed tests kick off to determine latency, upload speed and download speed.
|
|
|
|

|
|
|
|
You can check out your current IP address and region at https://nordvpn.com/what-is-my-ip/, or simply run `curl ipinfo.io` in a terminal.
|
|
|
|
## Requirements
|
|
|
|
- [openvpn](https://github.com/OpenVPN/openvpn)
|
|
- macOS or Linux
|
|
|
|
## Install
|
|
|
|
Ensure that [go](https://golang.org/doc/install) is installed.
|
|
|
|
```sh
|
|
$ go get github.com/davegallant/vpngate
|
|
```
|
|
|
|
### MacOS
|
|
|
|
OpenVPN can be installed with [homebrew](https://brew.sh/).
|
|
|
|
```sh
|
|
$ brew install openvpn
|
|
```
|
|
|
|
## Usage
|
|
|
|
### List Available VPNs
|
|
|
|
```sh
|
|
$ vpngate list
|
|
```
|
|
|
|
### Connect to a VPN
|
|
|
|
Because openvpn creates a network interface, run the connect command with `sudo` or a user with escalated privileges.
|
|
|
|
On macOS, export path by using `export PATH=$(brew --prefix openvpn)/sbin:$PATH` (this can be run each time in a terminal or put in a bash/zsh profile)
|
|
|
|
```sh
|
|
$ sudo vpngate connect
|
|
```
|
|
|
|
#### Random
|
|
|
|
If the country doesn't matter, a random VPN can be selected:
|
|
|
|
```sh
|
|
$ sudo vpngate connect --random
|
|
```
|
|
|
|
## Notes
|
|
|
|
- I do not maintain any of the VPN servers on vpngate.net. Connect to these VPN servers at your own discretion
|
|
- Many of the listed servers claim to have a logging policy of 2 weeks
|
|
|
|
|
|
## Todo
|
|
|
|
- Allow for servers to be cycled periodically (--cycle)
|