Commit Graph

  • 625a63e7c2 fix(firewall): flush conntrack table after enabling firewall at container start - prevent leaks for connections made the first ~10 milliseconds when Gluetun starts - seems critical, but in practice this very rarely happen and it very hard to reproduce Quentin McGaw 2026-02-21 19:39:22 +00:00
  • 0c3e5d94d8 change!(server): auth is now required for all routes (#2980) Quentin McGaw 2026-02-20 18:10:53 +01:00
  • d586793169 fix(all): increase global http client timeout to 35s and precise lower timeouts where needed - Fix DNS blocklists slow downloads, fix #3102 - Leave 35s timeout for updaters - Set timeouts to 1s for local calls - Set timeouts to 5s for LAN VPN calls and small external calls - Set timeouts to 10s external VPN API calls Quentin McGaw 2026-02-20 16:40:51 +00:00
  • c5eacac644 chore(pmtud/tcp): remove unused TCP flags Quentin McGaw 2026-02-20 16:25:14 +00:00
  • 7fbf2cbee3 hotfix(pmtud/tcp): return an error if no MSS destination server worked Quentin McGaw 2026-02-20 16:25:02 +00:00
  • 1dee183a70 chore(pmtud/tcp): silently discard IPv6 network unreachable errors Quentin McGaw 2026-02-20 16:24:25 +00:00
  • c66d8bed00 hotfix(pmtud/tcp): fix code for IPv6 destinations Quentin McGaw 2026-02-20 16:23:40 +00:00
  • 73b3e2c88a chore(pmtud/tcp): remove unused test code Quentin McGaw 2026-02-20 15:18:15 +00:00
  • ea87c0a2aa hotfix(pmtud): lower min MTU to MSS-matching-MTU minus 100 in case MSS is very small Quentin McGaw 2026-02-19 22:39:24 +00:00
  • 2192874de8 hotfix(pmtud/icmp): ignore non echo messages instead of returning an error Quentin McGaw 2026-02-19 18:05:48 +00:00
  • 007c5159f4 hotfix(pmtud): increase TCP margin from 150 to 300 compared to ICMP found MTU Quentin McGaw 2026-02-19 17:24:06 +00:00
  • c6b211ef9b feat(pmtud/tcp): support mixed IPv4 and IPv6 TCP servers - Add default cloudflare and google tls ipv6 servers to default tcp servers - update integration test to try against both ipv4 and ipv6 servers Quentin McGaw 2026-02-19 17:11:16 +00:00
  • 1c43a045d1 hotfix(pmtud/tcp): fix timeout apply per network call, not globally Quentin McGaw 2026-02-19 17:02:14 +00:00
  • 56b9e108be chore(pmtud/tcp): add :53 TCP servers to the default list Quentin McGaw 2026-02-19 16:46:48 +00:00
  • 67b66bba9e hotfix(pmtud/icmp): set IPv6 dont fragment options just in case Quentin McGaw 2026-02-19 16:32:33 +00:00
  • 8d86470905 feat(pmtud/tcp): use the TCP server with highest MSS to run MTU tests Quentin McGaw 2026-02-19 14:03:46 +00:00
  • fb85ae79d1 chore(pmtud/tcp): move test helpers in helpers_test.go Quentin McGaw 2026-02-19 13:07:15 +00:00
  • 783616f61d chore(pmtud/tcp): close connections with an RST packet on context cancelation Quentin McGaw 2026-02-19 12:22:42 +00:00
  • bc79901f1e chore(pmtud/tcp): restrict temp firewall rules to source ip and source port Quentin McGaw 2026-02-18 22:26:57 +00:00
  • 1c56189abc hotfix(pmtud/tcp): fix rare race condition Quentin McGaw 2026-02-18 19:07:31 +00:00
  • 224618337c hotfix(pmtud/tcp): respect MSS from server into account Quentin McGaw 2026-02-18 18:32:10 +00:00
  • 183d351b58 chore(pmtud/icmp): do not use net.ErrClosed when inappropriate Quentin McGaw 2026-02-17 21:44:30 +00:00
  • 04d7cef294 hotfix(pmtud/tcp): block kernel from racing to send RST packets - this makes PMTUD TCP reliable - this only works on kernels with the mark module - on kernels without the mark module, the icmp pmtud mtu found is used Quentin McGaw 2026-02-17 19:33:51 +00:00
  • 5f903d1fbf chore(pmtud): remove calls to syscall in favor of unix and windows - syscall is deprecated and is not kept up-to-date - each OS is inherently different hence the syscall being deprecated Quentin McGaw 2026-02-17 16:19:45 +00:00
  • d43eb1658f chore(firewall): support TCP flags for future changes Quentin McGaw 2026-02-17 14:15:15 +00:00
  • 36dfd5b631 hotfix(pmtud): do not try every address for ICMP PMTUD Quentin McGaw 2026-02-16 20:46:28 +00:00
  • f81b8342d6 hotfix(pmtud/tcp): temporary test fix Quentin McGaw 2026-02-16 20:44:00 +00:00
  • cdec25da52 feat(pmtud/tcp): generate MTU test data to mimic TLS if possible to avoid being blocked Quentin McGaw 2026-02-16 19:57:12 +00:00
  • 201d1041f4 hotfix(pmtud/tcp): send MTU data in first and only ACK packet - less likely to be flagged - correct using TCP fast-open Quentin McGaw 2026-02-16 19:56:14 +00:00
  • dc78b4ecce fix(dns): skip blocking if block lists download fails Quentin McGaw 2026-02-16 15:27:07 +00:00
  • d75b48d123 chore(dns): update filter block lists without restarting DNS server Quentin McGaw 2026-02-16 15:23:57 +00:00
  • e828ea1462 feat(dns): allow parent domains to be exempt from rebinding protection - Specify with *.domain.com in DNS_REBINDING_PROTECTION_EXEMPT_HOSTNAMES - Fix #3135 Quentin McGaw 2026-02-16 14:44:44 +00:00
  • be92aa2ac4 Path MTU discovery fixes and improvements (#3109) Quentin McGaw 2026-02-15 01:40:34 +01:00
  • 8f1fda7646 fix(healthcheck): corret behavior when HEALTH_RESTART_VPN=off and startup check fails Quentin McGaw 2026-02-11 17:33:14 +00:00
  • 8eb990eb66 chore(ci): ignore .golangci.yml file for reviewdog Quentin McGaw 2026-02-11 14:25:09 +00:00
  • 7f22fb3276 fix(protonvpn): support port 51820 for UDP OpenVPN v3.41.1 Quentin McGaw 2026-02-09 15:41:02 +00:00
  • 6909a0c123 fix(healthcheck): prevent race condition and fix #3096 (#3123) Quentin McGaw 2026-02-07 18:11:04 +01:00
  • 3e1f48932a fix(openvpn): only log openvpn version corresponding to OPENVPN_VERSION Quentin McGaw 2026-02-07 16:49:15 +00:00
  • 50744852c5 fix(protonvpn): update OpenVPN settings (#3120) Chris Duck 2026-02-06 07:18:10 -06:00
  • 09e52bc685 fix(httpproxy): remove info log when no Proxy-Authorization header is present Quentin McGaw 2026-01-24 19:39:20 +00:00
  • 857fe425ec fix(wireguard): fix detection of kernelspace wireguard Quentin McGaw 2026-01-20 15:40:59 +00:00
  • 4698daea16 chore(mullvad): remove openvpn support Quentin McGaw 2026-02-11 00:09:36 +00:00
  • db947c17a8 feat(dns): restrict plain DNS output traffic dns-plain-output-retricted Quentin McGaw 2026-02-10 16:19:08 +00:00
  • b0a75673bd chore(dev): ensure project compiles on darwin and windows Quentin McGaw 2026-02-09 15:40:45 +00:00
  • 5f0c499808 fix(protonvpn): support port 51820 for UDP OpenVPN Quentin McGaw 2026-02-09 15:41:02 +00:00
  • bdd69a1fb7 fix(healthcheck): prevent race condition and fix #3096 (#3123) Quentin McGaw 2026-02-07 18:11:04 +01:00
  • 1af75bb30c fix(openvpn): only log openvpn version corresponding to OPENVPN_VERSION Quentin McGaw 2026-02-07 16:49:15 +00:00
  • 9c1cd7e8b1 fix(protonvpn): update OpenVPN settings (#3120) Chris Duck 2026-02-06 07:18:10 -06:00
  • facc6df3be chore(all): replace netlink library for more flexibility (#3107) Quentin McGaw 2026-01-27 10:11:39 +01:00
  • e292a4c9be fix(httpproxy): remove info log when no Proxy-Authorization header is present Quentin McGaw 2026-01-24 19:39:20 +00:00
  • 9e4dd61c19 feat(ipvanish): update servers data Quentin McGaw 2026-01-24 19:32:21 +00:00
  • fe3d4a94d4 chore(all): make code compilable for other platforms than Linux Quentin McGaw 2026-01-24 13:48:15 +00:00
  • de38d759a4 feat(vpn): path MTU discovery to find the best MTU (#2586) Quentin McGaw 2026-01-21 18:02:23 +01:00
  • fba60af772 fix(wireguard): fix detection of kernelspace wireguard Quentin McGaw 2026-01-20 15:40:59 +00:00
  • 9b9b723887 chore(mullvad): add openvpn removal warning Quentin McGaw 2025-12-29 05:28:13 +00:00
  • a10349e378 fix(slickvpn): add missing servers found online v3.41.0 Quentin McGaw 2025-12-24 20:28:57 +00:00
  • 983330266a fix(purevpn/updater): parse country and city from hostname and merges with ip address information (#2991) Marcin Łapaj 2025-12-24 05:02:57 +01:00
  • 6eb511fb2a fix(publicip/api/cloudflare): add Referer header (#3058) Jeremy Lin 2025-12-23 19:52:25 -08:00
  • bb4e61f56c fix(purevpn): update openvpn configuration - Credits to @mlapaj - Taken and verified from #2991 v3.40.4 v3.40 Quentin McGaw 2025-12-23 17:13:20 +00:00
  • c72971f4c7 fix(slickvpn/updater): only keep 11 servers hardcoded Quentin McGaw 2025-12-23 02:50:15 +00:00
  • 05e1fc3b4e fix(vpnunlimited/updater): remove no longer valid hosts Quentin McGaw 2025-12-23 02:02:26 +00:00
  • 6ee28c51a6 fix(vpnsecure/updater): allow region and city to be set to N/A Quentin McGaw 2025-12-23 01:59:23 +00:00
  • 3f0e48575d fix(dns): retry on next period the blocklists update after a failed update - Fix #3053 Quentin McGaw 2025-12-23 01:40:29 +00:00
  • 666f55767b hotfix(autoheal): monitor health errors asynchronously with other setup steps - May resolve #3021 - no need to wait for dns, port forwarding etc. to setup to monitor health errors Quentin McGaw 2025-12-24 02:56:22 +00:00
  • 0a0bb4cf71 hotfix(healthcheck): only fallback to plain dns if icmp is not permitted on the very first try Quentin McGaw 2025-12-24 02:57:50 +00:00
  • 2b0719225d fix(purevpn): update openvpn configuration - Credits to @mlapaj - Taken and verified from #2991 Quentin McGaw 2025-12-23 17:13:20 +00:00
  • c97bd1bb7c fix(publicip/api/ip2location): rename countries to match standard country names Quentin McGaw 2025-12-23 17:04:52 +00:00
  • 10a7c75aa6 feat(publicip/api): query all fetchers in parallel and pick most popular result Quentin McGaw 2025-12-23 16:23:22 +00:00
  • 617f1b764f chore(storage): ignore persisted servers data with a timestamp in the future - force users to set a timestamp as the current one if manually editing servers.json which they should not do anyway - favor future servers data updates through a container image pull to override older user-defined data Quentin McGaw 2025-12-23 15:38:17 +00:00
  • 600f2ab643 chore(storage): fix comment for ServersAreEqual Quentin McGaw 2025-12-23 15:36:08 +00:00
  • 7052d5490b hotfix(pia): revert port changes - This reverts commit fd6e5e4e90. - Port changes are more involved and require cipher, auth and certificate changes as well Quentin McGaw 2025-12-23 13:57:40 +00:00
  • 6a5a836cb6 feat(pia): update servers data Quentin McGaw 2025-12-23 13:51:34 +00:00
  • a649b0adc1 hotfix(slickvpn): remove unused code Quentin McGaw 2025-12-23 13:45:41 +00:00
  • beaa8b5589 fix(slickvpn/updater): only keep 11 servers - this reverts most of commit e806fe02db. Quentin McGaw 2025-12-23 03:03:47 +00:00
  • e806fe02db fix(slickvpn/updater): update existing hostnames from servers.json - SlickVPN location website is now total garbage which cannot be parsed Quentin McGaw 2025-12-23 02:50:15 +00:00
  • 92237658c3 chore(wevpn): removed since it is now decomissioned Quentin McGaw 2025-12-23 02:12:02 +00:00
  • e627504fb5 fix(vpnunlimited/updater): remove no longer valid hosts Quentin McGaw 2025-12-23 02:02:26 +00:00
  • cc1c253bad feat(vpnsecure): update servers data Quentin McGaw 2025-12-23 01:59:34 +00:00
  • c27dac10fe fix(vpnsecure/updater): allow region and city to be set to N/A Quentin McGaw 2025-12-23 01:59:23 +00:00
  • 7d1e2eb226 feat(torguard): servers data update Quentin McGaw 2025-12-23 01:54:48 +00:00
  • 5b5aa5e014 feat(surfshark): update servers data Quentin McGaw 2025-12-23 01:54:15 +00:00
  • 9ee3ed754d chore(cyberghost/updater): do not log warnings for "no such host" Quentin McGaw 2025-12-23 01:51:59 +00:00
  • 0ca466fbd5 feat(cyberghost): update servers data Quentin McGaw 2025-12-23 01:50:29 +00:00
  • 1c1d271967 fix(dns): retry on next period the blocklists update after a failed update - Fix #3053 Quentin McGaw 2025-12-23 01:40:29 +00:00
  • cc89b35b63 chore(pia): add test to ensure default ports are within ports from their API Quentin McGaw 2025-12-22 23:24:13 +00:00
  • fd6e5e4e90 fix(pia): update default openvpn ports and possible ports to choose - Fix #3046 Quentin McGaw 2025-12-22 22:47:17 +00:00
  • d702ed4122 fix(dns): dns over tls re-uses TCP connections - Bump dns to v2.0.0-rc10 - DNS over HTTPs not affected since it did re-use connections already Quentin McGaw 2025-12-22 21:09:22 +00:00
  • 2d00f3fe25 hotfix(server/auth): case sensitivity for HTTP_CONTROL_SERVER_AUTH_DEFAULT_ROLE Quentin McGaw 2025-12-05 17:03:42 +00:00
  • 56db5a83c0 chore(healthcheck): log one error per line on failure for readability Quentin McGaw 2025-12-05 17:03:04 +00:00
  • f5206375c0 docs(readme): add star history graph because it's fun Quentin McGaw 2025-11-26 14:08:46 +00:00
  • c25c9f6f0e feat(healthcheck/icmp): use the same id and increasing sequence number - easier debug logs flow - MAY cost less conntrack-ed slots on the VPN server - resets id and sequence to 1 when reconnecting VPN - resets id and sequence to 1 after 5 minutes - resets id and sequence to 1 if sequence is complete (65535) Quentin McGaw 2025-11-26 13:38:53 +00:00
  • 08a7aae5f1 chore(ci): use qdm12/log library to have timed logs for tests Quentin McGaw 2025-11-26 12:44:39 +00:00
  • 57d8eb03c5 Chore(deps): Bump golang.org/x/crypto from 0.44.0 to 0.45.0 (#2999) dependabot[bot] 2025-11-26 00:29:02 +01:00
  • 2b55161fbb Chore(deps): Bump actions/checkout from 5 to 6 (#3001) dependabot[bot] 2025-11-26 00:27:44 +01:00
  • c4f2a224d4 change(dns): log filtered requests at the debug level Quentin McGaw 2025-11-25 16:50:17 +00:00
  • 8bb0cc324b fix(dns): prevent dns restart crash if DOT=off and DNS_KEEP_NAMESERVER=off Quentin McGaw 2025-11-24 16:45:53 +00:00
  • cba6070300 fix(dns): prevent dns restart crash if DOT=off and DNS_KEEP_NAMESERVER=off Quentin McGaw 2025-11-24 16:43:24 +00:00
  • 2afa988174 hotfix(dns): resolve .site and .network domain names as non-local Quentin McGaw 2025-11-23 21:39:49 +00:00
  • a35c994bc8 feat(port-forwarding): add {{VPN_INTERFACE}} template variable Quentin McGaw 2025-11-22 23:32:26 +00:00
  • 0fad44fb68 chore(vpn): do not restart VPN if startup check fails and HEALTH_RESTART_VPN=off - Note you still should not set HEALTH_RESTART_VPN=off this is for debugging only Quentin McGaw 2025-11-22 15:21:40 +00:00