ProtonVPN.log
· 101 KiB · Text
Raw
==> pf=macOS; os=15.7.7; hw=Mac14,9; pd=ProtonVPN; vn=6.5.1 (3106797.2605011144); id=D2E7FBB9-E532-5A8D-9A71-BDDED737F4E8
2026-09-10T15:42:47.149Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 443 |
2026-09-10T15:42:47.149Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 1224 |
2026-09-10T15:42:47.149Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 4500 |
2026-09-10T15:42:47.270Z | DEBUG | | Telemetry event scheduled:
{
"Event" : "vpn_disconnection",
"MeasurementGroup" : "vpn.any.connection",
"Dimensions" : {
"network_type" : "wifi",
"vpn_country" : "JP",
"user_country" : "CN",
"server" : "JP#166",
"port" : "88",
"isp" : "China Unicom",
"protocol" : "wireguard_udp",
"vpn_trigger" : "new_connection",
"outcome" : "success",
"vpn_status" : "on",
"user_tier" : "paid",
"server_features" : "p2p,streaming,ipv6"
},
"Values" : {
"session_length" : 163400
}
} |
2026-09-10T15:42:50.786Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 1224 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:51567->149.50.211.169:1224: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:51567->149.50.211.169:1224: i/o timeout}) |
2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 443 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:63240->149.50.211.169:443: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:63240->149.50.211.169:443: i/o timeout}) |
2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 4500 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:59045->149.50.211.169:4500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:59045->149.50.211.169:4500: i/o timeout}) |
2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 88 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:58413->149.50.211.169:88: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:58413->149.50.211.169:88: i/o timeout}) |
2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 500 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:51838->149.50.211.169:500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:51838->149.50.211.169:500: i/o timeout}) |
2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 51820 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:63144->149.50.211.169:51820: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:63144->149.50.211.169:51820: i/o timeout}) |
2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | No working port found on Wireguard |
2026-09-10T15:42:52.151Z | DEBUG | CONN.CONNECT:SCAN | No Wireguard ports responded when trying to get the best port, waiting a bit and trying one more time. |
2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT | Retrying port selection |
2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Getting best port for ServerIp(id: "eGclHlqQkEJMlj-Hksl9G6NAobUnqkmjKU6PhOZCWSFzozSIrwYU5YoRm6E6V69CN668Odvvr_IDe4Q7Hf7fpg==", entryIp: Optional("149.50.211.169"), exitIp: "149.50.211.169", domain: "node-sg-34.protonvpn.net", status: 1, label: Optional("19"), x25519PublicKey: Optional("TrhdyC23yM5oNjMN1YCDdqrgrQZpT0ZqFBU4yU8l3D4="), protocolEntries: nil) on WireGuard |
2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 88 |
2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 1224 |
2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 443 |
2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 51820 |
2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 4500 |
2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 500 |
2026-09-10T15:42:56.880Z | INFO | OS | applicationDidResignActive |
2026-09-10T15:42:57.503Z | INFO | OS | applicationDidBecomeActive |
2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 51820 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:56493->149.50.211.169:51820: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:56493->149.50.211.169:51820: i/o timeout}) |
2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 500 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:49296->149.50.211.169:500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:49296->149.50.211.169:500: i/o timeout}) |
2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 443 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:60802->149.50.211.169:443: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:60802->149.50.211.169:443: i/o timeout}) |
2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 4500 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:58327->149.50.211.169:4500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:58327->149.50.211.169:4500: i/o timeout}) |
2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 1224 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:49746->149.50.211.169:1224: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:49746->149.50.211.169:1224: i/o timeout}) |
2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 88 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:57780->149.50.211.169:88: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:57780->149.50.211.169:88: i/o timeout}) |
2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | No working port found on Wireguard |
2026-09-10T15:42:58.220Z | DEBUG | CONN.CONNECT:SCAN | No Wireguard ports responded even on second attempt, returning ports at random |
2026-09-10T15:42:58.220Z | INFO | CONN.CONNECT | Connecting with wireGuard(Domain.WireGuardTransport.udp) to SG#238 via Optional("149.50.211.169"):[500, 88, 443, 4500, 51820, 1224] |
2026-09-10T15:42:58.224Z | INFO | USER_CERT | Using existing vpn authentication keys |
2026-09-10T15:42:58.227Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.udp)"}
2026-09-10T15:42:58.227Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:42:58.227Z | INFO | LOCAL_AGENT:LOG | LocalAgent: closing |
2026-09-10T15:42:58.227Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Disconnected |
2026-09-10T15:42:58.227Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to disconnected |
2026-09-10T15:42:58.227Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in disconnected state |
2026-09-10T15:42:58.304Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:42:58.671Z | DEBUG | PROTOCOL | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:42:58.671Z | DEBUG | PROTOCOL | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:42:58.864Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnecting from: 45.87.213.210 | {"oldState":"VPN state - Connected to: 45.87.213.210","state":"VPN state - Disconnecting from: 45.87.213.210","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp))"}
2026-09-10T15:42:59.054Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"state":"VPN state - Disconnected","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp))","oldState":"VPN state - Disconnecting from: 45.87.213.210"}
2026-09-10T15:42:59.054Z | INFO | CONN.CONNECT | About to start connection process |
2026-09-10T15:42:59.054Z | DEBUG | LOCAL_AGENT | Disconnecting Local agent |
2026-09-10T15:42:59.054Z | DEBUG | LOCAL_AGENT | Stopping status monitoring. WasMonitoring: true |
2026-09-10T15:42:59.263Z | INFO | CONN.CONNECT | Creating connection configuration |
2026-09-10T15:42:59.577Z | INFO | SYSEX | Credentials set result (wg): success |
2026-09-10T15:42:59.577Z | INFO | CONN.CONNECT | Configuring connection |
2026-09-10T15:42:59.588Z | INFO | CONN.CONNECT | Loading connection configuration |
2026-09-10T15:42:59.588Z | INFO | CONN.CONNECT | Starting VPN tunnel |
2026-09-10T15:42:59.600Z | DEBUG | CONN | Server change observer received status | {"connection":"<NETunnelProviderSession: 0x6000004b3020>","status":"connecting","requestId":"AE94FA5A-2915-4E5F-8B0F-611FE123092E"}
2026-09-10T15:42:59.600Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connecting to: 149.50.211.169 | {"currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp))","state":"VPN state - Connecting to: 149.50.211.169","oldState":"VPN state - Disconnected"}
2026-09-10T15:42:59.733Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:42:59.733Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:42:59.733Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:42:59.741Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:42:59.772Z | ERROR | NET:RESPONSE | Request failed | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","method":"POST","error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSUnderlyingError=0x6000028aca50 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028ac720 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}"}
2026-09-10T15:42:59.772Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x6000028aca50 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028ac720 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked} |
2026-09-10T15:42:59.772Z | INFO | USER_CERT | Cert refresh failed due to network error Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x6000028aca50 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028ac720 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}. Retrying in 15 seconds. |
2026-09-10T15:42:59.772Z | WARN | TELEMETRY | Failed to send scheduled telemetry events, leaving in storage: ["MeasurementGroup": "vpn.any.connection", "EventInfo": [["Event": vpn_disconnection, "Dimensions": {
isp = "China Unicom";
"network_type" = wifi;
outcome = failure;
port = 443;
protocol = "wireguard_tls";
server = "JP#166";
"server_features" = "p2p,streaming,ipv6";
"user_country" = CN;
"user_tier" = paid;
"vpn_country" = JP;
"vpn_status" = on;
"vpn_trigger" = "new_connection";
}, "Values": {
"session_length" = 88271;
}, "MeasurementGroup": vpn.any.connection], ["Dimensions": {
isp = "China Unicom";
"network_type" = wifi;
outcome = success;
port = 88;
protocol = "wireguard_udp";
server = "JP#166";
"server_features" = "p2p,streaming,ipv6";
"user_country" = CN;
"user_tier" = paid;
"vpn_country" = JP;
"vpn_status" = off;
"vpn_trigger" = quick;
}, "Values": {
"time_to_connection" = 19908;
}, "Event": vpn_connection, "MeasurementGroup": vpn.any.connection], ["MeasurementGroup": vpn.any.connection, "Event": vpn_disconnection, "Values": {
"session_length" = 163400;
}, "Dimensions": {
isp = "China Unicom";
"network_type" = wifi;
outcome = success;
port = 88;
protocol = "wireguard_udp";
server = "JP#166";
"server_features" = "p2p,streaming,ipv6";
"user_country" = CN;
"user_tier" = paid;
"vpn_country" = JP;
"vpn_status" = on;
"vpn_trigger" = "new_connection";
}]]] |
2026-09-10T15:42:59.773Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") |
2026-09-10T15:42:59.791Z | DEBUG | CONN | Server change observer received status | {"status":"connected","connection":"<NETunnelProviderSession: 0x6000004b3020>","requestId":"AE94FA5A-2915-4E5F-8B0F-611FE123092E"}
2026-09-10T15:42:59.791Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connected to: 149.50.211.169 | {"state":"VPN state - Connected to: 149.50.211.169","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp))","oldState":"VPN state - Connecting to: 149.50.211.169"}
2026-09-10T15:42:59.796Z | DEBUG | USER_CERT | Loading stored vpn authentication data |
2026-09-10T15:42:59.796Z | INFO | USER_CERT:NEW_CERT | Stored vpn authentication certificate is expired (2026-09-10 15:30:31 +0000), the local agent will connect but certificate refresh will be needed |
2026-09-10T15:42:59.797Z | DEBUG | LOCAL_AGENT | Local agent connecting to node-sg-34.protonvpn.net with connectivity set to true | {"config":"LocalAgentConfiguration(hostname: \"node-sg-34.protonvpn.net\", features: Domain.VPNConnectionFeatures(netshield: Domain.NetShieldType.level2, vpnAccelerator: false, bouncing: Optional(\"19\"), natType: Domain.NATType.strictNAT, safeMode: nil, portForwarding: Optional(false)))"}
2026-09-10T15:42:59.797Z | DEBUG | LOCAL_AGENT | NetShield level: level2, should monitor stats: true |
2026-09-10T15:42:59.797Z | DEBUG | LOCAL_AGENT | Starting status request background timer |
2026-09-10T15:42:59.797Z | INFO | LOCAL_AGENT:LOG | LocalAgent: Connect |
2026-09-10T15:42:59.797Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Connecting |
2026-09-10T15:42:59.797Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to connecting |
2026-09-10T15:42:59.797Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in connecting state |
2026-09-10T15:42:59.797Z | INFO | LOCAL_AGENT:LOG | LocalAgent: establishing tls connection... |
2026-09-10T15:42:59.798Z | DEBUG | CONN.CONNECT | Showing state as Loading connection info because local agent not connected yet |
2026-09-10T15:42:59.798Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:42:59.798Z | DEBUG | NET | Request started | {"url":"http:\/\/protonstatus.com\/vpn_status","method":"GET"}
2026-09-10T15:42:59.799Z | DEBUG | API | Disabling DoH while connected to VPN |
2026-09-10T15:42:59.805Z | DEBUG | CONN.CONNECT | Showing state as Loading connection info because local agent not connected yet |
2026-09-10T15:43:04.616Z | INFO | OS | applicationDidResignActive |
2026-09-10T15:43:04.800Z | INFO | LOCAL_AGENT:LOG | LocalAgent connection error: (*net.OpError) dial tcp 10.2.0.1:65432: i/o timeout |
2026-09-10T15:43:04.800Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to ServerUnreachable |
2026-09-10T15:43:04.800Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to serverUnreachable |
2026-09-10T15:43:04.800Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in serverUnreachable state |
2026-09-10T15:43:04.800Z | INFO | LOCAL_AGENT:LOG | Local agent retry in 0.26488242s |
2026-09-10T15:43:05.066Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Connecting |
2026-09-10T15:43:05.066Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to connecting |
2026-09-10T15:43:05.066Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in connecting state |
2026-09-10T15:43:05.066Z | INFO | LOCAL_AGENT:LOG | LocalAgent: establishing tls connection... |
2026-09-10T15:43:06.970Z | INFO | OS | applicationDidBecomeActive |
2026-09-10T15:43:10.068Z | INFO | LOCAL_AGENT:LOG | LocalAgent connection error: (*net.OpError) dial tcp 10.2.0.1:65432: i/o timeout |
2026-09-10T15:43:10.068Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to ServerUnreachable |
2026-09-10T15:43:10.068Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to serverUnreachable |
2026-09-10T15:43:10.068Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in serverUnreachable state |
2026-09-10T15:43:10.068Z | INFO | LOCAL_AGENT:LOG | Local agent retry in 1.138214496s |
2026-09-10T15:43:11.208Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Connecting |
2026-09-10T15:43:11.209Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to connecting |
2026-09-10T15:43:11.209Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in connecting state |
2026-09-10T15:43:11.209Z | INFO | LOCAL_AGENT:LOG | LocalAgent: establishing tls connection... |
2026-09-10T15:43:14.774Z | DEBUG | USER_CERT | Checking if vpn authentication certificate refresh is needed |
2026-09-10T15:43:14.780Z | INFO | USER_CERT | Using existing vpn authentication keys |
2026-09-10T15:43:14.786Z | INFO | USER_CERT | Certificate has expired or should be refreshed | {"validUntil":"2026-09-10 15:30:31 +0000","refreshTime":"2026-09-10 09:30:31 +0000"}
2026-09-10T15:43:14.786Z | DEBUG | USER_CERT:NEW_CERT | Asking backend API for new vpn authentication certificate |
2026-09-10T15:43:14.786Z | DEBUG | NET | Request started | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","method":"POST"}
2026-09-10T15:43:16.211Z | INFO | LOCAL_AGENT:LOG | LocalAgent connection error: (*net.OpError) dial tcp 10.2.0.1:65432: i/o timeout |
2026-09-10T15:43:16.211Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to ServerUnreachable |
2026-09-10T15:43:16.211Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to serverUnreachable |
2026-09-10T15:43:16.211Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in serverUnreachable state |
2026-09-10T15:43:16.211Z | INFO | LOCAL_AGENT:LOG | Local agent retry in 4.970576467s |
2026-09-10T15:43:16.397Z | INFO | OS | applicationDidResignActive |
2026-09-10T15:43:21.183Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Connecting |
2026-09-10T15:43:21.183Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to connecting |
2026-09-10T15:43:21.183Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in connecting state |
2026-09-10T15:43:21.183Z | INFO | LOCAL_AGENT:LOG | LocalAgent: establishing tls connection... |
2026-09-10T15:43:24.625Z | INFO | OS | applicationDidBecomeActive |
2026-09-10T15:43:26.187Z | INFO | LOCAL_AGENT:LOG | LocalAgent connection error: (*net.OpError) dial tcp 10.2.0.1:65432: i/o timeout |
2026-09-10T15:43:26.187Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to ServerUnreachable |
2026-09-10T15:43:26.187Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to serverUnreachable |
2026-09-10T15:43:26.188Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in serverUnreachable state |
2026-09-10T15:43:26.188Z | INFO | LOCAL_AGENT:LOG | Local agent retry in 22.47208219s |
2026-09-10T15:43:27.634Z | DEBUG | PROTOCOL | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:43:27.895Z | INFO | OS | applicationDidResignActive |
2026-09-10T15:43:48.660Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Connecting |
2026-09-10T15:43:48.660Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to connecting |
2026-09-10T15:43:48.660Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in connecting state |
2026-09-10T15:43:48.661Z | INFO | LOCAL_AGENT:LOG | LocalAgent: establishing tls connection... |
2026-09-10T15:43:50.605Z | INFO | OS | applicationDidBecomeActive |
2026-09-10T15:43:53.662Z | INFO | LOCAL_AGENT:LOG | LocalAgent connection error: (*net.OpError) dial tcp 10.2.0.1:65432: i/o timeout |
2026-09-10T15:43:53.662Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to ServerUnreachable |
2026-09-10T15:43:53.662Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to serverUnreachable |
2026-09-10T15:43:53.662Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in serverUnreachable state |
2026-09-10T15:43:53.663Z | INFO | LOCAL_AGENT:LOG | Local agent retry in 57.415548153s |
2026-09-10T15:43:53.901Z | INFO | UI | Showing alert: ReconnectOnSettingsChangeAlert |
2026-09-10T15:43:55.017Z | INFO | | Submitting request <OSSystemExtensionActivationRequest: 0x6000028706c0> for ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:43:55.059Z | DEBUG | | Deinit request AEE6516E-66EE-425D-8DDC-FE163DBB2E97 for ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:43:55.059Z | DEBUG | SYSEX | Finished installation with results: [LegacyCommon.SystemExtensionType.wireGuard: Swift.Result<LegacyCommon.SystemExtensionInstallationSuccess, LegacyCommon.SystemExtensionInstallationFailure>.success(LegacyCommon.SystemExtensionInstallationSuccess.upgraded)] |
2026-09-10T15:43:55.177Z | INFO | CONN.CONNECT:TRIGGER | New protocol set to wireGuard(Domain.WireGuardTransport.tls). VPN will reconnect. |
2026-09-10T15:43:55.177Z | INFO | CONN.DISCONNECT | VPN disconnect started |
2026-09-10T15:43:55.179Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.udp)"}
2026-09-10T15:43:55.179Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:43:55.179Z | INFO | LOCAL_AGENT:LOG | LocalAgent: closing |
2026-09-10T15:43:55.179Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Disconnected |
2026-09-10T15:43:55.179Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to disconnected |
2026-09-10T15:43:55.179Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in disconnected state |
2026-09-10T15:43:55.261Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:43:55.618Z | INFO | SYSEX | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:43:55.802Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"oldState":"VPN state - Connected to: 149.50.211.169","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp))","state":"VPN state - Disconnected"}
2026-09-10T15:43:55.802Z | DEBUG | LOCAL_AGENT | Disconnecting Local agent |
2026-09-10T15:43:55.803Z | DEBUG | LOCAL_AGENT | Stopping status monitoring. WasMonitoring: true |
2026-09-10T15:43:55.809Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:43:55.810Z | DEBUG | API | Re-enabling DoH while disconnected from VPN |
2026-09-10T15:43:56.905Z | INFO | PERSISTENCE | Selecting server | {"order":"fastest","filters":"[|country=SG, |requires:[[]],excludes:[[\"secureCore\"]], |protocols:[WireGuardTLS], |maxTier=2, |notMaintenance]","connectionRequest":"ConnectionRequest(id: 88AC17BB-3468-4E79-A18B-C44500690ABC, serverType: Standard, connectionType: CommonNetworking.ConnectionRequestType.country(\"SG\", CommonNetworking.CountryConnectionRequestType.fastest), connectionProtocol: Stealth, netShieldType: Domain.NetShieldType.level2, natType: Domain.NATType.strictNAT, safeMode: nil, portForwarding: Optional(false), profileId: nil, profileName: nil, trigger: Optional(Domain.UserInitiatedVPNChange.VPNTrigger.map))"}
2026-09-10T15:43:56.912Z | DEBUG | CONN.CONNECT | Server selected: SG#238 (node-sg-34.protonvpn.net, load: 39) |
2026-09-10T15:43:56.916Z | INFO | CONN | Initiating connection timeout with id: 91427588-41E6-49EC-9A01-275FD3C55EF4 |
2026-09-10T15:43:56.916Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:43:56.917Z | INFO | CONN.CONNECT | Selected ServerIp(id: "eGclHlqQkEJMlj-Hksl9G6NAobUnqkmjKU6PhOZCWSFzozSIrwYU5YoRm6E6V69CN668Odvvr_IDe4Q7Hf7fpg==", entryIp: Optional("149.50.211.169"), exitIp: "149.50.211.169", domain: "node-sg-34.protonvpn.net", status: 1, label: Optional("19"), x25519PublicKey: Optional("TrhdyC23yM5oNjMN1YCDdqrgrQZpT0ZqFBU4yU8l3D4="), protocolEntries: nil) as server ip for node-sg-34.protonvpn.net |
2026-09-10T15:43:56.917Z | INFO | CONN.CONNECT | Connecting with wireGuard(Domain.WireGuardTransport.tls) to SG#238 via Optional("149.50.211.169"):[443] |
2026-09-10T15:43:57.013Z | INFO | USER_CERT | Using existing vpn authentication keys |
2026-09-10T15:43:57.016Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.udp)"}
2026-09-10T15:43:57.016Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:43:57.039Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: connecting, error: Error(localizedDescription: "Ignoring connecting event, wasn\'t connected before") |
2026-09-10T15:43:57.209Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:43:57.210Z | INFO | CONN.CONNECT | About to start connection process |
2026-09-10T15:43:57.211Z | INFO | CONN.CONNECT | Creating connection configuration |
2026-09-10T15:43:57.519Z | INFO | SYSEX | Credentials set result (wg): success |
2026-09-10T15:43:57.519Z | INFO | CONN.CONNECT | Configuring connection |
2026-09-10T15:43:57.529Z | INFO | CONN.CONNECT | Loading connection configuration |
2026-09-10T15:43:57.529Z | INFO | CONN.CONNECT | Starting VPN tunnel |
2026-09-10T15:43:57.538Z | DEBUG | CONN | Server change observer received status | {"requestId":"88AC17BB-3468-4E79-A18B-C44500690ABC","connection":"<NETunnelProviderSession: 0x600000473ed0>","status":"connecting"}
2026-09-10T15:43:57.538Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connecting to: 149.50.211.169 | {"currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","state":"VPN state - Connecting to: 149.50.211.169","oldState":"VPN state - Disconnected"}
2026-09-10T15:43:57.739Z | WARN | TELEMETRY | Failed to send telemetry event: ConnectionEvent(measurementGroup: "vpn.any.connection", event: Telemetry.ConnectionEvent.Event.vpnConnection(timeToConnection: 12.638815999031067), dimensions: Telemetry.ConnectionDimensions(outcome: Telemetry.ConnectionDimensions.Outcome.success, userTier: Telemetry.ConnectionDimensions.UserTier.paid, vpnStatus: Telemetry.CommonTelemetryDimensions.VPNStatus.off, vpnTrigger: Domain.UserInitiatedVPNChange.VPNTrigger.map, networkType: Telemetry.ConnectionDimensions.NetworkType.wifi, serverFeatures: ["p2p", "streaming", "ipv6"], vpnCountry: "SG", userCountry: "CN", protocol: Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp), server: "SG#238", port: "500", isp: "China Unicom", isServerFree: false)) with error: The internet connection appears to be offline., saving to storage. |
2026-09-10T15:43:57.740Z | DEBUG | | Telemetry event scheduled:
{
"Values" : {
"time_to_connection" : 12638
},
"MeasurementGroup" : "vpn.any.connection",
"Event" : "vpn_connection",
"Dimensions" : {
"protocol" : "wireguard_udp",
"server_features" : "p2p,streaming,ipv6",
"isp" : "China Unicom",
"server" : "SG#238",
"network_type" : "wifi",
"user_tier" : "paid",
"port" : "500",
"vpn_country" : "SG",
"vpn_status" : "off",
"vpn_trigger" : "map",
"user_country" : "CN",
"outcome" : "success"
}
} |
2026-09-10T15:43:57.740Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") |
2026-09-10T15:44:14.941Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:44:25.740Z | DEBUG | APP | Refresh timer tick | {"task":"(Function)"}
2026-09-10T15:44:26.341Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:44:26.944Z | INFO | CONN | Connection timeout finished for id: 91427588-41E6-49EC-9A01-275FD3C55EF4 |
2026-09-10T15:44:26.944Z | INFO | CONN.CONNECT | Connection attempt timed out |
2026-09-10T15:44:26.944Z | INFO | CONN.CONNECT | Stop preparing connection |
2026-09-10T15:44:26.944Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:44:26.948Z | INFO | CONN.DISCONNECT | VPN disconnect started |
2026-09-10T15:44:26.949Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"}
2026-09-10T15:44:26.949Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:44:27.080Z | DEBUG | | Telemetry event scheduled:
{
"Values" : {
"session_length" : 87171
},
"MeasurementGroup" : "vpn.any.connection",
"Event" : "vpn_disconnection",
"Dimensions" : {
"outcome" : "failure",
"protocol" : "wireguard_udp",
"vpn_country" : "SG",
"user_tier" : "paid",
"network_type" : "wifi",
"vpn_status" : "on",
"user_country" : "CN",
"server" : "SG#238",
"port" : "500",
"isp" : "China Unicom",
"vpn_trigger" : "new_connection",
"server_features" : "p2p,streaming,ipv6"
}
} |
2026-09-10T15:44:27.154Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:44:27.167Z | DEBUG | CONN | Server change observer received status | {"status":"disconnecting","connection":"<NETunnelProviderSession: 0x600000473ed0>","requestId":"88AC17BB-3468-4E79-A18B-C44500690ABC"}
2026-09-10T15:44:27.692Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnecting from: 149.50.211.169 | {"oldState":"VPN state - Connecting to: 149.50.211.169","state":"VPN state - Disconnecting from: 149.50.211.169","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))"}
2026-09-10T15:44:27.693Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:44:27.806Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnecting, error: Error(localizedDescription: "Ignoring the `disconnecting` status") |
2026-09-10T15:44:30.808Z | ERROR | NET:RESPONSE | Request failed | {"error":"Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x60000289cd50 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <3FF0458C-5E95-4161-8599-289BD240F94F>.<100>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <3FF0458C-5E95-4161-8599-289BD240F94F>.<100>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=http:\/\/protonstatus.com\/vpn_status, NSErrorFailingURLKey=http:\/\/protonstatus.com\/vpn_status, _kCFStreamErrorDomainKey=4}","method":"GET","url":"http:\/\/protonstatus.com\/vpn_status"}
2026-09-10T15:44:30.808Z | ERROR | UI | Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x60000289cd50 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <3FF0458C-5E95-4161-8599-289BD240F94F>.<100>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <3FF0458C-5E95-4161-8599-289BD240F94F>.<100>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=http://protonstatus.com/vpn_status, NSErrorFailingURLKey=http://protonstatus.com/vpn_status, _kCFStreamErrorDomainKey=4} |
2026-09-10T15:44:35.838Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:44:35.838Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:44:35.838Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:44:35.854Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:44:35.858Z | ERROR | NET:RESPONSE | Request failed | {"error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, NSUnderlyingError=0x6000028eb5a0 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028eb570 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=4}}}","method":"POST","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate"}
2026-09-10T15:44:35.858Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, NSUnderlyingError=0x6000028eb5a0 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028eb570 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}} |
2026-09-10T15:44:35.858Z | INFO | USER_CERT | Cert refresh failed due to network error Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, NSUnderlyingError=0x6000028eb5a0 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028eb570 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}}. Retrying in 11 seconds. |
2026-09-10T15:44:46.357Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:44:46.357Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:44:46.357Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:44:46.372Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:44:46.375Z | WARN | TELEMETRY | Failed to send telemetry event: ConnectionEvent(measurementGroup: "vpn.any.connection", event: Telemetry.ConnectionEvent.Event.vpnConnection(timeToConnection: 68.66508400440216), dimensions: Telemetry.ConnectionDimensions(outcome: Telemetry.ConnectionDimensions.Outcome.success, userTier: Telemetry.ConnectionDimensions.UserTier.paid, vpnStatus: Telemetry.CommonTelemetryDimensions.VPNStatus.off, vpnTrigger: Domain.UserInitiatedVPNChange.VPNTrigger.auto, networkType: Telemetry.ConnectionDimensions.NetworkType.wifi, serverFeatures: ["p2p", "streaming", "ipv6"], vpnCountry: "SG", userCountry: "CN", protocol: Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp), server: "SG#238", port: "500", isp: "China Unicom", isServerFree: false)) with error: The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, saving to storage. |
2026-09-10T15:44:46.376Z | DEBUG | | Telemetry event scheduled:
{
"MeasurementGroup" : "vpn.any.connection",
"Values" : {
"time_to_connection" : 68665
},
"Event" : "vpn_connection",
"Dimensions" : {
"server" : "SG#238",
"outcome" : "success",
"vpn_trigger" : "auto",
"user_country" : "CN",
"server_features" : "p2p,streaming,ipv6",
"user_tier" : "paid",
"vpn_country" : "SG",
"protocol" : "wireguard_udp",
"vpn_status" : "off",
"port" : "500",
"isp" : "China Unicom",
"network_type" : "wifi"
}
} |
2026-09-10T15:44:46.376Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") |
2026-09-10T15:44:46.863Z | DEBUG | USER_CERT | Checking if vpn authentication certificate refresh is needed |
2026-09-10T15:44:46.868Z | INFO | USER_CERT | Using existing vpn authentication keys |
2026-09-10T15:44:46.871Z | INFO | USER_CERT | Certificate has expired or should be refreshed | {"validUntil":"2026-09-10 15:30:31 +0000","refreshTime":"2026-09-10 09:30:31 +0000"}
2026-09-10T15:44:46.871Z | DEBUG | USER_CERT:NEW_CERT | Asking backend API for new vpn authentication certificate |
2026-09-10T15:44:46.871Z | DEBUG | NET | Request started | {"method":"POST","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate"}
2026-09-10T15:44:47.178Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"state":"VPN state - Disconnected","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","oldState":"VPN state - Disconnecting from: 149.50.211.169"}
2026-09-10T15:44:47.179Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:44:47.191Z | DEBUG | CONN | Server change observer received status | {"requestId":"88AC17BB-3468-4E79-A18B-C44500690ABC","connection":"<NETunnelProviderSession: 0x600000473ed0>","status":"disconnected"}
2026-09-10T15:44:47.290Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnected, error: Error(localizedDescription: "Ignoring disconnected event, was previously disconnected") |
2026-09-10T15:44:51.385Z | INFO | OS | applicationDidResignActive |
2026-09-10T15:44:55.983Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:44:55.984Z | INFO | OS | applicationDidBecomeActive |
2026-09-10T15:44:55.987Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:44:57.594Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:44:57.599Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:44:59.502Z | INFO | PERSISTENCE | Selecting server | {"connectionRequest":"ConnectionRequest(id: 61745839-4EBE-45BF-8630-64294FE32208, serverType: Standard, connectionType: CommonNetworking.ConnectionRequestType.country(\"VN\", CommonNetworking.CountryConnectionRequestType.fastest), connectionProtocol: Smart, netShieldType: Domain.NetShieldType.off, natType: Domain.NATType.strictNAT, safeMode: nil, portForwarding: nil, profileId: nil, profileName: nil, trigger: nil)","order":"fastest","filters":"[|country=VN, |requires:[[]],excludes:[[\"secureCore\"]], |protocols:[WireGuardTLS], |maxTier=2, |notMaintenance]"}
2026-09-10T15:44:59.504Z | DEBUG | CONN.CONNECT | Server selected: VN#3 (node-vn-01.protonvpn.net, load: 35) |
2026-09-10T15:44:59.513Z | INFO | CONN | Initiating connection timeout with id: 89D3B35D-AABA-409E-BAEA-E5A5EE91FA27 |
2026-09-10T15:44:59.513Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:44:59.514Z | INFO | CONN.CONNECT | Selected ServerIp(id: "xCF5_OX-sDZjSqPb8l9vRSURgZfN7dgCYEYKc1_SZxYuZ2PtoR024y81ogDtdzx9VjWHfoph3iyKTg3aPyyDIw==", entryIp: Optional("188.214.152.226"), exitIp: "188.214.152.226", domain: "node-vn-01.protonvpn.net", status: 1, label: Optional("2"), x25519PublicKey: Optional("NfKOMtk2fuDycbQXv36yk5mfdgDA8/8SN6amCdFrKxQ="), protocolEntries: nil) as server ip for node-vn-01.protonvpn.net |
2026-09-10T15:44:59.514Z | INFO | CONN.CONNECT | Connecting with wireGuard(Domain.WireGuardTransport.tls) to VN#3 via Optional("188.214.152.226"):[443] |
2026-09-10T15:44:59.601Z | INFO | USER_CERT | Using existing vpn authentication keys |
2026-09-10T15:44:59.603Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"}
2026-09-10T15:44:59.603Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:44:59.626Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: connecting, error: Error(localizedDescription: "Ignoring connecting event, wasn\'t connected before") |
2026-09-10T15:44:59.772Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:44:59.773Z | INFO | CONN.CONNECT | About to start connection process |
2026-09-10T15:44:59.773Z | INFO | CONN.CONNECT | Creating connection configuration |
2026-09-10T15:44:59.982Z | DEBUG | PROTOCOL | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:45:00.003Z | INFO | SYSEX | Credentials set result (wg): success |
2026-09-10T15:45:00.003Z | INFO | CONN.CONNECT | Configuring connection |
2026-09-10T15:45:00.014Z | INFO | CONN.CONNECT | Loading connection configuration |
2026-09-10T15:45:00.014Z | INFO | CONN.CONNECT | Starting VPN tunnel |
2026-09-10T15:45:00.021Z | DEBUG | CONN | Server change observer received status | {"connection":"<NETunnelProviderSession: 0x6000004a4f00>","status":"connecting","requestId":"7920E163-28F4-42EE-82EC-49B0ADC68514"}
2026-09-10T15:45:00.021Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connecting to: 188.214.152.226 | {"state":"VPN state - Connecting to: 188.214.152.226","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","oldState":"VPN state - Disconnected"}
2026-09-10T15:45:00.133Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:45:00.133Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:45:00.133Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:45:00.140Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:45:00.185Z | ERROR | NET:RESPONSE | Request failed | {"method":"POST","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","error":"Error Domain=NSURLErrorDomain Code=-1009 \"The internet connection appears to be offline.\" UserInfo={_kCFStreamErrorCodeKey=50, NSUnderlyingError=0x600002876400 {Error Domain=kCFErrorDomainCFNetwork Code=-1009 \"(null)\" UserInfo={_kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=50, _NSURLErrorVPNInactiveFailureKey=true, _NSURLErrorNWPathKey=satisfiable (Network Agent [domain: NetworkExtension, type: VPN, description: VPN: ProtonVPN, uuid: B50159A5-A949-4EBF-B5DC-4BA4C6BB5386, flags: d] VPN is inactive), interface: en0[802.11], ipv4, dns, uses cell}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>\"\n), NSLocalizedDescription=The internet connection appears to be offline., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=1}"}
2026-09-10T15:45:00.185Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=NSURLErrorDomain Code=-1009 "The internet connection appears to be offline." UserInfo={_kCFStreamErrorCodeKey=50, NSUnderlyingError=0x600002876400 {Error Domain=kCFErrorDomainCFNetwork Code=-1009 "(null)" UserInfo={_kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=50, _NSURLErrorVPNInactiveFailureKey=true, _NSURLErrorNWPathKey=satisfiable (Network Agent [domain: NetworkExtension, type: VPN, description: VPN: ProtonVPN, uuid: B50159A5-A949-4EBF-B5DC-4BA4C6BB5386, flags: d] VPN is inactive), interface: en0[802.11], ipv4, dns, uses cell}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>"
), NSLocalizedDescription=The internet connection appears to be offline., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=1} |
2026-09-10T15:45:00.185Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"}
2026-09-10T15:45:00.185Z | ERROR | APP | RefreshAccount error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"}
2026-09-10T15:45:00.185Z | ERROR | USER_CERT | Failed to refresh certificate through API: Error Domain=NSURLErrorDomain Code=-1009 "The internet connection appears to be offline." UserInfo={_kCFStreamErrorCodeKey=50, NSUnderlyingError=0x600002876400 {Error Domain=kCFErrorDomainCFNetwork Code=-1009 "(null)" UserInfo={_kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=50, _NSURLErrorVPNInactiveFailureKey=true, _NSURLErrorNWPathKey=satisfiable (Network Agent [domain: NetworkExtension, type: VPN, description: VPN: ProtonVPN, uuid: B50159A5-A949-4EBF-B5DC-4BA4C6BB5386, flags: d] VPN is inactive), interface: en0[802.11], ipv4, dns, uses cell}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>"
), NSLocalizedDescription=The internet connection appears to be offline., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=1}. Will retry in 80.0 seconds. |
2026-09-10T15:45:00.185Z | INFO | USER_CERT | Certificate refresh timer invalidated |
2026-09-10T15:45:00.185Z | INFO | USER_CERT | Timer setup for 2026-09-10 15:46:20 +0000 |
2026-09-10T15:45:06.659Z | INFO | UI | Showing alert: ReconnectOnSmartProtocolChangeAlert |
2026-09-10T15:45:07.746Z | INFO | | Submitting request <OSSystemExtensionActivationRequest: 0x600002a3aa00> for ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:45:07.782Z | DEBUG | | Deinit request 24BA2436-D17D-441F-8AA9-B12F189602B1 for ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:45:07.782Z | DEBUG | SYSEX | Finished installation with results: [LegacyCommon.SystemExtensionType.wireGuard: Swift.Result<LegacyCommon.SystemExtensionInstallationSuccess, LegacyCommon.SystemExtensionInstallationFailure>.success(LegacyCommon.SystemExtensionInstallationSuccess.upgraded)] |
2026-09-10T15:45:07.787Z | INFO | CONN.CONNECT:TRIGGER | Connection will restart after VPN feature change | {"feature":"smartProtocol"}
2026-09-10T15:45:07.787Z | INFO | CONN.DISCONNECT | VPN disconnect started |
2026-09-10T15:45:07.787Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"}
2026-09-10T15:45:07.787Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:45:07.806Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:45:07.821Z | DEBUG | CONN | Server change observer received status | {"connection":"<NETunnelProviderSession: 0x6000004a4f00>","requestId":"7920E163-28F4-42EE-82EC-49B0ADC68514","status":"disconnecting"}
2026-09-10T15:45:08.351Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnecting from: 188.214.152.226 | {"state":"VPN state - Disconnecting from: 188.214.152.226","oldState":"VPN state - Connecting to: 188.214.152.226","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))"}
2026-09-10T15:45:08.351Z | INFO | CONN.CONNECT | Stop preparing connection |
2026-09-10T15:45:08.355Z | INFO | CONN.DISCONNECT | VPN disconnect started |
2026-09-10T15:45:08.355Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"}
2026-09-10T15:45:08.355Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:45:08.559Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:45:16.565Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:45:16.566Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:45:16.566Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:45:16.582Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:45:16.584Z | ERROR | API:RESPONSE | Couldn't parse user's ip location response | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"}
2026-09-10T15:45:16.585Z | DEBUG | NET | Request started | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/logicals?WithState=1&WithTranslations&WithEntriesForProtocols=IKEv2,WireGuardUDP,WireGuardTCP,WireGuardTLS","condition":"Optional(CommonNetworking.RequestCondition.ifModifiedSince(date: \"Mon, 07 Sep 2026 16:44:14 GMT\"))","method":"GET"}
2026-09-10T15:45:17.623Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:45:17.623Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:45:17.623Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:45:17.624Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:45:17.624Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:45:17.624Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:45:17.640Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:45:17.652Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:45:17.660Z | WARN | TELEMETRY | Failed to send scheduled telemetry events, leaving in storage: ["MeasurementGroup": "vpn.any.connection", "EventInfo": [["MeasurementGroup": vpn.any.connection, "Dimensions": {
isp = "China Unicom";
"network_type" = wifi;
outcome = success;
port = 500;
protocol = "wireguard_udp";
server = "SG#238";
"server_features" = "p2p,streaming,ipv6";
"user_country" = CN;
"user_tier" = paid;
"vpn_country" = SG;
"vpn_status" = off;
"vpn_trigger" = map;
}, "Event": vpn_connection, "Values": {
"time_to_connection" = 12638;
}], ["MeasurementGroup": vpn.any.connection, "Values": {
"session_length" = 87171;
}, "Event": vpn_disconnection, "Dimensions": {
isp = "China Unicom";
"network_type" = wifi;
outcome = failure;
port = 500;
protocol = "wireguard_udp";
server = "SG#238";
"server_features" = "p2p,streaming,ipv6";
"user_country" = CN;
"user_tier" = paid;
"vpn_country" = SG;
"vpn_status" = on;
"vpn_trigger" = "new_connection";
}]]] |
2026-09-10T15:45:17.661Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") |
2026-09-10T15:45:27.834Z | DEBUG | CONN | Server change observer received status | {"connection":"<NETunnelProviderSession: 0x6000004a4f00>","status":"disconnected","requestId":"7920E163-28F4-42EE-82EC-49B0ADC68514"}
2026-09-10T15:45:27.834Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"state":"VPN state - Disconnected","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","oldState":"VPN state - Disconnecting from: 188.214.152.226"}
2026-09-10T15:45:27.834Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:45:27.937Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnected, error: Error(localizedDescription: "Ignoring disconnected event, was previously disconnected") |
2026-09-10T15:45:36.304Z | INFO | OS | applicationDidResignActive |
2026-09-10T15:45:36.804Z | INFO | OS | applicationDidBecomeActive |
2026-09-10T15:45:37.913Z | DEBUG | CONN.CONNECT:TRIGGER | Connect requested by selecting Quick connect |
2026-09-10T15:45:37.913Z | INFO | CONN.CONNECT | Using default QC request, user has no QC profile set |
2026-09-10T15:45:37.917Z | INFO | PERSISTENCE | Selecting server | {"connectionRequest":"ConnectionRequest(id: 7C500BEA-2AD5-4F21-95E2-FBB2E39A19F7, serverType: Standard, connectionType: CommonNetworking.ConnectionRequestType.fastest, connectionProtocol: Smart, netShieldType: Domain.NetShieldType.level2, natType: Domain.NATType.strictNAT, safeMode: nil, portForwarding: Optional(false), profileId: nil, profileName: nil, trigger: Optional(Domain.UserInitiatedVPNChange.VPNTrigger.quick))","filters":"[|requires:[[]],excludes:[[\"secureCore\"]], |protocols:[WireGuardUDP, WireGuardTCP, WireGuardTLS], |maxTier=2, |notMaintenance]","order":"fastestGatewaysLast"}
2026-09-10T15:45:37.995Z | DEBUG | CONN.CONNECT | Server selected: CN#36 (node-cn-01.protonvpn.net, load: 6) |
2026-09-10T15:45:38.001Z | INFO | CONN | Initiating connection timeout with id: 05B76C93-3F5D-451E-8CFB-AE378F2F4683 |
2026-09-10T15:45:38.001Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:45:38.002Z | INFO | CONN.CONNECT | Selected ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) as server ip for node-cn-01.protonvpn.net |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Wireguard will be used for Smart Protocol checks |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Wireguard TCP will be used for Smart Protocol checks |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Wireguard TLS will be used for Smart Protocol checks |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Determining best protocol for ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking Stealth availability for ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard (TCP) availability for ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 1224 |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 4500 |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 443 |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 51820 |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 500 |
2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 88 |
2026-09-10T15:45:38.087Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: connecting, error: Error(localizedDescription: "Ignoring connecting event, wasn\'t connected before") |
2026-09-10T15:45:38.422Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:45:43.005Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 500 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:59522->135.136.62.2:500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:59522->135.136.62.2:500: i/o timeout}) |
2026-09-10T15:45:43.004Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 443 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:58363->135.136.62.2:443: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:58363->135.136.62.2:443: i/o timeout}) |
2026-09-10T15:45:43.004Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 88 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:55678->135.136.62.2:88: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:55678->135.136.62.2:88: i/o timeout}) |
2026-09-10T15:45:43.005Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 1224 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:54162->135.136.62.2:1224: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:54162->135.136.62.2:1224: i/o timeout}) |
2026-09-10T15:45:43.005Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 4500 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:63728->135.136.62.2:4500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:63728->135.136.62.2:4500: i/o timeout}) |
2026-09-10T15:45:43.005Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 51820 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:57834->135.136.62.2:51820: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:57834->135.136.62.2:51820: i/o timeout}) |
2026-09-10T15:45:44.069Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) |
2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 51820 |
2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 443 |
2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 500 |
2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 4500 |
2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 88 |
2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 1224 |
2026-09-10T15:45:47.005Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:45:47.697Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 500 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:50393->135.136.62.2:500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:50393->135.136.62.2:500: i/o timeout}) |
2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 443 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:52621->135.136.62.2:443: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:52621->135.136.62.2:443: i/o timeout}) |
2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 1224 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:60799->135.136.62.2:1224: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:60799->135.136.62.2:1224: i/o timeout}) |
2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 88 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:63345->135.136.62.2:88: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:63345->135.136.62.2:88: i/o timeout}) |
2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 4500 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:53790->135.136.62.2:4500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:53790->135.136.62.2:4500: i/o timeout}) |
2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 51820 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:55242->135.136.62.2:51820: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:55242->135.136.62.2:51820: i/o timeout}) |
2026-09-10T15:45:49.073Z | DEBUG | CONN.CONNECT:SCAN | Best protocol for 135.136.62.2 is wireGuard(Domain.WireGuardTransport.tls) with ports [443] |
2026-09-10T15:45:49.073Z | INFO | CONN.CONNECT | Connecting with wireGuard(Domain.WireGuardTransport.tls) to CN#36 via Optional("135.136.62.2"):[443] |
2026-09-10T15:45:49.077Z | INFO | USER_CERT | Using existing vpn authentication keys |
2026-09-10T15:45:49.084Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"}
2026-09-10T15:45:49.084Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:45:49.191Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:45:49.194Z | INFO | CONN.CONNECT | About to start connection process |
2026-09-10T15:45:49.194Z | INFO | CONN.CONNECT | Creating connection configuration |
2026-09-10T15:45:49.401Z | INFO | SYSEX | Credentials set result (wg): success |
2026-09-10T15:45:49.401Z | INFO | CONN.CONNECT | Configuring connection |
2026-09-10T15:45:49.409Z | INFO | CONN.CONNECT | Loading connection configuration |
2026-09-10T15:45:49.410Z | INFO | CONN.CONNECT | Starting VPN tunnel |
2026-09-10T15:45:49.417Z | DEBUG | CONN | Server change observer received status | {"requestId":"7C500BEA-2AD5-4F21-95E2-FBB2E39A19F7","status":"connecting","connection":"<NETunnelProviderSession: 0x60000041b250>"}
2026-09-10T15:45:49.417Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connecting to: 135.136.62.2 | {"currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","oldState":"VPN state - Disconnected","state":"VPN state - Connecting to: 135.136.62.2"}
2026-09-10T15:45:49.560Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:45:49.560Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:45:49.560Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:45:49.567Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:46:07.406Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:46:07.406Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:46:07.406Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:46:07.423Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:46:07.427Z | ERROR | NET:RESPONSE | Request failed | {"code":"-1","error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSUnderlyingError=0x600002850990 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002852fd0 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <275389D6-FB96-42C8-AA07-98E369727C1C>.<63>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <275389D6-FB96-42C8-AA07-98E369727C1C>.<63>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/logicals?WithState=1&WithTranslations&WithEntriesForProtocols=IKEv2,WireGuardUDP,WireGuardTCP,WireGuardTLS, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/logicals?WithState=1&WithTranslations&WithEntriesForProtocols=IKEv2,WireGuardUDP,WireGuardTCP,WireGuardTLS, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/logicals?WithState=1&WithTranslations&WithEntriesForProtocols=IKEv2,WireGuardUDP,WireGuardTCP,WireGuardTLS","method":"GET"}
2026-09-10T15:46:07.427Z | ERROR | API | Failed to refresh server information | {"error":"CommonVpnErrorDomain 0x4650454c"}
2026-09-10T15:46:07.984Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:46:07.984Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:46:07.984Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:46:08.000Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:46:08.004Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"}
2026-09-10T15:46:08.083Z | INFO | CONN | Connection timeout finished for id: 05B76C93-3F5D-451E-8CFB-AE378F2F4683 |
2026-09-10T15:46:08.083Z | INFO | CONN.CONNECT | Connection attempt timed out |
2026-09-10T15:46:08.083Z | INFO | CONN.CONNECT | Stop preparing connection |
2026-09-10T15:46:08.083Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:46:08.086Z | INFO | CONN.DISCONNECT | VPN disconnect started |
2026-09-10T15:46:08.087Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"}
2026-09-10T15:46:08.087Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:46:08.216Z | DEBUG | | Telemetry event scheduled:
{
"Dimensions" : {
"user_tier" : "paid",
"vpn_country" : "CN",
"vpn_trigger" : "quick",
"network_type" : "wifi",
"user_country" : "CN",
"server" : "CN#36",
"port" : "443",
"protocol" : "wireguard_tls",
"isp" : "China Unicom",
"outcome" : "failure",
"server_features" : "p2p,streaming,ipv6",
"vpn_status" : "off"
},
"Values" : {
"time_to_connection" : 30128
},
"Event" : "vpn_connection",
"MeasurementGroup" : "vpn.any.connection"
} |
2026-09-10T15:46:08.288Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:46:08.300Z | DEBUG | CONN | Server change observer received status | {"status":"disconnecting","requestId":"7C500BEA-2AD5-4F21-95E2-FBB2E39A19F7","connection":"<NETunnelProviderSession: 0x60000041b250>"}
2026-09-10T15:46:08.825Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnecting from: 135.136.62.2 | {"state":"VPN state - Disconnecting from: 135.136.62.2","oldState":"VPN state - Connecting to: 135.136.62.2","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))"}
2026-09-10T15:46:08.825Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:46:08.935Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnecting, error: Error(localizedDescription: "Ignoring the `disconnecting` status") |
2026-09-10T15:46:11.160Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:46:11.161Z | INFO | CONN.DISCONNECT | VPN disconnect started |
2026-09-10T15:46:11.162Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"}
2026-09-10T15:46:11.162Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:46:11.353Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:46:20.188Z | DEBUG | USER_CERT | Checking if vpn authentication certificate refresh is needed |
2026-09-10T15:46:20.189Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:46:20.191Z | INFO | USER_CERT | Using existing vpn authentication keys |
2026-09-10T15:46:20.193Z | INFO | USER_CERT | Certificate has expired or should be refreshed | {"refreshTime":"2026-09-10 09:30:31 +0000","validUntil":"2026-09-10 15:30:31 +0000"}
2026-09-10T15:46:20.193Z | DEBUG | USER_CERT:NEW_CERT | Asking backend API for new vpn authentication certificate |
2026-09-10T15:46:20.194Z | DEBUG | NET | Request started | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","method":"POST"}
2026-09-10T15:46:28.319Z | DEBUG | CONN | Server change observer received status | {"status":"disconnected","connection":"<NETunnelProviderSession: 0x60000041b250>","requestId":"7C500BEA-2AD5-4F21-95E2-FBB2E39A19F7"}
2026-09-10T15:46:28.319Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"oldState":"VPN state - Disconnecting from: 135.136.62.2","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","state":"VPN state - Disconnected"}
2026-09-10T15:46:33.034Z | INFO | | Submitting request <OSSystemExtensionActivationRequest: 0x600002b80de0> for ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:46:33.070Z | DEBUG | | Deinit request E5FC31DF-4874-451E-845C-C63AE4788AFD for ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:46:33.070Z | DEBUG | SYSEX | Finished installation with results: [LegacyCommon.SystemExtensionType.wireGuard: Swift.Result<LegacyCommon.SystemExtensionInstallationSuccess, LegacyCommon.SystemExtensionInstallationFailure>.success(LegacyCommon.SystemExtensionInstallationSuccess.upgraded)] |
2026-09-10T15:46:34.417Z | DEBUG | CONN.CONNECT:TRIGGER | Connect requested by selecting Quick connect |
2026-09-10T15:46:34.418Z | INFO | CONN.CONNECT | Using default QC request, user has no QC profile set |
2026-09-10T15:46:34.421Z | INFO | PERSISTENCE | Selecting server | {"connectionRequest":"ConnectionRequest(id: 3F65454A-3673-4FDD-A5B9-5BA2E77ABC84, serverType: Standard, connectionType: CommonNetworking.ConnectionRequestType.fastest, connectionProtocol: Stealth, netShieldType: Domain.NetShieldType.level2, natType: Domain.NATType.strictNAT, safeMode: nil, portForwarding: Optional(false), profileId: nil, profileName: nil, trigger: Optional(Domain.UserInitiatedVPNChange.VPNTrigger.quick))","filters":"[|requires:[[]],excludes:[[\"secureCore\"]], |protocols:[WireGuardTLS], |maxTier=2, |notMaintenance]","order":"fastestGatewaysLast"}
2026-09-10T15:46:34.506Z | DEBUG | CONN.CONNECT | Server selected: CN#36 (node-cn-01.protonvpn.net, load: 6) |
2026-09-10T15:46:34.512Z | INFO | CONN | Initiating connection timeout with id: 80610B56-EAAE-4E2A-B50F-6F17E83B668F |
2026-09-10T15:46:34.512Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:46:34.513Z | INFO | CONN.CONNECT | Selected ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) as server ip for node-cn-01.protonvpn.net |
2026-09-10T15:46:34.513Z | INFO | CONN.CONNECT | Connecting with wireGuard(Domain.WireGuardTransport.tls) to CN#36 via Optional("135.136.62.2"):[443] |
2026-09-10T15:46:34.584Z | INFO | USER_CERT | Using existing vpn authentication keys |
2026-09-10T15:46:34.588Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"}
2026-09-10T15:46:34.588Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:46:34.608Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: connecting, error: Error(localizedDescription: "Ignoring connecting event, wasn\'t connected before") |
2026-09-10T15:46:34.754Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:46:34.773Z | INFO | CONN.CONNECT | About to start connection process |
2026-09-10T15:46:34.773Z | INFO | CONN.CONNECT | Creating connection configuration |
2026-09-10T15:46:34.967Z | DEBUG | PROTOCOL | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension |
2026-09-10T15:46:34.987Z | INFO | SYSEX | Credentials set result (wg): success |
2026-09-10T15:46:34.987Z | INFO | CONN.CONNECT | Configuring connection |
2026-09-10T15:46:34.997Z | INFO | CONN.CONNECT | Loading connection configuration |
2026-09-10T15:46:34.997Z | INFO | CONN.CONNECT | Starting VPN tunnel |
2026-09-10T15:46:35.003Z | DEBUG | CONN | Server change observer received status | {"requestId":"3F65454A-3673-4FDD-A5B9-5BA2E77ABC84","connection":"<NETunnelProviderSession: 0x6000004eaee0>","status":"connecting"}
2026-09-10T15:46:35.003Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connecting to: 135.136.62.2 | {"state":"VPN state - Connecting to: 135.136.62.2","oldState":"VPN state - Disconnected","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))"}
2026-09-10T15:46:35.131Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:46:35.131Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:46:35.131Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:46:35.138Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:46:35.152Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"}
2026-09-10T15:46:38.108Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:46:38.705Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:46:41.705Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:46:45.928Z | INFO | OS | applicationDidResignActive |
2026-09-10T15:46:46.498Z | INFO | OS | applicationDidBecomeActive |
2026-09-10T15:46:50.714Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:46:58.471Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:46:58.471Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:46:58.471Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:46:58.486Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:46:59.108Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:46:59.109Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:46:59.109Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:46:59.118Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:46:59.124Z | WARN | TELEMETRY | Failed to send scheduled telemetry events, leaving in storage: ["MeasurementGroup": "vpn.any.connection", "EventInfo": [["Event": vpn_connection, "Values": {
"time_to_connection" = 68665;
}, "Dimensions": {
isp = "China Unicom";
"network_type" = wifi;
outcome = success;
port = 500;
protocol = "wireguard_udp";
server = "SG#238";
"server_features" = "p2p,streaming,ipv6";
"user_country" = CN;
"user_tier" = paid;
"vpn_country" = SG;
"vpn_status" = off;
"vpn_trigger" = auto;
}, "MeasurementGroup": vpn.any.connection], ["Values": {
"time_to_connection" = 30128;
}, "MeasurementGroup": vpn.any.connection, "Event": vpn_connection, "Dimensions": {
isp = "China Unicom";
"network_type" = wifi;
outcome = failure;
port = 443;
protocol = "wireguard_tls";
server = "CN#36";
"server_features" = "p2p,streaming,ipv6";
"user_country" = CN;
"user_tier" = paid;
"vpn_country" = CN;
"vpn_status" = off;
"vpn_trigger" = quick;
}]]] |
2026-09-10T15:46:59.125Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") |
2026-09-10T15:47:02.105Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:47:02.105Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:47:02.105Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:47:02.120Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:47:02.124Z | WARN | TELEMETRY | Failed to send telemetry event: ConnectionEvent(measurementGroup: "vpn.any.connection", event: Telemetry.ConnectionEvent.Event.vpnConnection(timeToConnection: 33.19445502758026), dimensions: Telemetry.ConnectionDimensions(outcome: Telemetry.ConnectionDimensions.Outcome.aborted, userTier: Telemetry.ConnectionDimensions.UserTier.paid, vpnStatus: Telemetry.CommonTelemetryDimensions.VPNStatus.off, vpnTrigger: Domain.UserInitiatedVPNChange.VPNTrigger.auto, networkType: Telemetry.ConnectionDimensions.NetworkType.wifi, serverFeatures: ["p2p", "streaming", "ipv6"], vpnCountry: "CN", userCountry: "CN", protocol: Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls), server: "CN#36", port: "443", isp: "China Unicom", isServerFree: false)) with error: The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, saving to storage. |
2026-09-10T15:47:02.125Z | DEBUG | | Telemetry event scheduled:
{
"Values" : {
"time_to_connection" : 33194
},
"Event" : "vpn_connection",
"Dimensions" : {
"outcome" : "aborted",
"vpn_trigger" : "auto",
"network_type" : "wifi",
"vpn_country" : "CN",
"protocol" : "wireguard_tls",
"port" : "443",
"isp" : "China Unicom",
"user_country" : "CN",
"server" : "CN#36",
"vpn_status" : "off",
"server_features" : "p2p,streaming,ipv6",
"user_tier" : "paid"
},
"MeasurementGroup" : "vpn.any.connection"
} |
2026-09-10T15:47:02.126Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") |
2026-09-10T15:47:04.621Z | INFO | CONN | Connection timeout finished for id: 80610B56-EAAE-4E2A-B50F-6F17E83B668F |
2026-09-10T15:47:04.621Z | INFO | CONN.CONNECT | Connection attempt timed out |
2026-09-10T15:47:04.621Z | INFO | CONN.CONNECT | Stop preparing connection |
2026-09-10T15:47:04.621Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:47:04.624Z | INFO | CONN.DISCONNECT | VPN disconnect started |
2026-09-10T15:47:04.625Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"}
2026-09-10T15:47:04.625Z | INFO | CONN.DISCONNECT | Closing VPN tunnel |
2026-09-10T15:47:04.751Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnected, error: Error(localizedDescription: "Ignoring disconnected event, was previously disconnected") |
2026-09-10T15:47:04.823Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) |
2026-09-10T15:47:04.835Z | DEBUG | CONN | Server change observer received status | {"status":"disconnecting","connection":"<NETunnelProviderSession: 0x6000004eaee0>","requestId":"3F65454A-3673-4FDD-A5B9-5BA2E77ABC84"}
2026-09-10T15:47:05.358Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnecting from: 135.136.62.2 | {"state":"VPN state - Disconnecting from: 135.136.62.2","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","oldState":"VPN state - Connecting to: 135.136.62.2"}
2026-09-10T15:47:05.358Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:47:05.463Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnecting, error: Error(localizedDescription: "Ignoring the `disconnecting` status") |
2026-09-10T15:47:11.720Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:47:11.720Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:47:11.721Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:47:11.739Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:47:11.744Z | ERROR | NET:RESPONSE | Request failed | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","method":"POST","error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSUnderlyingError=0x600002ab6430 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002ab6a90 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}"}
2026-09-10T15:47:11.744Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x600002ab6430 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002ab6a90 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked} |
2026-09-10T15:47:11.744Z | INFO | USER_CERT | Cert refresh failed due to network error Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x600002ab6430 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002ab6a90 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}. Retrying in 15 seconds. |
2026-09-10T15:47:24.853Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"oldState":"VPN state - Disconnecting from: 135.136.62.2","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","state":"VPN state - Disconnected"}
2026-09-10T15:47:24.854Z | INFO | CONN | NAT port mapping service stopped |
2026-09-10T15:47:24.866Z | DEBUG | CONN | Server change observer received status | {"requestId":"3F65454A-3673-4FDD-A5B9-5BA2E77ABC84","status":"disconnected","connection":"<NETunnelProviderSession: 0x6000004eaee0>"}
2026-09-10T15:47:24.964Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnected, error: Error(localizedDescription: "Ignoring disconnected event, was previously disconnected") |
2026-09-10T15:47:25.929Z | DEBUG | APP | Refresh timer tick | {"task":"(Function)"}
2026-09-10T15:47:26.749Z | DEBUG | USER_CERT | Checking if vpn authentication certificate refresh is needed |
2026-09-10T15:47:26.755Z | INFO | USER_CERT | Using existing vpn authentication keys |
2026-09-10T15:47:26.757Z | INFO | USER_CERT | Certificate has expired or should be refreshed | {"validUntil":"2026-09-10 15:30:31 +0000","refreshTime":"2026-09-10 09:30:31 +0000"}
2026-09-10T15:47:26.757Z | DEBUG | USER_CERT:NEW_CERT | Asking backend API for new vpn authentication certificate |
2026-09-10T15:47:26.758Z | DEBUG | NET | Request started | {"method":"POST","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate"}
2026-09-10T15:47:28.746Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:47:34.678Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:47:49.746Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:47:49.746Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:47:49.746Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:47:49.760Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:47:49.762Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"}
2026-09-10T15:47:55.683Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:47:55.683Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:47:55.684Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:47:55.703Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:47:56.934Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:47:56.940Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:48:10.289Z | INFO | OS | applicationDidResignActive |
2026-09-10T15:48:17.779Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:48:17.780Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:48:17.780Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:48:17.780Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:48:17.780Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:48:17.780Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:48:17.803Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:48:17.820Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:48:17.824Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"}
2026-09-10T15:48:17.824Z | ERROR | APP | RefreshAccount error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"}
2026-09-10T15:48:17.828Z | ERROR | NET:RESPONSE | Request failed | {"method":"POST","error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSUnderlyingError=0x600002b6f1e0 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002b6fa80 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate"}
2026-09-10T15:48:17.828Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x600002b6f1e0 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002b6fa80 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked} |
2026-09-10T15:48:17.828Z | INFO | USER_CERT | Cert refresh failed due to network error Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x600002b6f1e0 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002b6fa80 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}. Retrying in 10 seconds. |
2026-09-10T15:48:25.747Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:48:27.834Z | DEBUG | USER_CERT | Checking if vpn authentication certificate refresh is needed |
2026-09-10T15:48:27.836Z | INFO | USER_CERT | Using existing vpn authentication keys |
2026-09-10T15:48:27.839Z | INFO | USER_CERT | Certificate has expired or should be refreshed | {"validUntil":"2026-09-10 15:30:31 +0000","refreshTime":"2026-09-10 09:30:31 +0000"}
2026-09-10T15:48:27.839Z | DEBUG | USER_CERT:NEW_CERT | Asking backend API for new vpn authentication certificate |
2026-09-10T15:48:27.840Z | DEBUG | NET | Request started | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","method":"POST"}
2026-09-10T15:48:46.242Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:48:46.243Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:48:46.243Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:48:46.270Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:48:46.274Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"}
2026-09-10T15:48:58.748Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching |
2026-09-10T15:49:19.746Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH |
2026-09-10T15:49:19.747Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH |
2026-09-10T15:49:19.747Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH |
2026-09-10T15:49:19.770Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed |
2026-09-10T15:49:19.776Z | ERROR | NET:RESPONSE | Request failed | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, NSUnderlyingError=0x600002b6d110 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002b6fa80 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <0EE75845-13FF-496D-A12E-1E77A55A492C>.<75>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <0EE75845-13FF-496D-A12E-1E77A55A492C>.<75>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=4}}}","method":"POST"}
2026-09-10T15:49:19.776Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, NSUnderlyingError=0x600002b6d110 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002b6fa80 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <0EE75845-13FF-496D-A12E-1E77A55A492C>.<75>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <0EE75845-13FF-496D-A12E-1E77A55A492C>.<75>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}} |
| 1 | ==> pf=macOS; os=15.7.7; hw=Mac14,9; pd=ProtonVPN; vn=6.5.1 (3106797.2605011144); id=D2E7FBB9-E532-5A8D-9A71-BDDED737F4E8 |
| 2 | 2026-09-10T15:42:47.149Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 443 | |
| 3 | 2026-09-10T15:42:47.149Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 1224 | |
| 4 | 2026-09-10T15:42:47.149Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 4500 | |
| 5 | 2026-09-10T15:42:47.270Z | DEBUG | | Telemetry event scheduled: |
| 6 | { |
| 7 | "Event" : "vpn_disconnection", |
| 8 | "MeasurementGroup" : "vpn.any.connection", |
| 9 | "Dimensions" : { |
| 10 | "network_type" : "wifi", |
| 11 | "vpn_country" : "JP", |
| 12 | "user_country" : "CN", |
| 13 | "server" : "JP#166", |
| 14 | "port" : "88", |
| 15 | "isp" : "China Unicom", |
| 16 | "protocol" : "wireguard_udp", |
| 17 | "vpn_trigger" : "new_connection", |
| 18 | "outcome" : "success", |
| 19 | "vpn_status" : "on", |
| 20 | "user_tier" : "paid", |
| 21 | "server_features" : "p2p,streaming,ipv6" |
| 22 | }, |
| 23 | "Values" : { |
| 24 | "session_length" : 163400 |
| 25 | } |
| 26 | } | |
| 27 | 2026-09-10T15:42:50.786Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 28 | 2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 1224 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:51567->149.50.211.169:1224: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:51567->149.50.211.169:1224: i/o timeout}) | |
| 29 | 2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 443 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:63240->149.50.211.169:443: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:63240->149.50.211.169:443: i/o timeout}) | |
| 30 | 2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 4500 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:59045->149.50.211.169:4500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:59045->149.50.211.169:4500: i/o timeout}) | |
| 31 | 2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 88 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:58413->149.50.211.169:88: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:58413->149.50.211.169:88: i/o timeout}) | |
| 32 | 2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 500 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:51838->149.50.211.169:500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:51838->149.50.211.169:500: i/o timeout}) | |
| 33 | 2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 51820 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:63144->149.50.211.169:51820: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:63144->149.50.211.169:51820: i/o timeout}) | |
| 34 | 2026-09-10T15:42:52.151Z | ERROR | CONN.CONNECT:SCAN | No working port found on Wireguard | |
| 35 | 2026-09-10T15:42:52.151Z | DEBUG | CONN.CONNECT:SCAN | No Wireguard ports responded when trying to get the best port, waiting a bit and trying one more time. | |
| 36 | 2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT | Retrying port selection | |
| 37 | 2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Getting best port for ServerIp(id: "eGclHlqQkEJMlj-Hksl9G6NAobUnqkmjKU6PhOZCWSFzozSIrwYU5YoRm6E6V69CN668Odvvr_IDe4Q7Hf7fpg==", entryIp: Optional("149.50.211.169"), exitIp: "149.50.211.169", domain: "node-sg-34.protonvpn.net", status: 1, label: Optional("19"), x25519PublicKey: Optional("TrhdyC23yM5oNjMN1YCDdqrgrQZpT0ZqFBU4yU8l3D4="), protocolEntries: nil) on WireGuard | |
| 38 | 2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 88 | |
| 39 | 2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 1224 | |
| 40 | 2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 443 | |
| 41 | 2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 51820 | |
| 42 | 2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 4500 | |
| 43 | 2026-09-10T15:42:53.218Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 149.50.211.169 on port 500 | |
| 44 | 2026-09-10T15:42:56.880Z | INFO | OS | applicationDidResignActive | |
| 45 | 2026-09-10T15:42:57.503Z | INFO | OS | applicationDidBecomeActive | |
| 46 | 2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 51820 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:56493->149.50.211.169:51820: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:56493->149.50.211.169:51820: i/o timeout}) | |
| 47 | 2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 500 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:49296->149.50.211.169:500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:49296->149.50.211.169:500: i/o timeout}) | |
| 48 | 2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 443 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:60802->149.50.211.169:443: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:60802->149.50.211.169:443: i/o timeout}) | |
| 49 | 2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 4500 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:58327->149.50.211.169:4500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:58327->149.50.211.169:4500: i/o timeout}) | |
| 50 | 2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 1224 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:49746->149.50.211.169:1224: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:49746->149.50.211.169:1224: i/o timeout}) | |
| 51 | 2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 149.50.211.169 on port 88 (Error: Error Domain=go Code=1 "read udp 10.2.0.2:57780->149.50.211.169:88: i/o timeout" UserInfo={NSLocalizedDescription=read udp 10.2.0.2:57780->149.50.211.169:88: i/o timeout}) | |
| 52 | 2026-09-10T15:42:58.220Z | ERROR | CONN.CONNECT:SCAN | No working port found on Wireguard | |
| 53 | 2026-09-10T15:42:58.220Z | DEBUG | CONN.CONNECT:SCAN | No Wireguard ports responded even on second attempt, returning ports at random | |
| 54 | 2026-09-10T15:42:58.220Z | INFO | CONN.CONNECT | Connecting with wireGuard(Domain.WireGuardTransport.udp) to SG#238 via Optional("149.50.211.169"):[500, 88, 443, 4500, 51820, 1224] | |
| 55 | 2026-09-10T15:42:58.224Z | INFO | USER_CERT | Using existing vpn authentication keys | |
| 56 | 2026-09-10T15:42:58.227Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.udp)"} |
| 57 | 2026-09-10T15:42:58.227Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 58 | 2026-09-10T15:42:58.227Z | INFO | LOCAL_AGENT:LOG | LocalAgent: closing | |
| 59 | 2026-09-10T15:42:58.227Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Disconnected | |
| 60 | 2026-09-10T15:42:58.227Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to disconnected | |
| 61 | 2026-09-10T15:42:58.227Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in disconnected state | |
| 62 | 2026-09-10T15:42:58.304Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 63 | 2026-09-10T15:42:58.671Z | DEBUG | PROTOCOL | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension | |
| 64 | 2026-09-10T15:42:58.671Z | DEBUG | PROTOCOL | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension | |
| 65 | 2026-09-10T15:42:58.864Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnecting from: 45.87.213.210 | {"oldState":"VPN state - Connected to: 45.87.213.210","state":"VPN state - Disconnecting from: 45.87.213.210","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp))"} |
| 66 | 2026-09-10T15:42:59.054Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"state":"VPN state - Disconnected","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp))","oldState":"VPN state - Disconnecting from: 45.87.213.210"} |
| 67 | 2026-09-10T15:42:59.054Z | INFO | CONN.CONNECT | About to start connection process | |
| 68 | 2026-09-10T15:42:59.054Z | DEBUG | LOCAL_AGENT | Disconnecting Local agent | |
| 69 | 2026-09-10T15:42:59.054Z | DEBUG | LOCAL_AGENT | Stopping status monitoring. WasMonitoring: true | |
| 70 | 2026-09-10T15:42:59.263Z | INFO | CONN.CONNECT | Creating connection configuration | |
| 71 | 2026-09-10T15:42:59.577Z | INFO | SYSEX | Credentials set result (wg): success | |
| 72 | 2026-09-10T15:42:59.577Z | INFO | CONN.CONNECT | Configuring connection | |
| 73 | 2026-09-10T15:42:59.588Z | INFO | CONN.CONNECT | Loading connection configuration | |
| 74 | 2026-09-10T15:42:59.588Z | INFO | CONN.CONNECT | Starting VPN tunnel | |
| 75 | 2026-09-10T15:42:59.600Z | DEBUG | CONN | Server change observer received status | {"connection":"<NETunnelProviderSession: 0x6000004b3020>","status":"connecting","requestId":"AE94FA5A-2915-4E5F-8B0F-611FE123092E"} |
| 76 | 2026-09-10T15:42:59.600Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connecting to: 149.50.211.169 | {"currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp))","state":"VPN state - Connecting to: 149.50.211.169","oldState":"VPN state - Disconnected"} |
| 77 | 2026-09-10T15:42:59.733Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 78 | 2026-09-10T15:42:59.733Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 79 | 2026-09-10T15:42:59.733Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 80 | 2026-09-10T15:42:59.741Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 81 | 2026-09-10T15:42:59.772Z | ERROR | NET:RESPONSE | Request failed | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","method":"POST","error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSUnderlyingError=0x6000028aca50 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028ac720 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}"} |
| 82 | 2026-09-10T15:42:59.772Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x6000028aca50 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028ac720 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 83 | "LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>" |
| 84 | ), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked} | |
| 85 | 2026-09-10T15:42:59.772Z | INFO | USER_CERT | Cert refresh failed due to network error Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x6000028aca50 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028ac720 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 86 | "LocalDataTask <A446A509-BA42-43E6-9F33-B8A726112B10>.<52>" |
| 87 | ), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}. Retrying in 15 seconds. | |
| 88 | 2026-09-10T15:42:59.772Z | WARN | TELEMETRY | Failed to send scheduled telemetry events, leaving in storage: ["MeasurementGroup": "vpn.any.connection", "EventInfo": [["Event": vpn_disconnection, "Dimensions": { |
| 89 | isp = "China Unicom"; |
| 90 | "network_type" = wifi; |
| 91 | outcome = failure; |
| 92 | port = 443; |
| 93 | protocol = "wireguard_tls"; |
| 94 | server = "JP#166"; |
| 95 | "server_features" = "p2p,streaming,ipv6"; |
| 96 | "user_country" = CN; |
| 97 | "user_tier" = paid; |
| 98 | "vpn_country" = JP; |
| 99 | "vpn_status" = on; |
| 100 | "vpn_trigger" = "new_connection"; |
| 101 | }, "Values": { |
| 102 | "session_length" = 88271; |
| 103 | }, "MeasurementGroup": vpn.any.connection], ["Dimensions": { |
| 104 | isp = "China Unicom"; |
| 105 | "network_type" = wifi; |
| 106 | outcome = success; |
| 107 | port = 88; |
| 108 | protocol = "wireguard_udp"; |
| 109 | server = "JP#166"; |
| 110 | "server_features" = "p2p,streaming,ipv6"; |
| 111 | "user_country" = CN; |
| 112 | "user_tier" = paid; |
| 113 | "vpn_country" = JP; |
| 114 | "vpn_status" = off; |
| 115 | "vpn_trigger" = quick; |
| 116 | }, "Values": { |
| 117 | "time_to_connection" = 19908; |
| 118 | }, "Event": vpn_connection, "MeasurementGroup": vpn.any.connection], ["MeasurementGroup": vpn.any.connection, "Event": vpn_disconnection, "Values": { |
| 119 | "session_length" = 163400; |
| 120 | }, "Dimensions": { |
| 121 | isp = "China Unicom"; |
| 122 | "network_type" = wifi; |
| 123 | outcome = success; |
| 124 | port = 88; |
| 125 | protocol = "wireguard_udp"; |
| 126 | server = "JP#166"; |
| 127 | "server_features" = "p2p,streaming,ipv6"; |
| 128 | "user_country" = CN; |
| 129 | "user_tier" = paid; |
| 130 | "vpn_country" = JP; |
| 131 | "vpn_status" = on; |
| 132 | "vpn_trigger" = "new_connection"; |
| 133 | }]]] | |
| 134 | 2026-09-10T15:42:59.773Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") | |
| 135 | 2026-09-10T15:42:59.791Z | DEBUG | CONN | Server change observer received status | {"status":"connected","connection":"<NETunnelProviderSession: 0x6000004b3020>","requestId":"AE94FA5A-2915-4E5F-8B0F-611FE123092E"} |
| 136 | 2026-09-10T15:42:59.791Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connected to: 149.50.211.169 | {"state":"VPN state - Connected to: 149.50.211.169","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp))","oldState":"VPN state - Connecting to: 149.50.211.169"} |
| 137 | 2026-09-10T15:42:59.796Z | DEBUG | USER_CERT | Loading stored vpn authentication data | |
| 138 | 2026-09-10T15:42:59.796Z | INFO | USER_CERT:NEW_CERT | Stored vpn authentication certificate is expired (2026-09-10 15:30:31 +0000), the local agent will connect but certificate refresh will be needed | |
| 139 | 2026-09-10T15:42:59.797Z | DEBUG | LOCAL_AGENT | Local agent connecting to node-sg-34.protonvpn.net with connectivity set to true | {"config":"LocalAgentConfiguration(hostname: \"node-sg-34.protonvpn.net\", features: Domain.VPNConnectionFeatures(netshield: Domain.NetShieldType.level2, vpnAccelerator: false, bouncing: Optional(\"19\"), natType: Domain.NATType.strictNAT, safeMode: nil, portForwarding: Optional(false)))"} |
| 140 | 2026-09-10T15:42:59.797Z | DEBUG | LOCAL_AGENT | NetShield level: level2, should monitor stats: true | |
| 141 | 2026-09-10T15:42:59.797Z | DEBUG | LOCAL_AGENT | Starting status request background timer | |
| 142 | 2026-09-10T15:42:59.797Z | INFO | LOCAL_AGENT:LOG | LocalAgent: Connect | |
| 143 | 2026-09-10T15:42:59.797Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Connecting | |
| 144 | 2026-09-10T15:42:59.797Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to connecting | |
| 145 | 2026-09-10T15:42:59.797Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in connecting state | |
| 146 | 2026-09-10T15:42:59.797Z | INFO | LOCAL_AGENT:LOG | LocalAgent: establishing tls connection... | |
| 147 | 2026-09-10T15:42:59.798Z | DEBUG | CONN.CONNECT | Showing state as Loading connection info because local agent not connected yet | |
| 148 | 2026-09-10T15:42:59.798Z | INFO | CONN | NAT port mapping service stopped | |
| 149 | 2026-09-10T15:42:59.798Z | DEBUG | NET | Request started | {"url":"http:\/\/protonstatus.com\/vpn_status","method":"GET"} |
| 150 | 2026-09-10T15:42:59.799Z | DEBUG | API | Disabling DoH while connected to VPN | |
| 151 | 2026-09-10T15:42:59.805Z | DEBUG | CONN.CONNECT | Showing state as Loading connection info because local agent not connected yet | |
| 152 | 2026-09-10T15:43:04.616Z | INFO | OS | applicationDidResignActive | |
| 153 | 2026-09-10T15:43:04.800Z | INFO | LOCAL_AGENT:LOG | LocalAgent connection error: (*net.OpError) dial tcp 10.2.0.1:65432: i/o timeout | |
| 154 | 2026-09-10T15:43:04.800Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to ServerUnreachable | |
| 155 | 2026-09-10T15:43:04.800Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to serverUnreachable | |
| 156 | 2026-09-10T15:43:04.800Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in serverUnreachable state | |
| 157 | 2026-09-10T15:43:04.800Z | INFO | LOCAL_AGENT:LOG | Local agent retry in 0.26488242s | |
| 158 | 2026-09-10T15:43:05.066Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Connecting | |
| 159 | 2026-09-10T15:43:05.066Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to connecting | |
| 160 | 2026-09-10T15:43:05.066Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in connecting state | |
| 161 | 2026-09-10T15:43:05.066Z | INFO | LOCAL_AGENT:LOG | LocalAgent: establishing tls connection... | |
| 162 | 2026-09-10T15:43:06.970Z | INFO | OS | applicationDidBecomeActive | |
| 163 | 2026-09-10T15:43:10.068Z | INFO | LOCAL_AGENT:LOG | LocalAgent connection error: (*net.OpError) dial tcp 10.2.0.1:65432: i/o timeout | |
| 164 | 2026-09-10T15:43:10.068Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to ServerUnreachable | |
| 165 | 2026-09-10T15:43:10.068Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to serverUnreachable | |
| 166 | 2026-09-10T15:43:10.068Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in serverUnreachable state | |
| 167 | 2026-09-10T15:43:10.068Z | INFO | LOCAL_AGENT:LOG | Local agent retry in 1.138214496s | |
| 168 | 2026-09-10T15:43:11.208Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Connecting | |
| 169 | 2026-09-10T15:43:11.209Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to connecting | |
| 170 | 2026-09-10T15:43:11.209Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in connecting state | |
| 171 | 2026-09-10T15:43:11.209Z | INFO | LOCAL_AGENT:LOG | LocalAgent: establishing tls connection... | |
| 172 | 2026-09-10T15:43:14.774Z | DEBUG | USER_CERT | Checking if vpn authentication certificate refresh is needed | |
| 173 | 2026-09-10T15:43:14.780Z | INFO | USER_CERT | Using existing vpn authentication keys | |
| 174 | 2026-09-10T15:43:14.786Z | INFO | USER_CERT | Certificate has expired or should be refreshed | {"validUntil":"2026-09-10 15:30:31 +0000","refreshTime":"2026-09-10 09:30:31 +0000"} |
| 175 | 2026-09-10T15:43:14.786Z | DEBUG | USER_CERT:NEW_CERT | Asking backend API for new vpn authentication certificate | |
| 176 | 2026-09-10T15:43:14.786Z | DEBUG | NET | Request started | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","method":"POST"} |
| 177 | 2026-09-10T15:43:16.211Z | INFO | LOCAL_AGENT:LOG | LocalAgent connection error: (*net.OpError) dial tcp 10.2.0.1:65432: i/o timeout | |
| 178 | 2026-09-10T15:43:16.211Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to ServerUnreachable | |
| 179 | 2026-09-10T15:43:16.211Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to serverUnreachable | |
| 180 | 2026-09-10T15:43:16.211Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in serverUnreachable state | |
| 181 | 2026-09-10T15:43:16.211Z | INFO | LOCAL_AGENT:LOG | Local agent retry in 4.970576467s | |
| 182 | 2026-09-10T15:43:16.397Z | INFO | OS | applicationDidResignActive | |
| 183 | 2026-09-10T15:43:21.183Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Connecting | |
| 184 | 2026-09-10T15:43:21.183Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to connecting | |
| 185 | 2026-09-10T15:43:21.183Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in connecting state | |
| 186 | 2026-09-10T15:43:21.183Z | INFO | LOCAL_AGENT:LOG | LocalAgent: establishing tls connection... | |
| 187 | 2026-09-10T15:43:24.625Z | INFO | OS | applicationDidBecomeActive | |
| 188 | 2026-09-10T15:43:26.187Z | INFO | LOCAL_AGENT:LOG | LocalAgent connection error: (*net.OpError) dial tcp 10.2.0.1:65432: i/o timeout | |
| 189 | 2026-09-10T15:43:26.187Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to ServerUnreachable | |
| 190 | 2026-09-10T15:43:26.187Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to serverUnreachable | |
| 191 | 2026-09-10T15:43:26.188Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in serverUnreachable state | |
| 192 | 2026-09-10T15:43:26.188Z | INFO | LOCAL_AGENT:LOG | Local agent retry in 22.47208219s | |
| 193 | 2026-09-10T15:43:27.634Z | DEBUG | PROTOCOL | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension | |
| 194 | 2026-09-10T15:43:27.895Z | INFO | OS | applicationDidResignActive | |
| 195 | 2026-09-10T15:43:48.660Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Connecting | |
| 196 | 2026-09-10T15:43:48.660Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to connecting | |
| 197 | 2026-09-10T15:43:48.660Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in connecting state | |
| 198 | 2026-09-10T15:43:48.661Z | INFO | LOCAL_AGENT:LOG | LocalAgent: establishing tls connection... | |
| 199 | 2026-09-10T15:43:50.605Z | INFO | OS | applicationDidBecomeActive | |
| 200 | 2026-09-10T15:43:53.662Z | INFO | LOCAL_AGENT:LOG | LocalAgent connection error: (*net.OpError) dial tcp 10.2.0.1:65432: i/o timeout | |
| 201 | 2026-09-10T15:43:53.662Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to ServerUnreachable | |
| 202 | 2026-09-10T15:43:53.662Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to serverUnreachable | |
| 203 | 2026-09-10T15:43:53.662Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in serverUnreachable state | |
| 204 | 2026-09-10T15:43:53.663Z | INFO | LOCAL_AGENT:LOG | Local agent retry in 57.415548153s | |
| 205 | 2026-09-10T15:43:53.901Z | INFO | UI | Showing alert: ReconnectOnSettingsChangeAlert | |
| 206 | 2026-09-10T15:43:55.017Z | INFO | | Submitting request <OSSystemExtensionActivationRequest: 0x6000028706c0> for ch.protonvpn.mac.WireGuard-Extension | |
| 207 | 2026-09-10T15:43:55.059Z | DEBUG | | Deinit request AEE6516E-66EE-425D-8DDC-FE163DBB2E97 for ch.protonvpn.mac.WireGuard-Extension | |
| 208 | 2026-09-10T15:43:55.059Z | DEBUG | SYSEX | Finished installation with results: [LegacyCommon.SystemExtensionType.wireGuard: Swift.Result<LegacyCommon.SystemExtensionInstallationSuccess, LegacyCommon.SystemExtensionInstallationFailure>.success(LegacyCommon.SystemExtensionInstallationSuccess.upgraded)] | |
| 209 | 2026-09-10T15:43:55.177Z | INFO | CONN.CONNECT:TRIGGER | New protocol set to wireGuard(Domain.WireGuardTransport.tls). VPN will reconnect. | |
| 210 | 2026-09-10T15:43:55.177Z | INFO | CONN.DISCONNECT | VPN disconnect started | |
| 211 | 2026-09-10T15:43:55.179Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.udp)"} |
| 212 | 2026-09-10T15:43:55.179Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 213 | 2026-09-10T15:43:55.179Z | INFO | LOCAL_AGENT:LOG | LocalAgent: closing | |
| 214 | 2026-09-10T15:43:55.179Z | INFO | LOCAL_AGENT:STATE_CHANGE | Local agent shared library state reported as changed to Disconnected | |
| 215 | 2026-09-10T15:43:55.179Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Local agent state changed to disconnected | |
| 216 | 2026-09-10T15:43:55.179Z | DEBUG | LOCAL_AGENT:STATE_CHANGE | Not checking features in disconnected state | |
| 217 | 2026-09-10T15:43:55.261Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 218 | 2026-09-10T15:43:55.618Z | INFO | SYSEX | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension | |
| 219 | 2026-09-10T15:43:55.802Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"oldState":"VPN state - Connected to: 149.50.211.169","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp))","state":"VPN state - Disconnected"} |
| 220 | 2026-09-10T15:43:55.802Z | DEBUG | LOCAL_AGENT | Disconnecting Local agent | |
| 221 | 2026-09-10T15:43:55.803Z | DEBUG | LOCAL_AGENT | Stopping status monitoring. WasMonitoring: true | |
| 222 | 2026-09-10T15:43:55.809Z | INFO | CONN | NAT port mapping service stopped | |
| 223 | 2026-09-10T15:43:55.810Z | DEBUG | API | Re-enabling DoH while disconnected from VPN | |
| 224 | 2026-09-10T15:43:56.905Z | INFO | PERSISTENCE | Selecting server | {"order":"fastest","filters":"[|country=SG, |requires:[[]],excludes:[[\"secureCore\"]], |protocols:[WireGuardTLS], |maxTier=2, |notMaintenance]","connectionRequest":"ConnectionRequest(id: 88AC17BB-3468-4E79-A18B-C44500690ABC, serverType: Standard, connectionType: CommonNetworking.ConnectionRequestType.country(\"SG\", CommonNetworking.CountryConnectionRequestType.fastest), connectionProtocol: Stealth, netShieldType: Domain.NetShieldType.level2, natType: Domain.NATType.strictNAT, safeMode: nil, portForwarding: Optional(false), profileId: nil, profileName: nil, trigger: Optional(Domain.UserInitiatedVPNChange.VPNTrigger.map))"} |
| 225 | 2026-09-10T15:43:56.912Z | DEBUG | CONN.CONNECT | Server selected: SG#238 (node-sg-34.protonvpn.net, load: 39) | |
| 226 | 2026-09-10T15:43:56.916Z | INFO | CONN | Initiating connection timeout with id: 91427588-41E6-49EC-9A01-275FD3C55EF4 | |
| 227 | 2026-09-10T15:43:56.916Z | INFO | CONN | NAT port mapping service stopped | |
| 228 | 2026-09-10T15:43:56.917Z | INFO | CONN.CONNECT | Selected ServerIp(id: "eGclHlqQkEJMlj-Hksl9G6NAobUnqkmjKU6PhOZCWSFzozSIrwYU5YoRm6E6V69CN668Odvvr_IDe4Q7Hf7fpg==", entryIp: Optional("149.50.211.169"), exitIp: "149.50.211.169", domain: "node-sg-34.protonvpn.net", status: 1, label: Optional("19"), x25519PublicKey: Optional("TrhdyC23yM5oNjMN1YCDdqrgrQZpT0ZqFBU4yU8l3D4="), protocolEntries: nil) as server ip for node-sg-34.protonvpn.net | |
| 229 | 2026-09-10T15:43:56.917Z | INFO | CONN.CONNECT | Connecting with wireGuard(Domain.WireGuardTransport.tls) to SG#238 via Optional("149.50.211.169"):[443] | |
| 230 | 2026-09-10T15:43:57.013Z | INFO | USER_CERT | Using existing vpn authentication keys | |
| 231 | 2026-09-10T15:43:57.016Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.udp)"} |
| 232 | 2026-09-10T15:43:57.016Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 233 | 2026-09-10T15:43:57.039Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: connecting, error: Error(localizedDescription: "Ignoring connecting event, wasn\'t connected before") | |
| 234 | 2026-09-10T15:43:57.209Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 235 | 2026-09-10T15:43:57.210Z | INFO | CONN.CONNECT | About to start connection process | |
| 236 | 2026-09-10T15:43:57.211Z | INFO | CONN.CONNECT | Creating connection configuration | |
| 237 | 2026-09-10T15:43:57.519Z | INFO | SYSEX | Credentials set result (wg): success | |
| 238 | 2026-09-10T15:43:57.519Z | INFO | CONN.CONNECT | Configuring connection | |
| 239 | 2026-09-10T15:43:57.529Z | INFO | CONN.CONNECT | Loading connection configuration | |
| 240 | 2026-09-10T15:43:57.529Z | INFO | CONN.CONNECT | Starting VPN tunnel | |
| 241 | 2026-09-10T15:43:57.538Z | DEBUG | CONN | Server change observer received status | {"requestId":"88AC17BB-3468-4E79-A18B-C44500690ABC","connection":"<NETunnelProviderSession: 0x600000473ed0>","status":"connecting"} |
| 242 | 2026-09-10T15:43:57.538Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connecting to: 149.50.211.169 | {"currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","state":"VPN state - Connecting to: 149.50.211.169","oldState":"VPN state - Disconnected"} |
| 243 | 2026-09-10T15:43:57.739Z | WARN | TELEMETRY | Failed to send telemetry event: ConnectionEvent(measurementGroup: "vpn.any.connection", event: Telemetry.ConnectionEvent.Event.vpnConnection(timeToConnection: 12.638815999031067), dimensions: Telemetry.ConnectionDimensions(outcome: Telemetry.ConnectionDimensions.Outcome.success, userTier: Telemetry.ConnectionDimensions.UserTier.paid, vpnStatus: Telemetry.CommonTelemetryDimensions.VPNStatus.off, vpnTrigger: Domain.UserInitiatedVPNChange.VPNTrigger.map, networkType: Telemetry.ConnectionDimensions.NetworkType.wifi, serverFeatures: ["p2p", "streaming", "ipv6"], vpnCountry: "SG", userCountry: "CN", protocol: Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp), server: "SG#238", port: "500", isp: "China Unicom", isServerFree: false)) with error: The internet connection appears to be offline., saving to storage. | |
| 244 | 2026-09-10T15:43:57.740Z | DEBUG | | Telemetry event scheduled: |
| 245 | { |
| 246 | "Values" : { |
| 247 | "time_to_connection" : 12638 |
| 248 | }, |
| 249 | "MeasurementGroup" : "vpn.any.connection", |
| 250 | "Event" : "vpn_connection", |
| 251 | "Dimensions" : { |
| 252 | "protocol" : "wireguard_udp", |
| 253 | "server_features" : "p2p,streaming,ipv6", |
| 254 | "isp" : "China Unicom", |
| 255 | "server" : "SG#238", |
| 256 | "network_type" : "wifi", |
| 257 | "user_tier" : "paid", |
| 258 | "port" : "500", |
| 259 | "vpn_country" : "SG", |
| 260 | "vpn_status" : "off", |
| 261 | "vpn_trigger" : "map", |
| 262 | "user_country" : "CN", |
| 263 | "outcome" : "success" |
| 264 | } |
| 265 | } | |
| 266 | 2026-09-10T15:43:57.740Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") | |
| 267 | 2026-09-10T15:44:14.941Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 268 | 2026-09-10T15:44:25.740Z | DEBUG | APP | Refresh timer tick | {"task":"(Function)"} |
| 269 | 2026-09-10T15:44:26.341Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 270 | 2026-09-10T15:44:26.944Z | INFO | CONN | Connection timeout finished for id: 91427588-41E6-49EC-9A01-275FD3C55EF4 | |
| 271 | 2026-09-10T15:44:26.944Z | INFO | CONN.CONNECT | Connection attempt timed out | |
| 272 | 2026-09-10T15:44:26.944Z | INFO | CONN.CONNECT | Stop preparing connection | |
| 273 | 2026-09-10T15:44:26.944Z | INFO | CONN | NAT port mapping service stopped | |
| 274 | 2026-09-10T15:44:26.948Z | INFO | CONN.DISCONNECT | VPN disconnect started | |
| 275 | 2026-09-10T15:44:26.949Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"} |
| 276 | 2026-09-10T15:44:26.949Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 277 | 2026-09-10T15:44:27.080Z | DEBUG | | Telemetry event scheduled: |
| 278 | { |
| 279 | "Values" : { |
| 280 | "session_length" : 87171 |
| 281 | }, |
| 282 | "MeasurementGroup" : "vpn.any.connection", |
| 283 | "Event" : "vpn_disconnection", |
| 284 | "Dimensions" : { |
| 285 | "outcome" : "failure", |
| 286 | "protocol" : "wireguard_udp", |
| 287 | "vpn_country" : "SG", |
| 288 | "user_tier" : "paid", |
| 289 | "network_type" : "wifi", |
| 290 | "vpn_status" : "on", |
| 291 | "user_country" : "CN", |
| 292 | "server" : "SG#238", |
| 293 | "port" : "500", |
| 294 | "isp" : "China Unicom", |
| 295 | "vpn_trigger" : "new_connection", |
| 296 | "server_features" : "p2p,streaming,ipv6" |
| 297 | } |
| 298 | } | |
| 299 | 2026-09-10T15:44:27.154Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 300 | 2026-09-10T15:44:27.167Z | DEBUG | CONN | Server change observer received status | {"status":"disconnecting","connection":"<NETunnelProviderSession: 0x600000473ed0>","requestId":"88AC17BB-3468-4E79-A18B-C44500690ABC"} |
| 301 | 2026-09-10T15:44:27.692Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnecting from: 149.50.211.169 | {"oldState":"VPN state - Connecting to: 149.50.211.169","state":"VPN state - Disconnecting from: 149.50.211.169","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))"} |
| 302 | 2026-09-10T15:44:27.693Z | INFO | CONN | NAT port mapping service stopped | |
| 303 | 2026-09-10T15:44:27.806Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnecting, error: Error(localizedDescription: "Ignoring the `disconnecting` status") | |
| 304 | 2026-09-10T15:44:30.808Z | ERROR | NET:RESPONSE | Request failed | {"error":"Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x60000289cd50 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <3FF0458C-5E95-4161-8599-289BD240F94F>.<100>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <3FF0458C-5E95-4161-8599-289BD240F94F>.<100>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=http:\/\/protonstatus.com\/vpn_status, NSErrorFailingURLKey=http:\/\/protonstatus.com\/vpn_status, _kCFStreamErrorDomainKey=4}","method":"GET","url":"http:\/\/protonstatus.com\/vpn_status"} |
| 305 | 2026-09-10T15:44:30.808Z | ERROR | UI | Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x60000289cd50 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <3FF0458C-5E95-4161-8599-289BD240F94F>.<100>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 306 | "LocalDataTask <3FF0458C-5E95-4161-8599-289BD240F94F>.<100>" |
| 307 | ), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=http://protonstatus.com/vpn_status, NSErrorFailingURLKey=http://protonstatus.com/vpn_status, _kCFStreamErrorDomainKey=4} | |
| 308 | 2026-09-10T15:44:35.838Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 309 | 2026-09-10T15:44:35.838Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 310 | 2026-09-10T15:44:35.838Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 311 | 2026-09-10T15:44:35.854Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 312 | 2026-09-10T15:44:35.858Z | ERROR | NET:RESPONSE | Request failed | {"error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, NSUnderlyingError=0x6000028eb5a0 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028eb570 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=4}}}","method":"POST","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate"} |
| 313 | 2026-09-10T15:44:35.858Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, NSUnderlyingError=0x6000028eb5a0 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028eb570 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 314 | "LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>" |
| 315 | ), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}} | |
| 316 | 2026-09-10T15:44:35.858Z | INFO | USER_CERT | Cert refresh failed due to network error Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, NSUnderlyingError=0x6000028eb5a0 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x6000028eb570 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 317 | "LocalDataTask <0B0B7EF2-6FB5-48C4-84D5-0A6687CB4CEC>.<55>" |
| 318 | ), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}}. Retrying in 11 seconds. | |
| 319 | 2026-09-10T15:44:46.357Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 320 | 2026-09-10T15:44:46.357Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 321 | 2026-09-10T15:44:46.357Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 322 | 2026-09-10T15:44:46.372Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 323 | 2026-09-10T15:44:46.375Z | WARN | TELEMETRY | Failed to send telemetry event: ConnectionEvent(measurementGroup: "vpn.any.connection", event: Telemetry.ConnectionEvent.Event.vpnConnection(timeToConnection: 68.66508400440216), dimensions: Telemetry.ConnectionDimensions(outcome: Telemetry.ConnectionDimensions.Outcome.success, userTier: Telemetry.ConnectionDimensions.UserTier.paid, vpnStatus: Telemetry.CommonTelemetryDimensions.VPNStatus.off, vpnTrigger: Domain.UserInitiatedVPNChange.VPNTrigger.auto, networkType: Telemetry.ConnectionDimensions.NetworkType.wifi, serverFeatures: ["p2p", "streaming", "ipv6"], vpnCountry: "SG", userCountry: "CN", protocol: Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.udp), server: "SG#238", port: "500", isp: "China Unicom", isServerFree: false)) with error: The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, saving to storage. | |
| 324 | 2026-09-10T15:44:46.376Z | DEBUG | | Telemetry event scheduled: |
| 325 | { |
| 326 | "MeasurementGroup" : "vpn.any.connection", |
| 327 | "Values" : { |
| 328 | "time_to_connection" : 68665 |
| 329 | }, |
| 330 | "Event" : "vpn_connection", |
| 331 | "Dimensions" : { |
| 332 | "server" : "SG#238", |
| 333 | "outcome" : "success", |
| 334 | "vpn_trigger" : "auto", |
| 335 | "user_country" : "CN", |
| 336 | "server_features" : "p2p,streaming,ipv6", |
| 337 | "user_tier" : "paid", |
| 338 | "vpn_country" : "SG", |
| 339 | "protocol" : "wireguard_udp", |
| 340 | "vpn_status" : "off", |
| 341 | "port" : "500", |
| 342 | "isp" : "China Unicom", |
| 343 | "network_type" : "wifi" |
| 344 | } |
| 345 | } | |
| 346 | 2026-09-10T15:44:46.376Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") | |
| 347 | 2026-09-10T15:44:46.863Z | DEBUG | USER_CERT | Checking if vpn authentication certificate refresh is needed | |
| 348 | 2026-09-10T15:44:46.868Z | INFO | USER_CERT | Using existing vpn authentication keys | |
| 349 | 2026-09-10T15:44:46.871Z | INFO | USER_CERT | Certificate has expired or should be refreshed | {"validUntil":"2026-09-10 15:30:31 +0000","refreshTime":"2026-09-10 09:30:31 +0000"} |
| 350 | 2026-09-10T15:44:46.871Z | DEBUG | USER_CERT:NEW_CERT | Asking backend API for new vpn authentication certificate | |
| 351 | 2026-09-10T15:44:46.871Z | DEBUG | NET | Request started | {"method":"POST","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate"} |
| 352 | 2026-09-10T15:44:47.178Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"state":"VPN state - Disconnected","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","oldState":"VPN state - Disconnecting from: 149.50.211.169"} |
| 353 | 2026-09-10T15:44:47.179Z | INFO | CONN | NAT port mapping service stopped | |
| 354 | 2026-09-10T15:44:47.191Z | DEBUG | CONN | Server change observer received status | {"requestId":"88AC17BB-3468-4E79-A18B-C44500690ABC","connection":"<NETunnelProviderSession: 0x600000473ed0>","status":"disconnected"} |
| 355 | 2026-09-10T15:44:47.290Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnected, error: Error(localizedDescription: "Ignoring disconnected event, was previously disconnected") | |
| 356 | 2026-09-10T15:44:51.385Z | INFO | OS | applicationDidResignActive | |
| 357 | 2026-09-10T15:44:55.983Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 358 | 2026-09-10T15:44:55.984Z | INFO | OS | applicationDidBecomeActive | |
| 359 | 2026-09-10T15:44:55.987Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 360 | 2026-09-10T15:44:57.594Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 361 | 2026-09-10T15:44:57.599Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 362 | 2026-09-10T15:44:59.502Z | INFO | PERSISTENCE | Selecting server | {"connectionRequest":"ConnectionRequest(id: 61745839-4EBE-45BF-8630-64294FE32208, serverType: Standard, connectionType: CommonNetworking.ConnectionRequestType.country(\"VN\", CommonNetworking.CountryConnectionRequestType.fastest), connectionProtocol: Smart, netShieldType: Domain.NetShieldType.off, natType: Domain.NATType.strictNAT, safeMode: nil, portForwarding: nil, profileId: nil, profileName: nil, trigger: nil)","order":"fastest","filters":"[|country=VN, |requires:[[]],excludes:[[\"secureCore\"]], |protocols:[WireGuardTLS], |maxTier=2, |notMaintenance]"} |
| 363 | 2026-09-10T15:44:59.504Z | DEBUG | CONN.CONNECT | Server selected: VN#3 (node-vn-01.protonvpn.net, load: 35) | |
| 364 | 2026-09-10T15:44:59.513Z | INFO | CONN | Initiating connection timeout with id: 89D3B35D-AABA-409E-BAEA-E5A5EE91FA27 | |
| 365 | 2026-09-10T15:44:59.513Z | INFO | CONN | NAT port mapping service stopped | |
| 366 | 2026-09-10T15:44:59.514Z | INFO | CONN.CONNECT | Selected ServerIp(id: "xCF5_OX-sDZjSqPb8l9vRSURgZfN7dgCYEYKc1_SZxYuZ2PtoR024y81ogDtdzx9VjWHfoph3iyKTg3aPyyDIw==", entryIp: Optional("188.214.152.226"), exitIp: "188.214.152.226", domain: "node-vn-01.protonvpn.net", status: 1, label: Optional("2"), x25519PublicKey: Optional("NfKOMtk2fuDycbQXv36yk5mfdgDA8/8SN6amCdFrKxQ="), protocolEntries: nil) as server ip for node-vn-01.protonvpn.net | |
| 367 | 2026-09-10T15:44:59.514Z | INFO | CONN.CONNECT | Connecting with wireGuard(Domain.WireGuardTransport.tls) to VN#3 via Optional("188.214.152.226"):[443] | |
| 368 | 2026-09-10T15:44:59.601Z | INFO | USER_CERT | Using existing vpn authentication keys | |
| 369 | 2026-09-10T15:44:59.603Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"} |
| 370 | 2026-09-10T15:44:59.603Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 371 | 2026-09-10T15:44:59.626Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: connecting, error: Error(localizedDescription: "Ignoring connecting event, wasn\'t connected before") | |
| 372 | 2026-09-10T15:44:59.772Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 373 | 2026-09-10T15:44:59.773Z | INFO | CONN.CONNECT | About to start connection process | |
| 374 | 2026-09-10T15:44:59.773Z | INFO | CONN.CONNECT | Creating connection configuration | |
| 375 | 2026-09-10T15:44:59.982Z | DEBUG | PROTOCOL | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension | |
| 376 | 2026-09-10T15:45:00.003Z | INFO | SYSEX | Credentials set result (wg): success | |
| 377 | 2026-09-10T15:45:00.003Z | INFO | CONN.CONNECT | Configuring connection | |
| 378 | 2026-09-10T15:45:00.014Z | INFO | CONN.CONNECT | Loading connection configuration | |
| 379 | 2026-09-10T15:45:00.014Z | INFO | CONN.CONNECT | Starting VPN tunnel | |
| 380 | 2026-09-10T15:45:00.021Z | DEBUG | CONN | Server change observer received status | {"connection":"<NETunnelProviderSession: 0x6000004a4f00>","status":"connecting","requestId":"7920E163-28F4-42EE-82EC-49B0ADC68514"} |
| 381 | 2026-09-10T15:45:00.021Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connecting to: 188.214.152.226 | {"state":"VPN state - Connecting to: 188.214.152.226","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","oldState":"VPN state - Disconnected"} |
| 382 | 2026-09-10T15:45:00.133Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 383 | 2026-09-10T15:45:00.133Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 384 | 2026-09-10T15:45:00.133Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 385 | 2026-09-10T15:45:00.140Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 386 | 2026-09-10T15:45:00.185Z | ERROR | NET:RESPONSE | Request failed | {"method":"POST","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","error":"Error Domain=NSURLErrorDomain Code=-1009 \"The internet connection appears to be offline.\" UserInfo={_kCFStreamErrorCodeKey=50, NSUnderlyingError=0x600002876400 {Error Domain=kCFErrorDomainCFNetwork Code=-1009 \"(null)\" UserInfo={_kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=50, _NSURLErrorVPNInactiveFailureKey=true, _NSURLErrorNWPathKey=satisfiable (Network Agent [domain: NetworkExtension, type: VPN, description: VPN: ProtonVPN, uuid: B50159A5-A949-4EBF-B5DC-4BA4C6BB5386, flags: d] VPN is inactive), interface: en0[802.11], ipv4, dns, uses cell}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>\"\n), NSLocalizedDescription=The internet connection appears to be offline., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=1}"} |
| 387 | 2026-09-10T15:45:00.185Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=NSURLErrorDomain Code=-1009 "The internet connection appears to be offline." UserInfo={_kCFStreamErrorCodeKey=50, NSUnderlyingError=0x600002876400 {Error Domain=kCFErrorDomainCFNetwork Code=-1009 "(null)" UserInfo={_kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=50, _NSURLErrorVPNInactiveFailureKey=true, _NSURLErrorNWPathKey=satisfiable (Network Agent [domain: NetworkExtension, type: VPN, description: VPN: ProtonVPN, uuid: B50159A5-A949-4EBF-B5DC-4BA4C6BB5386, flags: d] VPN is inactive), interface: en0[802.11], ipv4, dns, uses cell}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 388 | "LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>" |
| 389 | ), NSLocalizedDescription=The internet connection appears to be offline., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=1} | |
| 390 | 2026-09-10T15:45:00.185Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"} |
| 391 | 2026-09-10T15:45:00.185Z | ERROR | APP | RefreshAccount error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"} |
| 392 | 2026-09-10T15:45:00.185Z | ERROR | USER_CERT | Failed to refresh certificate through API: Error Domain=NSURLErrorDomain Code=-1009 "The internet connection appears to be offline." UserInfo={_kCFStreamErrorCodeKey=50, NSUnderlyingError=0x600002876400 {Error Domain=kCFErrorDomainCFNetwork Code=-1009 "(null)" UserInfo={_kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=50, _NSURLErrorVPNInactiveFailureKey=true, _NSURLErrorNWPathKey=satisfiable (Network Agent [domain: NetworkExtension, type: VPN, description: VPN: ProtonVPN, uuid: B50159A5-A949-4EBF-B5DC-4BA4C6BB5386, flags: d] VPN is inactive), interface: en0[802.11], ipv4, dns, uses cell}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 393 | "LocalDataTask <CC1DB9B0-7809-4CA2-AFD0-056B3E98BE26>.<61>" |
| 394 | ), NSLocalizedDescription=The internet connection appears to be offline., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=1}. Will retry in 80.0 seconds. | |
| 395 | 2026-09-10T15:45:00.185Z | INFO | USER_CERT | Certificate refresh timer invalidated | |
| 396 | 2026-09-10T15:45:00.185Z | INFO | USER_CERT | Timer setup for 2026-09-10 15:46:20 +0000 | |
| 397 | 2026-09-10T15:45:06.659Z | INFO | UI | Showing alert: ReconnectOnSmartProtocolChangeAlert | |
| 398 | 2026-09-10T15:45:07.746Z | INFO | | Submitting request <OSSystemExtensionActivationRequest: 0x600002a3aa00> for ch.protonvpn.mac.WireGuard-Extension | |
| 399 | 2026-09-10T15:45:07.782Z | DEBUG | | Deinit request 24BA2436-D17D-441F-8AA9-B12F189602B1 for ch.protonvpn.mac.WireGuard-Extension | |
| 400 | 2026-09-10T15:45:07.782Z | DEBUG | SYSEX | Finished installation with results: [LegacyCommon.SystemExtensionType.wireGuard: Swift.Result<LegacyCommon.SystemExtensionInstallationSuccess, LegacyCommon.SystemExtensionInstallationFailure>.success(LegacyCommon.SystemExtensionInstallationSuccess.upgraded)] | |
| 401 | 2026-09-10T15:45:07.787Z | INFO | CONN.CONNECT:TRIGGER | Connection will restart after VPN feature change | {"feature":"smartProtocol"} |
| 402 | 2026-09-10T15:45:07.787Z | INFO | CONN.DISCONNECT | VPN disconnect started | |
| 403 | 2026-09-10T15:45:07.787Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"} |
| 404 | 2026-09-10T15:45:07.787Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 405 | 2026-09-10T15:45:07.806Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 406 | 2026-09-10T15:45:07.821Z | DEBUG | CONN | Server change observer received status | {"connection":"<NETunnelProviderSession: 0x6000004a4f00>","requestId":"7920E163-28F4-42EE-82EC-49B0ADC68514","status":"disconnecting"} |
| 407 | 2026-09-10T15:45:08.351Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnecting from: 188.214.152.226 | {"state":"VPN state - Disconnecting from: 188.214.152.226","oldState":"VPN state - Connecting to: 188.214.152.226","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))"} |
| 408 | 2026-09-10T15:45:08.351Z | INFO | CONN.CONNECT | Stop preparing connection | |
| 409 | 2026-09-10T15:45:08.355Z | INFO | CONN.DISCONNECT | VPN disconnect started | |
| 410 | 2026-09-10T15:45:08.355Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"} |
| 411 | 2026-09-10T15:45:08.355Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 412 | 2026-09-10T15:45:08.559Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 413 | 2026-09-10T15:45:16.565Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 414 | 2026-09-10T15:45:16.566Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 415 | 2026-09-10T15:45:16.566Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 416 | 2026-09-10T15:45:16.582Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 417 | 2026-09-10T15:45:16.584Z | ERROR | API:RESPONSE | Couldn't parse user's ip location response | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"} |
| 418 | 2026-09-10T15:45:16.585Z | DEBUG | NET | Request started | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/logicals?WithState=1&WithTranslations&WithEntriesForProtocols=IKEv2,WireGuardUDP,WireGuardTCP,WireGuardTLS","condition":"Optional(CommonNetworking.RequestCondition.ifModifiedSince(date: \"Mon, 07 Sep 2026 16:44:14 GMT\"))","method":"GET"} |
| 419 | 2026-09-10T15:45:17.623Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 420 | 2026-09-10T15:45:17.623Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 421 | 2026-09-10T15:45:17.623Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 422 | 2026-09-10T15:45:17.624Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 423 | 2026-09-10T15:45:17.624Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 424 | 2026-09-10T15:45:17.624Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 425 | 2026-09-10T15:45:17.640Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 426 | 2026-09-10T15:45:17.652Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 427 | 2026-09-10T15:45:17.660Z | WARN | TELEMETRY | Failed to send scheduled telemetry events, leaving in storage: ["MeasurementGroup": "vpn.any.connection", "EventInfo": [["MeasurementGroup": vpn.any.connection, "Dimensions": { |
| 428 | isp = "China Unicom"; |
| 429 | "network_type" = wifi; |
| 430 | outcome = success; |
| 431 | port = 500; |
| 432 | protocol = "wireguard_udp"; |
| 433 | server = "SG#238"; |
| 434 | "server_features" = "p2p,streaming,ipv6"; |
| 435 | "user_country" = CN; |
| 436 | "user_tier" = paid; |
| 437 | "vpn_country" = SG; |
| 438 | "vpn_status" = off; |
| 439 | "vpn_trigger" = map; |
| 440 | }, "Event": vpn_connection, "Values": { |
| 441 | "time_to_connection" = 12638; |
| 442 | }], ["MeasurementGroup": vpn.any.connection, "Values": { |
| 443 | "session_length" = 87171; |
| 444 | }, "Event": vpn_disconnection, "Dimensions": { |
| 445 | isp = "China Unicom"; |
| 446 | "network_type" = wifi; |
| 447 | outcome = failure; |
| 448 | port = 500; |
| 449 | protocol = "wireguard_udp"; |
| 450 | server = "SG#238"; |
| 451 | "server_features" = "p2p,streaming,ipv6"; |
| 452 | "user_country" = CN; |
| 453 | "user_tier" = paid; |
| 454 | "vpn_country" = SG; |
| 455 | "vpn_status" = on; |
| 456 | "vpn_trigger" = "new_connection"; |
| 457 | }]]] | |
| 458 | 2026-09-10T15:45:17.661Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") | |
| 459 | 2026-09-10T15:45:27.834Z | DEBUG | CONN | Server change observer received status | {"connection":"<NETunnelProviderSession: 0x6000004a4f00>","status":"disconnected","requestId":"7920E163-28F4-42EE-82EC-49B0ADC68514"} |
| 460 | 2026-09-10T15:45:27.834Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"state":"VPN state - Disconnected","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","oldState":"VPN state - Disconnecting from: 188.214.152.226"} |
| 461 | 2026-09-10T15:45:27.834Z | INFO | CONN | NAT port mapping service stopped | |
| 462 | 2026-09-10T15:45:27.937Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnected, error: Error(localizedDescription: "Ignoring disconnected event, was previously disconnected") | |
| 463 | 2026-09-10T15:45:36.304Z | INFO | OS | applicationDidResignActive | |
| 464 | 2026-09-10T15:45:36.804Z | INFO | OS | applicationDidBecomeActive | |
| 465 | 2026-09-10T15:45:37.913Z | DEBUG | CONN.CONNECT:TRIGGER | Connect requested by selecting Quick connect | |
| 466 | 2026-09-10T15:45:37.913Z | INFO | CONN.CONNECT | Using default QC request, user has no QC profile set | |
| 467 | 2026-09-10T15:45:37.917Z | INFO | PERSISTENCE | Selecting server | {"connectionRequest":"ConnectionRequest(id: 7C500BEA-2AD5-4F21-95E2-FBB2E39A19F7, serverType: Standard, connectionType: CommonNetworking.ConnectionRequestType.fastest, connectionProtocol: Smart, netShieldType: Domain.NetShieldType.level2, natType: Domain.NATType.strictNAT, safeMode: nil, portForwarding: Optional(false), profileId: nil, profileName: nil, trigger: Optional(Domain.UserInitiatedVPNChange.VPNTrigger.quick))","filters":"[|requires:[[]],excludes:[[\"secureCore\"]], |protocols:[WireGuardUDP, WireGuardTCP, WireGuardTLS], |maxTier=2, |notMaintenance]","order":"fastestGatewaysLast"} |
| 468 | 2026-09-10T15:45:37.995Z | DEBUG | CONN.CONNECT | Server selected: CN#36 (node-cn-01.protonvpn.net, load: 6) | |
| 469 | 2026-09-10T15:45:38.001Z | INFO | CONN | Initiating connection timeout with id: 05B76C93-3F5D-451E-8CFB-AE378F2F4683 | |
| 470 | 2026-09-10T15:45:38.001Z | INFO | CONN | NAT port mapping service stopped | |
| 471 | 2026-09-10T15:45:38.002Z | INFO | CONN.CONNECT | Selected ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) as server ip for node-cn-01.protonvpn.net | |
| 472 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Wireguard will be used for Smart Protocol checks | |
| 473 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Wireguard TCP will be used for Smart Protocol checks | |
| 474 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Wireguard TLS will be used for Smart Protocol checks | |
| 475 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Determining best protocol for ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) | |
| 476 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking Stealth availability for ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) | |
| 477 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard (TCP) availability for ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) | |
| 478 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) | |
| 479 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 1224 | |
| 480 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 4500 | |
| 481 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 443 | |
| 482 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 51820 | |
| 483 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 500 | |
| 484 | 2026-09-10T15:45:38.002Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 88 | |
| 485 | 2026-09-10T15:45:38.087Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: connecting, error: Error(localizedDescription: "Ignoring connecting event, wasn\'t connected before") | |
| 486 | 2026-09-10T15:45:38.422Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 487 | 2026-09-10T15:45:43.005Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 500 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:59522->135.136.62.2:500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:59522->135.136.62.2:500: i/o timeout}) | |
| 488 | 2026-09-10T15:45:43.004Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 443 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:58363->135.136.62.2:443: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:58363->135.136.62.2:443: i/o timeout}) | |
| 489 | 2026-09-10T15:45:43.004Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 88 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:55678->135.136.62.2:88: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:55678->135.136.62.2:88: i/o timeout}) | |
| 490 | 2026-09-10T15:45:43.005Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 1224 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:54162->135.136.62.2:1224: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:54162->135.136.62.2:1224: i/o timeout}) | |
| 491 | 2026-09-10T15:45:43.005Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 4500 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:63728->135.136.62.2:4500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:63728->135.136.62.2:4500: i/o timeout}) | |
| 492 | 2026-09-10T15:45:43.005Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 51820 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:57834->135.136.62.2:51820: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:57834->135.136.62.2:51820: i/o timeout}) | |
| 493 | 2026-09-10T15:45:44.069Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) | |
| 494 | 2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 51820 | |
| 495 | 2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 443 | |
| 496 | 2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 500 | |
| 497 | 2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 4500 | |
| 498 | 2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 88 | |
| 499 | 2026-09-10T15:45:44.070Z | DEBUG | CONN.CONNECT:SCAN | Checking WireGuard availability for 135.136.62.2 on port 1224 | |
| 500 | 2026-09-10T15:45:47.005Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 501 | 2026-09-10T15:45:47.697Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 502 | 2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 500 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:50393->135.136.62.2:500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:50393->135.136.62.2:500: i/o timeout}) | |
| 503 | 2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 443 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:52621->135.136.62.2:443: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:52621->135.136.62.2:443: i/o timeout}) | |
| 504 | 2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 1224 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:60799->135.136.62.2:1224: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:60799->135.136.62.2:1224: i/o timeout}) | |
| 505 | 2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 88 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:63345->135.136.62.2:88: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:63345->135.136.62.2:88: i/o timeout}) | |
| 506 | 2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 4500 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:53790->135.136.62.2:4500: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:53790->135.136.62.2:4500: i/o timeout}) | |
| 507 | 2026-09-10T15:45:49.072Z | ERROR | CONN.CONNECT:SCAN | WireGuard NOT available for 135.136.62.2 on port 51820 (Error: Error Domain=go Code=1 "read udp 192.168.71.72:55242->135.136.62.2:51820: i/o timeout" UserInfo={NSLocalizedDescription=read udp 192.168.71.72:55242->135.136.62.2:51820: i/o timeout}) | |
| 508 | 2026-09-10T15:45:49.073Z | DEBUG | CONN.CONNECT:SCAN | Best protocol for 135.136.62.2 is wireGuard(Domain.WireGuardTransport.tls) with ports [443] | |
| 509 | 2026-09-10T15:45:49.073Z | INFO | CONN.CONNECT | Connecting with wireGuard(Domain.WireGuardTransport.tls) to CN#36 via Optional("135.136.62.2"):[443] | |
| 510 | 2026-09-10T15:45:49.077Z | INFO | USER_CERT | Using existing vpn authentication keys | |
| 511 | 2026-09-10T15:45:49.084Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"} |
| 512 | 2026-09-10T15:45:49.084Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 513 | 2026-09-10T15:45:49.191Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 514 | 2026-09-10T15:45:49.194Z | INFO | CONN.CONNECT | About to start connection process | |
| 515 | 2026-09-10T15:45:49.194Z | INFO | CONN.CONNECT | Creating connection configuration | |
| 516 | 2026-09-10T15:45:49.401Z | INFO | SYSEX | Credentials set result (wg): success | |
| 517 | 2026-09-10T15:45:49.401Z | INFO | CONN.CONNECT | Configuring connection | |
| 518 | 2026-09-10T15:45:49.409Z | INFO | CONN.CONNECT | Loading connection configuration | |
| 519 | 2026-09-10T15:45:49.410Z | INFO | CONN.CONNECT | Starting VPN tunnel | |
| 520 | 2026-09-10T15:45:49.417Z | DEBUG | CONN | Server change observer received status | {"requestId":"7C500BEA-2AD5-4F21-95E2-FBB2E39A19F7","status":"connecting","connection":"<NETunnelProviderSession: 0x60000041b250>"} |
| 521 | 2026-09-10T15:45:49.417Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connecting to: 135.136.62.2 | {"currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","oldState":"VPN state - Disconnected","state":"VPN state - Connecting to: 135.136.62.2"} |
| 522 | 2026-09-10T15:45:49.560Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 523 | 2026-09-10T15:45:49.560Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 524 | 2026-09-10T15:45:49.560Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 525 | 2026-09-10T15:45:49.567Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 526 | 2026-09-10T15:46:07.406Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 527 | 2026-09-10T15:46:07.406Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 528 | 2026-09-10T15:46:07.406Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 529 | 2026-09-10T15:46:07.423Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 530 | 2026-09-10T15:46:07.427Z | ERROR | NET:RESPONSE | Request failed | {"code":"-1","error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSUnderlyingError=0x600002850990 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002852fd0 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <275389D6-FB96-42C8-AA07-98E369727C1C>.<63>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <275389D6-FB96-42C8-AA07-98E369727C1C>.<63>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/logicals?WithState=1&WithTranslations&WithEntriesForProtocols=IKEv2,WireGuardUDP,WireGuardTCP,WireGuardTLS, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/logicals?WithState=1&WithTranslations&WithEntriesForProtocols=IKEv2,WireGuardUDP,WireGuardTCP,WireGuardTLS, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/logicals?WithState=1&WithTranslations&WithEntriesForProtocols=IKEv2,WireGuardUDP,WireGuardTCP,WireGuardTLS","method":"GET"} |
| 531 | 2026-09-10T15:46:07.427Z | ERROR | API | Failed to refresh server information | {"error":"CommonVpnErrorDomain 0x4650454c"} |
| 532 | 2026-09-10T15:46:07.984Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 533 | 2026-09-10T15:46:07.984Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 534 | 2026-09-10T15:46:07.984Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 535 | 2026-09-10T15:46:08.000Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 536 | 2026-09-10T15:46:08.004Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"} |
| 537 | 2026-09-10T15:46:08.083Z | INFO | CONN | Connection timeout finished for id: 05B76C93-3F5D-451E-8CFB-AE378F2F4683 | |
| 538 | 2026-09-10T15:46:08.083Z | INFO | CONN.CONNECT | Connection attempt timed out | |
| 539 | 2026-09-10T15:46:08.083Z | INFO | CONN.CONNECT | Stop preparing connection | |
| 540 | 2026-09-10T15:46:08.083Z | INFO | CONN | NAT port mapping service stopped | |
| 541 | 2026-09-10T15:46:08.086Z | INFO | CONN.DISCONNECT | VPN disconnect started | |
| 542 | 2026-09-10T15:46:08.087Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"} |
| 543 | 2026-09-10T15:46:08.087Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 544 | 2026-09-10T15:46:08.216Z | DEBUG | | Telemetry event scheduled: |
| 545 | { |
| 546 | "Dimensions" : { |
| 547 | "user_tier" : "paid", |
| 548 | "vpn_country" : "CN", |
| 549 | "vpn_trigger" : "quick", |
| 550 | "network_type" : "wifi", |
| 551 | "user_country" : "CN", |
| 552 | "server" : "CN#36", |
| 553 | "port" : "443", |
| 554 | "protocol" : "wireguard_tls", |
| 555 | "isp" : "China Unicom", |
| 556 | "outcome" : "failure", |
| 557 | "server_features" : "p2p,streaming,ipv6", |
| 558 | "vpn_status" : "off" |
| 559 | }, |
| 560 | "Values" : { |
| 561 | "time_to_connection" : 30128 |
| 562 | }, |
| 563 | "Event" : "vpn_connection", |
| 564 | "MeasurementGroup" : "vpn.any.connection" |
| 565 | } | |
| 566 | 2026-09-10T15:46:08.288Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 567 | 2026-09-10T15:46:08.300Z | DEBUG | CONN | Server change observer received status | {"status":"disconnecting","requestId":"7C500BEA-2AD5-4F21-95E2-FBB2E39A19F7","connection":"<NETunnelProviderSession: 0x60000041b250>"} |
| 568 | 2026-09-10T15:46:08.825Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnecting from: 135.136.62.2 | {"state":"VPN state - Disconnecting from: 135.136.62.2","oldState":"VPN state - Connecting to: 135.136.62.2","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))"} |
| 569 | 2026-09-10T15:46:08.825Z | INFO | CONN | NAT port mapping service stopped | |
| 570 | 2026-09-10T15:46:08.935Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnecting, error: Error(localizedDescription: "Ignoring the `disconnecting` status") | |
| 571 | 2026-09-10T15:46:11.160Z | INFO | CONN | NAT port mapping service stopped | |
| 572 | 2026-09-10T15:46:11.161Z | INFO | CONN.DISCONNECT | VPN disconnect started | |
| 573 | 2026-09-10T15:46:11.162Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"} |
| 574 | 2026-09-10T15:46:11.162Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 575 | 2026-09-10T15:46:11.353Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 576 | 2026-09-10T15:46:20.188Z | DEBUG | USER_CERT | Checking if vpn authentication certificate refresh is needed | |
| 577 | 2026-09-10T15:46:20.189Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 578 | 2026-09-10T15:46:20.191Z | INFO | USER_CERT | Using existing vpn authentication keys | |
| 579 | 2026-09-10T15:46:20.193Z | INFO | USER_CERT | Certificate has expired or should be refreshed | {"refreshTime":"2026-09-10 09:30:31 +0000","validUntil":"2026-09-10 15:30:31 +0000"} |
| 580 | 2026-09-10T15:46:20.193Z | DEBUG | USER_CERT:NEW_CERT | Asking backend API for new vpn authentication certificate | |
| 581 | 2026-09-10T15:46:20.194Z | DEBUG | NET | Request started | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","method":"POST"} |
| 582 | 2026-09-10T15:46:28.319Z | DEBUG | CONN | Server change observer received status | {"status":"disconnected","connection":"<NETunnelProviderSession: 0x60000041b250>","requestId":"7C500BEA-2AD5-4F21-95E2-FBB2E39A19F7"} |
| 583 | 2026-09-10T15:46:28.319Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"oldState":"VPN state - Disconnecting from: 135.136.62.2","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","state":"VPN state - Disconnected"} |
| 584 | 2026-09-10T15:46:33.034Z | INFO | | Submitting request <OSSystemExtensionActivationRequest: 0x600002b80de0> for ch.protonvpn.mac.WireGuard-Extension | |
| 585 | 2026-09-10T15:46:33.070Z | DEBUG | | Deinit request E5FC31DF-4874-451E-845C-C63AE4788AFD for ch.protonvpn.mac.WireGuard-Extension | |
| 586 | 2026-09-10T15:46:33.070Z | DEBUG | SYSEX | Finished installation with results: [LegacyCommon.SystemExtensionType.wireGuard: Swift.Result<LegacyCommon.SystemExtensionInstallationSuccess, LegacyCommon.SystemExtensionInstallationFailure>.success(LegacyCommon.SystemExtensionInstallationSuccess.upgraded)] | |
| 587 | 2026-09-10T15:46:34.417Z | DEBUG | CONN.CONNECT:TRIGGER | Connect requested by selecting Quick connect | |
| 588 | 2026-09-10T15:46:34.418Z | INFO | CONN.CONNECT | Using default QC request, user has no QC profile set | |
| 589 | 2026-09-10T15:46:34.421Z | INFO | PERSISTENCE | Selecting server | {"connectionRequest":"ConnectionRequest(id: 3F65454A-3673-4FDD-A5B9-5BA2E77ABC84, serverType: Standard, connectionType: CommonNetworking.ConnectionRequestType.fastest, connectionProtocol: Stealth, netShieldType: Domain.NetShieldType.level2, natType: Domain.NATType.strictNAT, safeMode: nil, portForwarding: Optional(false), profileId: nil, profileName: nil, trigger: Optional(Domain.UserInitiatedVPNChange.VPNTrigger.quick))","filters":"[|requires:[[]],excludes:[[\"secureCore\"]], |protocols:[WireGuardTLS], |maxTier=2, |notMaintenance]","order":"fastestGatewaysLast"} |
| 590 | 2026-09-10T15:46:34.506Z | DEBUG | CONN.CONNECT | Server selected: CN#36 (node-cn-01.protonvpn.net, load: 6) | |
| 591 | 2026-09-10T15:46:34.512Z | INFO | CONN | Initiating connection timeout with id: 80610B56-EAAE-4E2A-B50F-6F17E83B668F | |
| 592 | 2026-09-10T15:46:34.512Z | INFO | CONN | NAT port mapping service stopped | |
| 593 | 2026-09-10T15:46:34.513Z | INFO | CONN.CONNECT | Selected ServerIp(id: "H0upgAN4duNJqcoCx91H2VpdbtBLCuYf693bQfKS3TFtilDtTZKI3CqMoAasqYCJNRHY1avV6f0PBRXLICkxPA==", entryIp: Optional("135.136.62.2"), exitIp: "135.136.62.2", domain: "node-cn-01.protonvpn.net", status: 1, label: Optional("35"), x25519PublicKey: Optional("rE6K4G80By8v88VXjn+6+7YCpxzR+RG/9/II5Q7iRgE="), protocolEntries: nil) as server ip for node-cn-01.protonvpn.net | |
| 594 | 2026-09-10T15:46:34.513Z | INFO | CONN.CONNECT | Connecting with wireGuard(Domain.WireGuardTransport.tls) to CN#36 via Optional("135.136.62.2"):[443] | |
| 595 | 2026-09-10T15:46:34.584Z | INFO | USER_CERT | Using existing vpn authentication keys | |
| 596 | 2026-09-10T15:46:34.588Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"} |
| 597 | 2026-09-10T15:46:34.588Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 598 | 2026-09-10T15:46:34.608Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: connecting, error: Error(localizedDescription: "Ignoring connecting event, wasn\'t connected before") | |
| 599 | 2026-09-10T15:46:34.754Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 600 | 2026-09-10T15:46:34.773Z | INFO | CONN.CONNECT | About to start connection process | |
| 601 | 2026-09-10T15:46:34.773Z | INFO | CONN.CONNECT | Creating connection configuration | |
| 602 | 2026-09-10T15:46:34.967Z | DEBUG | PROTOCOL | XPC connection interrupted for mach service J6S6Q257EK.group.ch.protonvpn.mac.WireGuard-Extension | |
| 603 | 2026-09-10T15:46:34.987Z | INFO | SYSEX | Credentials set result (wg): success | |
| 604 | 2026-09-10T15:46:34.987Z | INFO | CONN.CONNECT | Configuring connection | |
| 605 | 2026-09-10T15:46:34.997Z | INFO | CONN.CONNECT | Loading connection configuration | |
| 606 | 2026-09-10T15:46:34.997Z | INFO | CONN.CONNECT | Starting VPN tunnel | |
| 607 | 2026-09-10T15:46:35.003Z | DEBUG | CONN | Server change observer received status | {"requestId":"3F65454A-3673-4FDD-A5B9-5BA2E77ABC84","connection":"<NETunnelProviderSession: 0x6000004eaee0>","status":"connecting"} |
| 608 | 2026-09-10T15:46:35.003Z | INFO | CONN:CHANGE | VPN update state to VPN state - Connecting to: 135.136.62.2 | {"state":"VPN state - Connecting to: 135.136.62.2","oldState":"VPN state - Disconnected","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))"} |
| 609 | 2026-09-10T15:46:35.131Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 610 | 2026-09-10T15:46:35.131Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 611 | 2026-09-10T15:46:35.131Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 612 | 2026-09-10T15:46:35.138Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 613 | 2026-09-10T15:46:35.152Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"} |
| 614 | 2026-09-10T15:46:38.108Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 615 | 2026-09-10T15:46:38.705Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 616 | 2026-09-10T15:46:41.705Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 617 | 2026-09-10T15:46:45.928Z | INFO | OS | applicationDidResignActive | |
| 618 | 2026-09-10T15:46:46.498Z | INFO | OS | applicationDidBecomeActive | |
| 619 | 2026-09-10T15:46:50.714Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 620 | 2026-09-10T15:46:58.471Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 621 | 2026-09-10T15:46:58.471Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 622 | 2026-09-10T15:46:58.471Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 623 | 2026-09-10T15:46:58.486Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 624 | 2026-09-10T15:46:59.108Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 625 | 2026-09-10T15:46:59.109Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 626 | 2026-09-10T15:46:59.109Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 627 | 2026-09-10T15:46:59.118Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 628 | 2026-09-10T15:46:59.124Z | WARN | TELEMETRY | Failed to send scheduled telemetry events, leaving in storage: ["MeasurementGroup": "vpn.any.connection", "EventInfo": [["Event": vpn_connection, "Values": { |
| 629 | "time_to_connection" = 68665; |
| 630 | }, "Dimensions": { |
| 631 | isp = "China Unicom"; |
| 632 | "network_type" = wifi; |
| 633 | outcome = success; |
| 634 | port = 500; |
| 635 | protocol = "wireguard_udp"; |
| 636 | server = "SG#238"; |
| 637 | "server_features" = "p2p,streaming,ipv6"; |
| 638 | "user_country" = CN; |
| 639 | "user_tier" = paid; |
| 640 | "vpn_country" = SG; |
| 641 | "vpn_status" = off; |
| 642 | "vpn_trigger" = auto; |
| 643 | }, "MeasurementGroup": vpn.any.connection], ["Values": { |
| 644 | "time_to_connection" = 30128; |
| 645 | }, "MeasurementGroup": vpn.any.connection, "Event": vpn_connection, "Dimensions": { |
| 646 | isp = "China Unicom"; |
| 647 | "network_type" = wifi; |
| 648 | outcome = failure; |
| 649 | port = 443; |
| 650 | protocol = "wireguard_tls"; |
| 651 | server = "CN#36"; |
| 652 | "server_features" = "p2p,streaming,ipv6"; |
| 653 | "user_country" = CN; |
| 654 | "user_tier" = paid; |
| 655 | "vpn_country" = CN; |
| 656 | "vpn_status" = off; |
| 657 | "vpn_trigger" = quick; |
| 658 | }]]] | |
| 659 | 2026-09-10T15:46:59.125Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") | |
| 660 | 2026-09-10T15:47:02.105Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 661 | 2026-09-10T15:47:02.105Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 662 | 2026-09-10T15:47:02.105Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 663 | 2026-09-10T15:47:02.120Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 664 | 2026-09-10T15:47:02.124Z | WARN | TELEMETRY | Failed to send telemetry event: ConnectionEvent(measurementGroup: "vpn.any.connection", event: Telemetry.ConnectionEvent.Event.vpnConnection(timeToConnection: 33.19445502758026), dimensions: Telemetry.ConnectionDimensions(outcome: Telemetry.ConnectionDimensions.Outcome.aborted, userTier: Telemetry.ConnectionDimensions.UserTier.paid, vpnStatus: Telemetry.CommonTelemetryDimensions.VPNStatus.off, vpnTrigger: Domain.UserInitiatedVPNChange.VPNTrigger.auto, networkType: Telemetry.ConnectionDimensions.NetworkType.wifi, serverFeatures: ["p2p", "streaming", "ipv6"], vpnCountry: "CN", userCountry: "CN", protocol: Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls), server: "CN#36", port: "443", isp: "China Unicom", isServerFree: false)) with error: The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, saving to storage. | |
| 665 | 2026-09-10T15:47:02.125Z | DEBUG | | Telemetry event scheduled: |
| 666 | { |
| 667 | "Values" : { |
| 668 | "time_to_connection" : 33194 |
| 669 | }, |
| 670 | "Event" : "vpn_connection", |
| 671 | "Dimensions" : { |
| 672 | "outcome" : "aborted", |
| 673 | "vpn_trigger" : "auto", |
| 674 | "network_type" : "wifi", |
| 675 | "vpn_country" : "CN", |
| 676 | "protocol" : "wireguard_tls", |
| 677 | "port" : "443", |
| 678 | "isp" : "China Unicom", |
| 679 | "user_country" : "CN", |
| 680 | "server" : "CN#36", |
| 681 | "vpn_status" : "off", |
| 682 | "server_features" : "p2p,streaming,ipv6", |
| 683 | "user_tier" : "paid" |
| 684 | }, |
| 685 | "MeasurementGroup" : "vpn.any.connection" |
| 686 | } | |
| 687 | 2026-09-10T15:47:02.126Z | DEBUG | TELEMETRY | Error(localizedDescription: "Didn\'t send Business event, feature disabled") | |
| 688 | 2026-09-10T15:47:04.621Z | INFO | CONN | Connection timeout finished for id: 80610B56-EAAE-4E2A-B50F-6F17E83B668F | |
| 689 | 2026-09-10T15:47:04.621Z | INFO | CONN.CONNECT | Connection attempt timed out | |
| 690 | 2026-09-10T15:47:04.621Z | INFO | CONN.CONNECT | Stop preparing connection | |
| 691 | 2026-09-10T15:47:04.621Z | INFO | CONN | NAT port mapping service stopped | |
| 692 | 2026-09-10T15:47:04.624Z | INFO | CONN.DISCONNECT | VPN disconnect started | |
| 693 | 2026-09-10T15:47:04.625Z | DEBUG | CONN | Proceeding with disconnection request immediately | {"currentVpnProtocol":"wireGuard(Domain.WireGuardTransport.tls)"} |
| 694 | 2026-09-10T15:47:04.625Z | INFO | CONN.DISCONNECT | Closing VPN tunnel | |
| 695 | 2026-09-10T15:47:04.751Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnected, error: Error(localizedDescription: "Ignoring disconnected event, was previously disconnected") | |
| 696 | 2026-09-10T15:47:04.823Z | INFO | CONN.CONNECT | On Demand set: Off for WireguardProtocolManager(_create: (Function), _vpnProviderManager: (Function), _vpnProviderManagerAsync: (Function), _logs: (Function)) | |
| 697 | 2026-09-10T15:47:04.835Z | DEBUG | CONN | Server change observer received status | {"status":"disconnecting","connection":"<NETunnelProviderSession: 0x6000004eaee0>","requestId":"3F65454A-3673-4FDD-A5B9-5BA2E77ABC84"} |
| 698 | 2026-09-10T15:47:05.358Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnecting from: 135.136.62.2 | {"state":"VPN state - Disconnecting from: 135.136.62.2","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","oldState":"VPN state - Connecting to: 135.136.62.2"} |
| 699 | 2026-09-10T15:47:05.358Z | INFO | CONN | NAT port mapping service stopped | |
| 700 | 2026-09-10T15:47:05.463Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnecting, error: Error(localizedDescription: "Ignoring the `disconnecting` status") | |
| 701 | 2026-09-10T15:47:11.720Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 702 | 2026-09-10T15:47:11.720Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 703 | 2026-09-10T15:47:11.721Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 704 | 2026-09-10T15:47:11.739Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 705 | 2026-09-10T15:47:11.744Z | ERROR | NET:RESPONSE | Request failed | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","method":"POST","error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSUnderlyingError=0x600002ab6430 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002ab6a90 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}"} |
| 706 | 2026-09-10T15:47:11.744Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x600002ab6430 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002ab6a90 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 707 | "LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>" |
| 708 | ), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked} | |
| 709 | 2026-09-10T15:47:11.744Z | INFO | USER_CERT | Cert refresh failed due to network error Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x600002ab6430 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002ab6a90 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 710 | "LocalDataTask <7AD233F4-F17A-49B4-B1A9-8AA2582C7845>.<69>" |
| 711 | ), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}. Retrying in 15 seconds. | |
| 712 | 2026-09-10T15:47:24.853Z | INFO | CONN:CHANGE | VPN update state to VPN state - Disconnected | {"oldState":"VPN state - Disconnecting from: 135.136.62.2","currentProtocol":"Optional(Domain.VpnProtocol.wireGuard(Domain.WireGuardTransport.tls))","state":"VPN state - Disconnected"} |
| 713 | 2026-09-10T15:47:24.854Z | INFO | CONN | NAT port mapping service stopped | |
| 714 | 2026-09-10T15:47:24.866Z | DEBUG | CONN | Server change observer received status | {"requestId":"3F65454A-3673-4FDD-A5B9-5BA2E77ABC84","status":"disconnected","connection":"<NETunnelProviderSession: 0x6000004eaee0>"} |
| 715 | 2026-09-10T15:47:24.964Z | DEBUG | TELEMETRY | No telemetry event triggered for connection change: disconnected, error: Error(localizedDescription: "Ignoring disconnected event, was previously disconnected") | |
| 716 | 2026-09-10T15:47:25.929Z | DEBUG | APP | Refresh timer tick | {"task":"(Function)"} |
| 717 | 2026-09-10T15:47:26.749Z | DEBUG | USER_CERT | Checking if vpn authentication certificate refresh is needed | |
| 718 | 2026-09-10T15:47:26.755Z | INFO | USER_CERT | Using existing vpn authentication keys | |
| 719 | 2026-09-10T15:47:26.757Z | INFO | USER_CERT | Certificate has expired or should be refreshed | {"validUntil":"2026-09-10 15:30:31 +0000","refreshTime":"2026-09-10 09:30:31 +0000"} |
| 720 | 2026-09-10T15:47:26.757Z | DEBUG | USER_CERT:NEW_CERT | Asking backend API for new vpn authentication certificate | |
| 721 | 2026-09-10T15:47:26.758Z | DEBUG | NET | Request started | {"method":"POST","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate"} |
| 722 | 2026-09-10T15:47:28.746Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 723 | 2026-09-10T15:47:34.678Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 724 | 2026-09-10T15:47:49.746Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 725 | 2026-09-10T15:47:49.746Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 726 | 2026-09-10T15:47:49.746Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 727 | 2026-09-10T15:47:49.760Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 728 | 2026-09-10T15:47:49.762Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"} |
| 729 | 2026-09-10T15:47:55.683Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 730 | 2026-09-10T15:47:55.683Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 731 | 2026-09-10T15:47:55.684Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 732 | 2026-09-10T15:47:55.703Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 733 | 2026-09-10T15:47:56.934Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 734 | 2026-09-10T15:47:56.940Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 735 | 2026-09-10T15:48:10.289Z | INFO | OS | applicationDidResignActive | |
| 736 | 2026-09-10T15:48:17.779Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 737 | 2026-09-10T15:48:17.780Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 738 | 2026-09-10T15:48:17.780Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 739 | 2026-09-10T15:48:17.780Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 740 | 2026-09-10T15:48:17.780Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 741 | 2026-09-10T15:48:17.780Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 742 | 2026-09-10T15:48:17.803Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 743 | 2026-09-10T15:48:17.820Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 744 | 2026-09-10T15:48:17.824Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"} |
| 745 | 2026-09-10T15:48:17.824Z | ERROR | APP | RefreshAccount error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"} |
| 746 | 2026-09-10T15:48:17.828Z | ERROR | NET:RESPONSE | Request failed | {"method":"POST","error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSUnderlyingError=0x600002b6f1e0 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002b6fa80 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}","url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate"} |
| 747 | 2026-09-10T15:48:17.828Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x600002b6f1e0 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002b6fa80 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 748 | "LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>" |
| 749 | ), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked} | |
| 750 | 2026-09-10T15:48:17.828Z | INFO | USER_CERT | Cert refresh failed due to network error Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSUnderlyingError=0x600002b6f1e0 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002b6fa80 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 751 | "LocalDataTask <E0CD8926-7A7C-42E8-9C47-30C8B548FDE9>.<73>" |
| 752 | ), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}, NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked}. Retrying in 10 seconds. | |
| 753 | 2026-09-10T15:48:25.747Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 754 | 2026-09-10T15:48:27.834Z | DEBUG | USER_CERT | Checking if vpn authentication certificate refresh is needed | |
| 755 | 2026-09-10T15:48:27.836Z | INFO | USER_CERT | Using existing vpn authentication keys | |
| 756 | 2026-09-10T15:48:27.839Z | INFO | USER_CERT | Certificate has expired or should be refreshed | {"validUntil":"2026-09-10 15:30:31 +0000","refreshTime":"2026-09-10 09:30:31 +0000"} |
| 757 | 2026-09-10T15:48:27.839Z | DEBUG | USER_CERT:NEW_CERT | Asking backend API for new vpn authentication certificate | |
| 758 | 2026-09-10T15:48:27.840Z | DEBUG | NET | Request started | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","method":"POST"} |
| 759 | 2026-09-10T15:48:46.242Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 760 | 2026-09-10T15:48:46.243Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 761 | 2026-09-10T15:48:46.243Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 762 | 2026-09-10T15:48:46.270Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 763 | 2026-09-10T15:48:46.274Z | ERROR | API:RESPONSE | clientCredentials error | {"error":"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked"} |
| 764 | 2026-09-10T15:48:58.748Z | DEBUG | CORE | [DoH] Resolving proxy domain — fetching | |
| 765 | 2026-09-10T15:49:19.746Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Cloudflare DoH | |
| 766 | 2026-09-10T15:49:19.747Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Quad9 DoH | |
| 767 | 2026-09-10T15:49:19.747Z | DEBUG | CORE | [DoH] Resolving proxy domain — hit from Google DoH | |
| 768 | 2026-09-10T15:49:19.770Z | DEBUG | CORE | [DoH] Resolving proxy domain — failed | |
| 769 | 2026-09-10T15:49:19.776Z | ERROR | NET:RESPONSE | Request failed | {"url":"https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate","error":"Error Domain=ch.protonvpn.mac Code=111222333 \"The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked\" UserInfo={NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, NSUnderlyingError=0x600002b6d110 {Error Domain=NSURLErrorDomain Code=-1001 \"The request timed out.\" UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002b6fa80 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"(null)\" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <0EE75845-13FF-496D-A12E-1E77A55A492C>.<75>, _NSURLErrorRelatedURLSessionTaskErrorKey=(\n \"LocalDataTask <0EE75845-13FF-496D-A12E-1E77A55A492C>.<75>\"\n), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, NSErrorFailingURLKey=https:\/\/vpn-api.proton.me\/vpn\/v1\/certificate, _kCFStreamErrorDomainKey=4}}}","method":"POST"} |
| 770 | 2026-09-10T15:49:19.776Z | ERROR | USER_CERT:REFRESH_ERROR | Failed to get vpn authentication certificate from backend: Error Domain=ch.protonvpn.mac Code=111222333 "The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked" UserInfo={NSLocalizedDescription=The Proton servers are unreachable. It might be caused by wrong network configuration, Proton servers not working or Proton servers being blocked, NSUnderlyingError=0x600002b6d110 {Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x600002b6fa80 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <0EE75845-13FF-496D-A12E-1E77A55A492C>.<75>, _NSURLErrorRelatedURLSessionTaskErrorKey=( |
| 771 | "LocalDataTask <0EE75845-13FF-496D-A12E-1E77A55A492C>.<75>" |
| 772 | ), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://vpn-api.proton.me/vpn/v1/certificate, NSErrorFailingURLKey=https://vpn-api.proton.me/vpn/v1/certificate, _kCFStreamErrorDomainKey=4}}} | |