Features
- AirVPN support (#1145)
- Surfshark Wireguard support (#587)
- IPv6 connection and tunneling (#1114)
- Auto detection of IPv6 support for OpenVPN and
OPENVPN_IPV6
removed - Built-in servers updates: Cyberghost, FastestVPN, Ivpn, Mullvad, ProtonVPN, PureVPN and Windscribe
- HTTP proxy: log credentials sent on mismatch
Fixes
- Private Internet Access: get token for port forwarding (#1132)
- FastestVPN: updater handles lowercase
.ovpn
filenames - Ivpn: update mechanism fixed for Wireguard servers
- Cyberghost: remove outdated server groups
94-1
pemium udp usa,95-1
premium udp asia,93-1
pemium udp usa and96-1
premium tcp asia - Exit with OS code
0
on successful shutdown - Public IP fetching
- handle HTTP status codes
403
as too many requests - no retry when too many requests to ipinfo.io
- handle HTTP status codes
- OpenVPN: do not set
tun-ipv6
- server should push
tun-ipv6
if it is available - Add ignore filter for
tun-ipv6
if ipv6 is not supported on client
- server should push
- Updater: error when server has not the minimal information
- Custom provider:
OPENVPN_CUSTOM_CONFIG
takes precedence only ifVPN_SERVICE_PROVIDER
is empty - Wireguard: ignore IPv6 addresses if IPv6 is disabled
- Environment variables: trim space for wireguard addresses
- OpenVPN: parse
udp4
,udp6
,tcp4
ortcp6
Documentation
- Readme: add ProtonVPN and PureVPN to Wireguard support
Maintenance
Code changes
provider/utils
: do not check for empty wg keysinternal/config
:- rename
Reader
toSource
struct - define
Source
interface locally where needed - rename
mux
source tomerge
- rename
internal/storage/servers.json
: remove"udp": true
for Wireguard- Filtering: no network protocol filter for Wireguard
- Fix netlink test for wireguard and crash
Other dependencies
- Bump Go from 1.17 to 1.19
- Upgrade Wireguard dependencies
- golang.org/x/text from 0.3.7 to 0.4.0 (#1198)
- github.com/breml/rootcerts from 0.2.6 to 0.2.8 (#1173)
Development
- Improve missing provider panic string
- Improve VSCode update command launch config
- Run without
debug
mode - Run from workspace folder so it writes to the right path
- Pick
-maintainer
or-enduser
update mode
- Run without