Features
- AirVPN support (#1145)
- Surfshark Wireguard support (#587)
- IPv6 connection and tunneling (#1114)
- Auto detection of IPv6 support for OpenVPN and
OPENVPN_IPV6removed - 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
.ovpnfilenames - Ivpn: update mechanism fixed for Wireguard servers
- Cyberghost: remove outdated server groups
94-1pemium udp usa,95-1premium udp asia,93-1pemium udp usa and96-1premium tcp asia - Exit with OS code
0on successful shutdown - Public IP fetching
- handle HTTP status codes
403as 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-ipv6if it is available - Add ignore filter for
tun-ipv6if ipv6 is not supported on client
- server should push
- Updater: error when server has not the minimal information
- Custom provider:
OPENVPN_CUSTOM_CONFIGtakes precedence only ifVPN_SERVICE_PROVIDERis empty - Wireguard: ignore IPv6 addresses if IPv6 is disabled
- Environment variables: trim space for wireguard addresses
- OpenVPN: parse
udp4,udp6,tcp4ortcp6
Documentation
- Readme: add ProtonVPN and PureVPN to Wireguard support
Maintenance
Code changes
provider/utils: do not check for empty wg keysinternal/config:- rename
ReadertoSourcestruct - define
Sourceinterface locally where needed - rename
muxsource tomerge
- rename
internal/storage/servers.json: remove"udp": truefor 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
debugmode - Run from workspace folder so it writes to the right path
- Pick
-maintaineror-enduserupdate mode
- Run without