2026-07-25T17:03:02.882Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-25T17:05:16.296Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T17:05:16.296Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T17:05:16.297Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T17:05:16.729Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T17:05:17.218Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T17:05:17.232Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T17:05:17.243Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T17:06:22.663Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-25T17:06:22.663Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T17:06:23.029Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T17:06:23.038Z | INFO | SETTINGS:CHANGED | Setting 'FeatureFlags' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-25T17:22:12.978Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T17:22:12.978Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T17:22:12.979Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T17:22:12.979Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T17:22:12.979Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T17:22:12.979Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T17:22:13.099Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T17:22:13.100Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T17:22:13.576Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T17:22:13.577Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T17:22:13.577Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 5:42:13 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T17:22:13.577Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T17:22:13.577Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T17:22:13.582Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '71931Z","ExpirationDateTimeUtc":"2026-07-25T17:42:13.5771931Z"}}' to '71931Z","ExpirationDateTimeUtc":"2026-07-25T17:42:13.5771931Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T17:22:13.582Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T17:22:14.050Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T17:22:14.358Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T17:22:14.370Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T17:22:14.373Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T17:39:09.671Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T17:39:09.671Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T17:39:09.672Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T17:39:11.645Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T17:39:12.136Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T17:39:12.141Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T17:39:12.142Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T17:56:06.357Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T17:56:06.357Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-25T18:13:03.047Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T18:13:03.047Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T18:13:03.048Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T18:13:03.048Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T18:13:03.048Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T18:13:03.048Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T18:13:03.107Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T18:13:03.107Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T18:13:03.680Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T18:13:03.681Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T18:13:03.681Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 6:33:03 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T18:13:03.681Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T18:13:03.681Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T18:13:03.686Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '11111Z","ExpirationDateTimeUtc":"2026-07-25T18:33:03.6811111Z"}}' to '11111Z","ExpirationDateTimeUtc":"2026-07-25T18:33:03.6811111Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T18:13:03.686Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T18:13:04.118Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T18:13:04.627Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T18:13:04.639Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T18:13:04.643Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T18:25:41.992Z | INFO | USER.CERT:REFRESH | Requesting a new connection certificate since the current one is considered old. | {"Caller":"ConnectionCertificateManager.LogNewCertificateRequest:146"} 2026-07-25T18:25:41.993Z | INFO | API:REQUEST | POST "https://185.159.159.148/vpn/v1/certificate" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T18:25:42.760Z | INFO | API:RESPONSE | POST "https://185.159.159.148/vpn/v1/certificate": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T18:25:42.765Z | INFO | SETTINGS:CHANGED | Setting 'ConnectionCertificate' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-25T18:25:42.765Z | INFO | USER.CERT:NEW | New connection certificate successfully saved. Expires at 7/26/2026 6:25:42 PM +00:00. | {"Caller":"ConnectionCertificateManager.RequestConnectionCertificateAsync:209"} 2026-07-25T18:29:59.741Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T18:29:59.741Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T18:29:59.741Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T18:30:00.128Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T18:30:00.576Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T18:30:00.587Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T18:30:00.590Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T18:46:56.423Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T18:46:56.423Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T18:46:56.424Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T18:46:56.424Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T18:46:56.424Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T18:46:56.424Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T18:46:56.479Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T18:46:56.479Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T18:46:57.057Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T18:46:57.057Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T18:46:57.057Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 7:06:57 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T18:46:57.057Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T18:46:57.058Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T18:46:57.061Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '78945Z","ExpirationDateTimeUtc":"2026-07-25T19:06:57.0578945Z"}}' to '78945Z","ExpirationDateTimeUtc":"2026-07-25T19:06:57.0578945Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T18:46:57.061Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T18:46:57.695Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T18:46:58.186Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T18:46:58.197Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T18:46:58.201Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T19:03:53.124Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T19:03:53.125Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T19:03:53.125Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:03:53.649Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T19:03:53.917Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T19:03:53.923Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T19:03:53.933Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T19:09:44.723Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-25T19:09:44.724Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T19:09:44.724Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T19:09:44.724Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T19:09:44.724Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T19:09:44.869Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T19:09:44.869Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T19:09:45.817Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T19:09:45.817Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T19:09:45.817Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 7:29:45 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T19:09:45.817Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T19:09:45.817Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T19:09:45.835Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '76898Z","ExpirationDateTimeUtc":"2026-07-25T19:29:45.8176898Z"}}' to '76898Z","ExpirationDateTimeUtc":"2026-07-25T19:29:45.8176898Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T19:09:45.835Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:09:46.708Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T19:09:46.717Z | INFO | SETTINGS:CHANGED | Setting 'FeatureFlags' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-25T19:20:49.800Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T19:20:49.800Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-25T19:37:46.496Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T19:37:46.497Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T19:37:46.497Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T19:37:46.497Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T19:37:46.497Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T19:37:46.497Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T19:37:46.636Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T19:37:46.636Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T19:37:47.116Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T19:37:47.116Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T19:37:47.116Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 7:57:47 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T19:37:47.116Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T19:37:47.116Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T19:37:47.120Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '116544Z","ExpirationDateTimeUtc":"2026-07-25T19:57:47.116544Z"}}' to '116544Z","ExpirationDateTimeUtc":"2026-07-25T19:57:47.116544Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T19:37:47.120Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:37:47.956Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T19:37:48.456Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T19:37:48.462Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T19:37:48.464Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T19:48:48.022Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-25T19:48:48.023Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:48:48.025Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-25T19:48:48.026Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-25T19:48:48.031Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-25T19:48:48.034Z | INFO | API | Waiting for 00:00:01.1863879 before retrying GET https://vpn-api.proton.me/vpn/location due to exception A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network.. Retry count: 1. | {"Caller":"RetryPolicyProvider.GetExceptionRetryPolicy:107"} 2026-07-25T19:48:49.228Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:48:49.230Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-25T19:48:49.230Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-25T19:48:49.232Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-25T19:48:49.233Z | INFO | API | Waiting for 00:00:02.1575741 before retrying GET https://vpn-api.proton.me/vpn/location due to exception A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network.. Retry count: 2. | {"Caller":"RetryPolicyProvider.GetExceptionRetryPolicy:107"} 2026-07-25T19:48:51.397Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:48:51.399Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-25T19:48:51.400Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-25T19:48:51.403Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-25T19:48:51.408Z | ERROR | APP | Error occured while fetching device location. | {"Caller":"DeviceLocationObserver.OnTriggerAsync:137"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.Retries.RetryingHandler.<>c__DisplayClass2_0.<b__0>d.MoveNext() --- End of stack trace from previous location --- at Polly.Timeout.AsyncTimeoutEngine.ImplementationAsync[TResult](Func`3 action, Context context, Func`2 timeoutProvider, TimeoutStrategy timeoutStrategy, Func`5 onTimeoutAsync, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Timeout.AsyncTimeoutEngine.ImplementationAsync[TResult](Func`3 action, Context context, Func`2 timeoutProvider, TimeoutStrategy timeoutStrategy, Func`5 onTimeoutAsync, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy.ExecuteInternalAsync[TResult](Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy.ExecuteInternalAsync[TResult](Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.Retries.RetryingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.OutdatedAppHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.HumanVerificationHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.UnauthorizedResponseHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.CancellingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.TrySendRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at System.Net.Http.HttpClient.g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) at ProtonVPN.Api.ApiClient.SendRequestAsync[T](HttpClient httpClient, HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) --- End of inner exception stack trace --- at ProtonVPN.Api.ApiClient.SendRequestAsync[T](HttpClient httpClient, HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) at ProtonVPN.Api.ApiClient.SendRequestWithNoCacheAsync[T](HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) at ProtonVPN.Api.ApiClient.GetLocationDataAsync() at ProtonVPN.Client.Logic.Servers.Observers.DeviceLocationObserver.OnTriggerAsync() 2026-07-25T19:48:56.123Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-25T19:48:56.123Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:48:56.124Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-25T19:48:56.124Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-25T19:48:56.126Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-25T19:48:56.127Z | INFO | API | Waiting for 00:00:01.1884585 before retrying GET https://vpn-api.proton.me/vpn/location due to exception A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network.. Retry count: 1. | {"Caller":"RetryPolicyProvider.GetExceptionRetryPolicy:107"} 2026-07-25T19:48:57.322Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:48:57.324Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-25T19:48:57.324Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-25T19:48:57.327Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-25T19:48:57.330Z | INFO | API | Waiting for 00:00:02.0003287 before retrying GET https://vpn-api.proton.me/vpn/location due to exception A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network.. Retry count: 2. | {"Caller":"RetryPolicyProvider.GetExceptionRetryPolicy:107"} 2026-07-25T19:48:59.350Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:48:59.351Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-25T19:48:59.351Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-25T19:48:59.353Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-25T19:48:59.356Z | ERROR | APP | Error occured while fetching device location. | {"Caller":"DeviceLocationObserver.OnTriggerAsync:137"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.Retries.RetryingHandler.<>c__DisplayClass2_0.<b__0>d.MoveNext() --- End of stack trace from previous location --- at Polly.Timeout.AsyncTimeoutEngine.ImplementationAsync[TResult](Func`3 action, Context context, Func`2 timeoutProvider, TimeoutStrategy timeoutStrategy, Func`5 onTimeoutAsync, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Timeout.AsyncTimeoutEngine.ImplementationAsync[TResult](Func`3 action, Context context, Func`2 timeoutProvider, TimeoutStrategy timeoutStrategy, Func`5 onTimeoutAsync, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy.ExecuteInternalAsync[TResult](Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy.ExecuteInternalAsync[TResult](Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.Retries.RetryingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.OutdatedAppHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.HumanVerificationHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.UnauthorizedResponseHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.CancellingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.TrySendRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at System.Net.Http.HttpClient.g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) at ProtonVPN.Api.ApiClient.SendRequestAsync[T](HttpClient httpClient, HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) --- End of inner exception stack trace --- at ProtonVPN.Api.ApiClient.SendRequestAsync[T](HttpClient httpClient, HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) at ProtonVPN.Api.ApiClient.SendRequestWithNoCacheAsync[T](HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) at ProtonVPN.Api.ApiClient.GetLocationDataAsync() at ProtonVPN.Client.Logic.Servers.Observers.DeviceLocationObserver.OnTriggerAsync() 2026-07-25T19:49:05.805Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-25T19:49:05.805Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:49:05.807Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-25T19:49:05.807Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-25T19:49:05.810Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-25T19:49:05.813Z | INFO | API | Waiting for 00:00:01.0068906 before retrying GET https://vpn-api.proton.me/vpn/location due to exception A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network.. Retry count: 1. | {"Caller":"RetryPolicyProvider.GetExceptionRetryPolicy:107"} 2026-07-25T19:49:06.819Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:49:06.821Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-25T19:49:06.821Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-25T19:49:06.823Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-25T19:49:06.825Z | INFO | API | Waiting for 00:00:02.0673211 before retrying GET https://vpn-api.proton.me/vpn/location due to exception A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network.. Retry count: 2. | {"Caller":"RetryPolicyProvider.GetExceptionRetryPolicy:107"} 2026-07-25T19:49:08.899Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:49:08.901Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-25T19:49:08.901Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-25T19:49:08.902Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-25T19:49:08.904Z | ERROR | APP | Error occured while fetching device location. | {"Caller":"DeviceLocationObserver.OnTriggerAsync:137"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.Retries.RetryingHandler.<>c__DisplayClass2_0.<b__0>d.MoveNext() --- End of stack trace from previous location --- at Polly.Timeout.AsyncTimeoutEngine.ImplementationAsync[TResult](Func`3 action, Context context, Func`2 timeoutProvider, TimeoutStrategy timeoutStrategy, Func`5 onTimeoutAsync, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Timeout.AsyncTimeoutEngine.ImplementationAsync[TResult](Func`3 action, Context context, Func`2 timeoutProvider, TimeoutStrategy timeoutStrategy, Func`5 onTimeoutAsync, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy.ExecuteInternalAsync[TResult](Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy.ExecuteInternalAsync[TResult](Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.Retries.RetryingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.OutdatedAppHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.HumanVerificationHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.UnauthorizedResponseHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.CancellingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.TrySendRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at System.Net.Http.HttpClient.g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) at ProtonVPN.Api.ApiClient.SendRequestAsync[T](HttpClient httpClient, HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) --- End of inner exception stack trace --- at ProtonVPN.Api.ApiClient.SendRequestAsync[T](HttpClient httpClient, HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) at ProtonVPN.Api.ApiClient.SendRequestWithNoCacheAsync[T](HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) at ProtonVPN.Api.ApiClient.GetLocationDataAsync() at ProtonVPN.Client.Logic.Servers.Observers.DeviceLocationObserver.OnTriggerAsync() 2026-07-25T19:49:12.378Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-25T19:49:12.379Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:49:12.775Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/location": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T19:49:30.625Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-25T19:49:30.625Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:49:31.142Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/location": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T19:49:34.363Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-25T19:49:34.363Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:49:34.890Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/location": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T19:54:43.178Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T19:54:43.178Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T19:54:43.179Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T19:54:43.558Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T19:54:43.987Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T19:54:43.994Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T19:54:43.998Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T20:00:31.104Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-25T20:00:31.104Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-25T20:00:31.105Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-25T20:00:31.106Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T20:00:31.106Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T20:00:31.106Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T20:00:31.106Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T20:00:31.243Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T20:00:31.243Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T20:00:31.769Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T20:00:31.770Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T20:00:31.770Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 8:20:31 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T20:00:31.770Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T20:00:31.770Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T20:00:31.774Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '00483Z","ExpirationDateTimeUtc":"2026-07-25T20:20:31.7700483Z"}}' to '00483Z","ExpirationDateTimeUtc":"2026-07-25T20:20:31.7700483Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T20:00:31.774Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T20:00:32.517Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T20:00:32.519Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-25T20:00:32.520Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-25T20:00:32.521Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-25T20:00:32.522Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-25T20:11:39.877Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T20:11:39.877Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T20:11:39.878Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T20:11:40.401Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T20:11:40.924Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T20:11:40.935Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T20:11:40.938Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T20:20:59.278Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-25T20:20:59.699Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-25T20:20:59.700Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-25T20:21:00.787Z | INFO | PROCESS.COMM | Received update state change with status Ready. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-25T20:21:00.798Z | INFO | PROCESS.COMM | Received update state change with status AutoUpdated. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-25T20:28:36.555Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T20:28:36.556Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T20:28:36.556Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T20:28:36.556Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T20:28:36.556Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T20:28:36.556Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T20:28:36.689Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T20:28:36.689Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T20:28:37.195Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T20:28:37.195Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T20:28:37.196Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 8:48:37 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T20:28:37.196Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T20:28:37.196Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T20:28:37.201Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '60248Z","ExpirationDateTimeUtc":"2026-07-25T20:48:37.1960248Z"}}' to '60248Z","ExpirationDateTimeUtc":"2026-07-25T20:48:37.1960248Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T20:28:37.202Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T20:28:37.549Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T20:28:37.885Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T20:28:37.894Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T20:28:37.895Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T20:45:33.245Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T20:45:33.245Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-25T21:02:29.947Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T21:02:29.947Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T21:02:29.948Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T21:02:29.948Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T21:02:29.948Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T21:02:29.948Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T21:02:30.101Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T21:02:30.101Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T21:02:30.579Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T21:02:30.579Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T21:02:30.579Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 9:22:30 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T21:02:30.579Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T21:02:30.579Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T21:02:30.584Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '94246Z","ExpirationDateTimeUtc":"2026-07-25T21:22:30.5794246Z"}}' to '94246Z","ExpirationDateTimeUtc":"2026-07-25T21:22:30.5794246Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T21:02:30.584Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T21:02:31.435Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T21:02:31.938Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T21:02:31.945Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T21:02:31.950Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T21:13:06.791Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-25T21:13:06.791Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T21:13:07.167Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T21:19:26.623Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T21:19:26.623Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T21:19:26.623Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T21:19:26.981Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T21:19:27.377Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T21:19:27.384Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T21:19:27.393Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T21:36:23.324Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T21:36:23.324Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-25T21:53:20.010Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T21:53:20.010Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T21:53:20.011Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T21:53:20.011Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T21:53:20.011Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T21:53:20.011Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T21:53:20.147Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T21:53:20.147Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T21:53:20.626Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T21:53:20.626Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T21:53:20.626Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 10:13:20 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T21:53:20.626Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T21:53:20.626Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T21:53:20.631Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '65616Z","ExpirationDateTimeUtc":"2026-07-25T22:13:20.6265616Z"}}' to '65616Z","ExpirationDateTimeUtc":"2026-07-25T22:13:20.6265616Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T21:53:20.631Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T21:53:21.238Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T21:53:21.741Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T21:53:21.755Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T21:53:21.759Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T22:10:16.697Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T22:10:16.697Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-25T22:27:13.389Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T22:27:13.389Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T22:27:13.390Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T22:27:13.390Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T22:27:13.390Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T22:27:13.390Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T22:27:13.537Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T22:27:13.538Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T22:27:13.986Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T22:27:13.987Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T22:27:13.987Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 10:47:13 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T22:27:13.987Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T22:27:13.987Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T22:27:13.991Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '72028Z","ExpirationDateTimeUtc":"2026-07-25T22:47:13.9872028Z"}}' to '72028Z","ExpirationDateTimeUtc":"2026-07-25T22:47:13.9872028Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T22:27:13.992Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T22:27:14.867Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T22:27:15.769Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T22:27:15.776Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T22:27:15.778Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T22:44:10.078Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T22:44:10.078Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T22:44:10.078Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T22:44:10.519Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T22:44:10.814Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T22:44:10.820Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T22:44:10.822Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T22:58:00.176Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-25T22:58:00.176Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-25T22:58:00.177Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-25T22:58:00.178Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T22:58:00.178Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T22:58:00.178Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T22:58:00.178Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T22:58:00.317Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T22:58:00.317Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T22:58:02.262Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T22:58:02.262Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T22:58:02.262Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 11:18:02 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T22:58:02.262Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T22:58:02.262Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T22:58:02.266Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '24963Z","ExpirationDateTimeUtc":"2026-07-25T23:18:02.2624963Z"}}' to '24963Z","ExpirationDateTimeUtc":"2026-07-25T23:18:02.2624963Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T22:58:02.266Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T22:58:04.049Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T22:58:04.049Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-25T22:58:04.051Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-25T22:58:04.051Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-25T22:58:04.052Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-25T23:01:06.760Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T23:01:06.760Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-25T23:16:28.847Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-25T23:16:28.848Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T23:16:29.253Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T23:18:03.447Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T23:18:03.447Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T23:18:03.448Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T23:18:03.448Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T23:18:03.448Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T23:18:03.448Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T23:18:03.586Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T23:18:03.586Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T23:18:04.156Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T23:18:04.157Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T23:18:04.157Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/25/2026 11:38:04 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T23:18:04.157Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T23:18:04.157Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T23:18:04.163Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '157157Z","ExpirationDateTimeUtc":"2026-07-25T23:38:04.157157Z"}}' to '157157Z","ExpirationDateTimeUtc":"2026-07-25T23:38:04.157157Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T23:18:04.163Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T23:18:04.679Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T23:18:05.161Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T23:18:05.167Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T23:18:05.170Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-25T23:32:46.598Z | INFO | APP | Requesting a VPN plan update (Force request: False) (Minimum request date UTC: 7/25/2026 11:37:55 PM) | {"Caller":"VpnPlanUpdater.EnqueueRequestAsync:84"} 2026-07-25T23:32:46.598Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T23:32:47.642Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T23:35:00.144Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T23:35:00.144Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-25T23:51:56.828Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-25T23:51:56.829Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-25T23:51:56.829Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-25T23:51:56.829Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-25T23:51:56.829Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-25T23:51:56.829Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-25T23:51:56.892Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-25T23:51:56.892Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-25T23:51:57.446Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-25T23:51:57.446Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-25T23:51:57.446Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 12:11:57 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-25T23:51:57.446Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-25T23:51:57.446Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-25T23:51:57.452Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '65074Z","ExpirationDateTimeUtc":"2026-07-26T00:11:57.4465074Z"}}' to '65074Z","ExpirationDateTimeUtc":"2026-07-26T00:11:57.4465074Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-25T23:51:57.452Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-25T23:51:57.803Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-25T23:51:58.217Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-25T23:51:58.223Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-25T23:51:58.237Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T00:08:53.523Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T00:08:53.523Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T00:08:53.524Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T00:08:54.052Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T00:08:54.525Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T00:08:54.532Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T00:08:54.534Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T00:25:50.214Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T00:25:50.215Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T00:42:46.897Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T00:42:46.897Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T00:42:46.898Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T00:42:46.898Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T00:42:46.898Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T00:42:46.898Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T00:42:47.025Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T00:42:47.025Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T00:42:47.853Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T00:42:47.853Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T00:42:47.853Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 1:02:47 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T00:42:47.853Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T00:42:47.853Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T00:42:47.859Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '35387Z","ExpirationDateTimeUtc":"2026-07-26T01:02:47.8535387Z"}}' to '35387Z","ExpirationDateTimeUtc":"2026-07-26T01:02:47.8535387Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T00:42:47.861Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T00:42:48.666Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T00:42:49.122Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T00:42:49.129Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T00:42:49.135Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T00:59:43.598Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T00:59:43.599Z | INFO | APP | Server cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:74"} 2026-07-26T00:59:43.599Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/servers-count" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T00:59:43.602Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/logicals?SignServer=Server.EntryIP,Server.Label&SecureCoreFilter=all&WithState=true&WithEntriesForProtocols=WireGuardUDP,WireGuardTCP,WireGuardTLS,OpenVPNUDP,OpenVPNTCP" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T00:59:43.959Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/servers-count": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T00:59:45.110Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/logicals?SignServer=Server.EntryIP,Server.Label&SecureCoreFilter=all&WithState=true&WithEntriesForProtocols=WireGuardUDP,WireGuardTCP,WireGuardTLS,OpenVPNUDP,OpenVPNTCP": 304 NotModified" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T00:59:45.110Z | INFO | API | API: Get servers response was not modified since last call, using cached data. | {"Caller":"ServersCache.UpdateAsync:232"} 2026-07-26T01:16:40.276Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T01:16:40.277Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T01:16:40.277Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T01:16:40.277Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T01:16:40.277Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T01:16:40.277Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T01:16:40.414Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T01:16:40.414Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T01:16:40.872Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T01:16:40.872Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T01:16:40.872Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 1:36:40 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T01:16:40.872Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T01:16:40.872Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T01:16:40.877Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '26261Z","ExpirationDateTimeUtc":"2026-07-26T01:36:40.8726261Z"}}' to '26261Z","ExpirationDateTimeUtc":"2026-07-26T01:36:40.8726261Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T01:16:40.878Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T01:16:41.262Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T01:16:41.726Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T01:16:41.732Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T01:16:41.739Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T01:19:32.460Z | INFO | SETTINGS | Retrieving Client Config | {"Caller":"ClientConfigObserver.MakeClientConfigRequestAsync:96"} 2026-07-26T01:19:32.460Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/clientconfig" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T01:19:32.823Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/clientconfig": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T01:19:32.826Z | INFO | SETTINGS:CHANGED | Setting 'OpenVpnTcpPorts' changed from '[443,7770,8443]' to '[443,7770,8443]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T01:19:32.829Z | INFO | SETTINGS:CHANGED | Setting 'OpenVpnUdpPorts' changed from '[80,51820,4569,1194,5060]' to '[80,51820,4569,1194,5060]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T01:19:32.831Z | INFO | SETTINGS:CHANGED | Setting 'WireGuardUdpPorts' changed from '[443,88,1224,51820,500,4500]' to '[443,88,1224,51820,500,4500]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T01:19:32.833Z | INFO | SETTINGS:CHANGED | Setting 'WireGuardTcpPorts' changed from '[443]' to '[443]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T01:19:32.835Z | INFO | SETTINGS:CHANGED | Setting 'WireGuardTlsPorts' changed from '[443]' to '[443]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T01:19:32.839Z | INFO | SETTINGS:CHANGED | Setting 'DisabledSmartProtocols' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-26T01:19:50.897Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T01:19:50.897Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T01:19:51.291Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T01:33:36.960Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T01:33:36.960Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T01:33:36.961Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T01:33:37.319Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T01:33:37.738Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T01:33:37.744Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T01:33:37.747Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T01:50:33.645Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T01:50:33.645Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T01:50:33.645Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T01:50:33.645Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T01:50:33.645Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T01:50:33.645Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T01:50:33.708Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T01:50:33.708Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T01:50:35.429Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T01:50:35.430Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T01:50:35.431Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 2:10:35 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T01:50:35.431Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T01:50:35.431Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T01:50:35.435Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '16072Z","ExpirationDateTimeUtc":"2026-07-26T02:10:35.4316072Z"}}' to '16072Z","ExpirationDateTimeUtc":"2026-07-26T02:10:35.4316072Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T01:50:35.436Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T01:50:35.865Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T01:50:36.280Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T01:50:36.286Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T01:50:36.296Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T01:55:29.228Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-26T01:55:29.228Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-26T01:55:29.229Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-26T01:55:29.230Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T01:55:29.648Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T01:55:29.650Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-26T01:55:29.651Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-26T01:55:29.651Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-26T01:55:29.652Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-26T02:07:30.344Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T02:07:30.344Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T02:07:30.344Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T02:07:30.850Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T02:07:31.164Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T02:07:31.170Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T02:07:31.172Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T02:24:27.025Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T02:24:27.026Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T02:24:27.026Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T02:24:27.026Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T02:24:27.027Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T02:24:27.027Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T02:24:27.105Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T02:24:27.106Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T02:24:27.617Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T02:24:27.617Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T02:24:27.618Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 2:44:27 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T02:24:27.618Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T02:24:27.618Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T02:24:27.621Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '80115Z","ExpirationDateTimeUtc":"2026-07-26T02:44:27.6180115Z"}}' to '80115Z","ExpirationDateTimeUtc":"2026-07-26T02:44:27.6180115Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T02:24:27.621Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T02:24:28.119Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T02:24:28.585Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T02:24:28.591Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T02:24:28.594Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T02:41:23.712Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T02:41:23.713Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T02:58:20.413Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T02:58:20.414Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T02:58:20.414Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T02:58:20.414Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T02:58:20.414Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T02:58:20.415Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T02:58:20.551Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T02:58:20.552Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T02:58:21.301Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T02:58:21.301Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T02:58:21.301Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 3:18:21 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T02:58:21.302Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T02:58:21.302Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T02:58:21.307Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '19795Z","ExpirationDateTimeUtc":"2026-07-26T03:18:21.3019795Z"}}' to '19795Z","ExpirationDateTimeUtc":"2026-07-26T03:18:21.3019795Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T02:58:21.307Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T02:58:22.391Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T02:58:22.758Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T02:58:22.764Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T02:58:22.775Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T03:10:45.168Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T03:10:45.633Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T03:10:45.633Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T03:10:46.673Z | INFO | PROCESS.COMM | Received update state change with status Ready. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T03:10:46.683Z | INFO | PROCESS.COMM | Received update state change with status AutoUpdated. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T03:15:17.101Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T03:15:17.101Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T03:15:17.102Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T03:15:17.740Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T03:15:18.087Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T03:15:18.094Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T03:15:18.104Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T03:23:12.960Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T03:23:12.961Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T03:23:12.961Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T03:23:12.961Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T03:23:12.961Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T03:23:13.024Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T03:23:13.025Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T03:23:13.493Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T03:23:13.493Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T03:23:13.493Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 3:43:13 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T03:23:13.493Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T03:23:13.494Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T03:23:13.498Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '39345Z","ExpirationDateTimeUtc":"2026-07-26T03:43:13.4939345Z"}}' to '39345Z","ExpirationDateTimeUtc":"2026-07-26T03:43:13.4939345Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T03:23:13.498Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T03:23:13.915Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T03:23:13.922Z | INFO | SETTINGS:CHANGED | Setting 'FeatureFlags' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-26T03:32:13.797Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T03:32:13.797Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T03:32:13.798Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T03:32:14.153Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T03:32:14.508Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T03:32:14.513Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T03:32:14.515Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T03:49:10.475Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T03:49:10.475Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T03:49:10.476Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T03:49:10.476Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T03:49:10.476Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T03:49:10.476Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T03:49:10.539Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T03:49:10.539Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T03:49:10.972Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T03:49:10.973Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T03:49:10.974Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 4:09:10 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T03:49:10.974Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T03:49:10.974Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T03:49:10.977Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '40632Z","ExpirationDateTimeUtc":"2026-07-26T04:09:10.9740632Z"}}' to '40632Z","ExpirationDateTimeUtc":"2026-07-26T04:09:10.9740632Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T03:49:10.978Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T03:49:11.440Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T03:49:11.735Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T03:49:11.741Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T03:49:11.745Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T04:06:07.160Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T04:06:07.160Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T04:06:07.160Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T04:06:08.058Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T04:06:08.565Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T04:06:08.570Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T04:06:08.572Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T04:23:03.860Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T04:23:03.861Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T04:23:03.861Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T04:23:03.861Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T04:23:03.861Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T04:23:03.861Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T04:23:04.004Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T04:23:04.004Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T04:23:06.281Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T04:23:06.282Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T04:23:06.282Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 4:43:06 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T04:23:06.282Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T04:23:06.282Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T04:23:06.286Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '282165Z","ExpirationDateTimeUtc":"2026-07-26T04:43:06.282165Z"}}' to '282165Z","ExpirationDateTimeUtc":"2026-07-26T04:43:06.282165Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T04:23:06.286Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T04:23:06.664Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T04:23:07.091Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T04:23:07.097Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T04:23:07.099Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T04:40:00.543Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T04:40:00.543Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T04:40:00.543Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T04:40:00.910Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T04:40:01.327Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T04:40:01.336Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T04:40:01.339Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T04:52:58.298Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-26T04:52:58.298Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-26T04:52:58.298Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-26T04:52:58.299Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T04:52:58.299Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T04:52:58.300Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T04:52:58.300Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T04:52:58.439Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T04:52:58.440Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T04:52:58.940Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T04:52:58.940Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T04:52:58.940Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 5:12:58 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T04:52:58.940Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T04:52:58.940Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T04:52:58.944Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '05024Z","ExpirationDateTimeUtc":"2026-07-26T05:12:58.9405024Z"}}' to '05024Z","ExpirationDateTimeUtc":"2026-07-26T05:12:58.9405024Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T04:52:58.944Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T04:52:59.267Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 401 Unauthorized" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T04:52:59.268Z | INFO | API | Using refresh token value (showing only first 5 chars) mndnl | {"Caller":"TokenClient.LogRefreshToken:101"} 2026-07-26T04:52:59.268Z | INFO | API:REQUEST | POST "https://185.159.159.148/auth/refresh" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T04:53:01.810Z | INFO | API:RESPONSE | POST "https://185.159.159.148/auth/refresh": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T04:53:01.813Z | INFO | SETTINGS:CHANGED | Setting 'AccessToken' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-26T04:53:01.817Z | INFO | SETTINGS:CHANGED | Setting 'RefreshToken' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-26T04:53:01.818Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T04:53:02.310Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T04:53:02.311Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-26T04:53:02.312Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-26T04:53:02.312Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-26T04:53:02.313Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-26T04:56:57.229Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T04:56:57.229Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T05:13:53.929Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T05:13:53.929Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T05:13:53.929Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T05:13:53.929Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T05:13:53.929Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T05:13:53.929Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T05:13:54.070Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T05:13:54.070Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T05:13:54.744Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T05:13:54.744Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T05:13:54.744Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 5:33:54 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T05:13:54.744Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T05:13:54.745Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T05:13:54.748Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '48064Z","ExpirationDateTimeUtc":"2026-07-26T05:33:54.7448064Z"}}' to '48064Z","ExpirationDateTimeUtc":"2026-07-26T05:33:54.7448064Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T05:13:54.748Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T05:13:55.276Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T05:13:55.542Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T05:13:55.548Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T05:13:55.562Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T05:26:35.028Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T05:26:35.029Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T05:26:35.443Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T05:30:50.613Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T05:30:50.613Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T05:30:50.613Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T05:30:51.340Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T05:30:51.689Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T05:30:51.699Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T05:30:51.702Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T05:47:47.297Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T05:47:47.298Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T05:47:47.298Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T05:47:47.298Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T05:47:47.298Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T05:47:47.298Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T05:47:47.434Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T05:47:47.435Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T05:47:48.190Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T05:47:48.191Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T05:47:48.191Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 6:07:48 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T05:47:48.191Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T05:47:48.191Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T05:47:48.196Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '13306Z","ExpirationDateTimeUtc":"2026-07-26T06:07:48.1913306Z"}}' to '13306Z","ExpirationDateTimeUtc":"2026-07-26T06:07:48.1913306Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T05:47:48.196Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T05:47:48.567Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T05:47:48.953Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T05:47:48.959Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T05:47:48.970Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T06:04:43.996Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T06:04:43.997Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T06:04:43.997Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T06:04:44.398Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T06:04:44.662Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T06:04:44.668Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T06:04:44.670Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T06:21:40.675Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T06:21:40.675Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T06:35:38.103Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T06:35:38.664Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T06:35:38.665Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T06:35:39.615Z | INFO | PROCESS.COMM | Received update state change with status Ready. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T06:35:39.625Z | INFO | PROCESS.COMM | Received update state change with status AutoUpdated. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T06:38:37.370Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T06:38:37.370Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T06:38:37.370Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T06:38:37.371Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T06:38:37.371Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T06:38:37.371Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T06:38:37.510Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T06:38:37.510Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T06:38:37.979Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T06:38:37.980Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T06:38:37.980Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 6:58:37 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T06:38:37.981Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T06:38:37.981Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T06:38:37.989Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '01912Z","ExpirationDateTimeUtc":"2026-07-26T06:58:37.9801912Z"}}' to '01912Z","ExpirationDateTimeUtc":"2026-07-26T06:58:37.9801912Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T06:38:37.989Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T06:38:38.412Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T06:38:38.837Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T06:38:38.851Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T06:38:38.855Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T06:55:34.058Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T06:55:34.058Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T06:55:34.059Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T06:55:34.542Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T06:55:34.867Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T06:55:34.873Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T06:55:34.876Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T07:12:30.744Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T07:12:30.744Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T07:12:30.745Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T07:12:30.745Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T07:12:30.745Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T07:12:30.745Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T07:12:30.817Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T07:12:30.817Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T07:12:31.282Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T07:12:31.282Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T07:12:31.282Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 7:32:31 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T07:12:31.282Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T07:12:31.282Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T07:12:31.289Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '24561Z","ExpirationDateTimeUtc":"2026-07-26T07:32:31.2824561Z"}}' to '24561Z","ExpirationDateTimeUtc":"2026-07-26T07:32:31.2824561Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T07:12:31.289Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T07:12:31.655Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T07:12:32.098Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T07:12:32.103Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T07:12:32.105Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T07:29:27.428Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T07:29:27.429Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T07:29:57.086Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T07:29:57.086Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T07:29:57.670Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T07:46:24.129Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T07:46:24.133Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T07:46:24.134Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T07:46:24.134Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T07:46:24.134Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T07:46:24.134Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T07:46:24.273Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T07:46:24.273Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T07:46:24.775Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T07:46:24.775Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T07:46:24.775Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 8:06:24 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T07:46:24.776Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T07:46:24.776Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T07:46:24.780Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '59295Z","ExpirationDateTimeUtc":"2026-07-26T08:06:24.7759295Z"}}' to '59295Z","ExpirationDateTimeUtc":"2026-07-26T08:06:24.7759295Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T07:46:24.781Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T07:46:25.251Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T07:46:25.611Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T07:46:25.616Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T07:46:25.618Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T07:50:27.360Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-26T07:50:27.360Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-26T07:50:27.361Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-26T07:50:27.362Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T07:50:27.768Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T07:50:27.769Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-26T07:50:27.770Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-26T07:50:27.770Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-26T07:50:27.771Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-26T08:03:20.812Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T08:03:20.813Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T08:03:20.813Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T08:03:21.336Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T08:03:21.809Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T08:03:21.815Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T08:03:21.817Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T08:20:17.498Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T08:20:17.500Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T08:20:17.500Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T08:20:17.500Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T08:20:17.500Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T08:20:17.500Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T08:20:17.657Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T08:20:17.657Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T08:20:18.165Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T08:20:18.165Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T08:20:18.166Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 8:40:18 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T08:20:18.166Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T08:20:18.166Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T08:20:18.170Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '60252Z","ExpirationDateTimeUtc":"2026-07-26T08:40:18.1660252Z"}}' to '60252Z","ExpirationDateTimeUtc":"2026-07-26T08:40:18.1660252Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T08:20:18.170Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T08:20:18.632Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T08:20:18.917Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T08:20:18.924Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T08:20:18.929Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T08:37:14.197Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T08:37:14.197Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T08:37:14.198Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T08:37:14.837Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T08:37:15.203Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T08:37:15.209Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T08:37:15.213Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T08:54:10.897Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T08:54:10.898Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T08:54:10.898Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T08:54:10.898Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T08:54:10.898Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T08:54:10.898Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T08:54:11.024Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T08:54:11.024Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T08:54:11.486Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T08:54:11.486Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T08:54:11.486Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 9:14:11 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T08:54:11.487Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T08:54:11.487Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T08:54:11.494Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '69135Z","ExpirationDateTimeUtc":"2026-07-26T09:14:11.4869135Z"}}' to '69135Z","ExpirationDateTimeUtc":"2026-07-26T09:14:11.4869135Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T08:54:11.494Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T08:54:12.593Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T08:54:12.965Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T08:54:12.971Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T08:54:12.996Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T09:11:07.560Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T09:11:07.560Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T09:11:07.567Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T09:11:08.215Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T09:11:08.588Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T09:11:08.594Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T09:11:08.596Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T09:28:04.252Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T09:28:04.253Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T09:28:04.253Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T09:28:04.253Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T09:28:04.253Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T09:28:04.253Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T09:28:04.394Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T09:28:04.394Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T09:28:06.458Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T09:28:06.458Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T09:28:06.458Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 9:48:06 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T09:28:06.458Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T09:28:06.458Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T09:28:06.463Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '83673Z","ExpirationDateTimeUtc":"2026-07-26T09:48:06.4583673Z"}}' to '83673Z","ExpirationDateTimeUtc":"2026-07-26T09:48:06.4583673Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T09:28:06.463Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T09:28:06.836Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T09:28:07.290Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T09:28:07.296Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T09:28:07.298Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T09:33:19.142Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T09:33:19.143Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T09:33:19.644Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T09:33:19.654Z | INFO | SETTINGS:CHANGED | Setting 'FeatureFlags' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-26T09:45:00.944Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T09:45:00.944Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T09:45:00.945Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T09:45:01.622Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T09:45:02.036Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T09:45:02.041Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T09:45:02.043Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T10:00:31.055Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T10:00:31.463Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T10:00:31.464Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T10:00:32.561Z | INFO | PROCESS.COMM | Received update state change with status Ready. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T10:00:32.570Z | INFO | PROCESS.COMM | Received update state change with status AutoUpdated. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T10:01:57.633Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T10:01:57.633Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T10:01:57.633Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T10:01:57.633Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T10:01:57.633Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T10:01:57.633Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T10:01:57.693Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T10:01:57.693Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T10:01:58.298Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T10:01:58.299Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T10:01:58.299Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 10:21:58 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T10:01:58.300Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T10:01:58.300Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T10:01:58.304Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '97912Z","ExpirationDateTimeUtc":"2026-07-26T10:21:58.2997912Z"}}' to '97912Z","ExpirationDateTimeUtc":"2026-07-26T10:21:58.2997912Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T10:01:58.304Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T10:01:58.814Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T10:01:59.105Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T10:01:59.110Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T10:01:59.112Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T10:18:54.328Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T10:18:54.329Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T10:35:51.012Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T10:35:51.012Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T10:35:51.012Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T10:35:51.012Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T10:35:51.012Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T10:35:51.012Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T10:35:51.073Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T10:35:51.073Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T10:35:52.259Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T10:35:52.259Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T10:35:52.259Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 10:55:52 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T10:35:52.259Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T10:35:52.259Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T10:35:52.264Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '95053Z","ExpirationDateTimeUtc":"2026-07-26T10:55:52.2595053Z"}}' to '95053Z","ExpirationDateTimeUtc":"2026-07-26T10:55:52.2595053Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T10:35:52.264Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T10:35:52.678Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T10:35:53.144Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T10:35:53.150Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T10:35:53.152Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T10:47:56.422Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-26T10:47:56.422Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-26T10:47:56.422Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-26T10:47:56.423Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T10:47:57.206Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T10:47:57.207Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-26T10:47:57.209Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-26T10:47:57.209Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-26T10:47:57.210Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-26T10:52:47.698Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T10:52:47.698Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T10:54:45.599Z | INFO | TELEMETRY | 1 statistical events are now queued. | {"Caller":"StatisticEventSenderBase.EnqueueAsync:109"} 2026-07-26T10:54:45.599Z | INFO | TELEMETRY | Writing authenticated statistical events file. | {"Caller":"StatisticalEventsFileReaderWriter.SaveAuthenticatedEvents:71"} 2026-07-26T10:54:45.602Z | INFO | TELEMETRY | Writing authenticated statistical events file finished with state 'Success'. | {"Caller":"StatisticalEventsFileReaderWriter.SaveAuthenticatedEvents:73"} 2026-07-26T10:54:45.604Z | INFO | SETTINGS:CHANGED | Setting 'LastSettingsHeartbeatTimeUtc' changed from '"2026-07-25T10:54:45.5988971+00:00"' to '"2026-07-26T10:54:45.6021872+00:00"'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T10:54:45.604Z | INFO | TELEMETRY | Sending 1 statistical events. | {"Caller":"StatisticEventSenderBase.SendAsync:161"} 2026-07-26T10:54:45.604Z | INFO | API:REQUEST | POST "https://185.159.159.148/data/v1/stats/multiple" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T10:54:45.986Z | INFO | API:RESPONSE | POST "https://185.159.159.148/data/v1/stats/multiple": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T10:54:45.986Z | INFO | TELEMETRY | Successfully sent 1 statistical events. Removing them from the queue. | {"Caller":"StatisticEventSenderBase.SendAsync:165"} 2026-07-26T10:54:45.986Z | INFO | TELEMETRY | Removed successfully sent statistical events. 0 events are now queued. | {"Caller":"StatisticEventSenderBase.RemoveSuccessfullySentEventsAsync:202"} 2026-07-26T10:54:45.986Z | INFO | TELEMETRY | Writing authenticated statistical events file. | {"Caller":"StatisticalEventsFileReaderWriter.SaveAuthenticatedEvents:71"} 2026-07-26T10:54:45.987Z | INFO | TELEMETRY | Writing authenticated statistical events file finished with state 'Success'. | {"Caller":"StatisticalEventsFileReaderWriter.SaveAuthenticatedEvents:73"} 2026-07-26T11:09:44.398Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T11:09:44.398Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T11:09:44.398Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T11:09:44.398Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T11:09:44.398Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T11:09:44.398Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T11:09:44.503Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T11:09:44.503Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T11:09:45.038Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T11:09:45.038Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T11:09:45.038Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 11:29:45 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T11:09:45.038Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T11:09:45.038Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T11:09:45.043Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '86545Z","ExpirationDateTimeUtc":"2026-07-26T11:29:45.0386545Z"}}' to '86545Z","ExpirationDateTimeUtc":"2026-07-26T11:29:45.0386545Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T11:09:45.043Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T11:09:45.455Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T11:09:45.976Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T11:09:45.982Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T11:09:45.984Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T11:26:41.075Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T11:26:41.075Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T11:26:41.076Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T11:26:41.545Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T11:26:41.844Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T11:26:41.853Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T11:26:41.866Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T11:36:41.197Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T11:36:41.197Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T11:36:41.197Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T11:36:41.197Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T11:36:41.197Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T11:36:41.337Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T11:36:41.337Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T11:36:42.110Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T11:36:42.110Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T11:36:42.110Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 11:56:42 AM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T11:36:42.110Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T11:36:42.110Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T11:36:42.114Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '05143Z","ExpirationDateTimeUtc":"2026-07-26T11:56:42.1105143Z"}}' to '05143Z","ExpirationDateTimeUtc":"2026-07-26T11:56:42.1105143Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T11:36:42.114Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T11:36:42.670Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T11:43:37.761Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T11:43:37.761Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T11:43:37.761Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T11:43:38.228Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T11:43:38.522Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T11:43:38.528Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T11:43:38.536Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T11:54:04.579Z | INFO | APP | Requesting a VPN plan update (Force request: False) (Minimum request date UTC: 7/26/2026 11:59:28 AM) | {"Caller":"VpnPlanUpdater.EnqueueRequestAsync:84"} 2026-07-26T11:54:04.579Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T11:54:05.235Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T12:00:34.497Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T12:00:34.497Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T12:17:31.145Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T12:17:31.145Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T12:17:31.145Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T12:17:31.145Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T12:17:31.145Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T12:17:31.145Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T12:17:31.250Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T12:17:31.251Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T12:17:31.764Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T12:17:31.764Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T12:17:31.764Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 12:37:31 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T12:17:31.764Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T12:17:31.764Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T12:17:31.769Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '45395Z","ExpirationDateTimeUtc":"2026-07-26T12:37:31.7645395Z"}}' to '45395Z","ExpirationDateTimeUtc":"2026-07-26T12:37:31.7645395Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T12:17:31.769Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T12:17:32.271Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T12:17:32.755Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T12:17:32.760Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T12:17:32.764Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T12:27:16.813Z | INFO | USER.CERT:REFRESH | Requesting a new connection certificate since the current one is considered old. | {"Caller":"ConnectionCertificateManager.LogNewCertificateRequest:146"} 2026-07-26T12:27:16.814Z | INFO | API:REQUEST | POST "https://185.159.159.148/vpn/v1/certificate" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T12:27:17.341Z | INFO | API:RESPONSE | POST "https://185.159.159.148/vpn/v1/certificate": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T12:27:17.354Z | INFO | SETTINGS:CHANGED | Setting 'ConnectionCertificate' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-26T12:27:17.354Z | INFO | USER.CERT:NEW | New connection certificate successfully saved. Expires at 7/27/2026 12:27:17 PM +00:00. | {"Caller":"ConnectionCertificateManager.RequestConnectionCertificateAsync:209"} 2026-07-26T12:34:27.828Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T12:34:27.828Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T12:34:27.828Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T12:34:28.348Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T12:34:28.998Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T12:34:29.004Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T12:34:29.006Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T12:51:24.529Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T12:51:24.529Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T12:51:24.530Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T12:51:24.530Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T12:51:24.530Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T12:51:24.530Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T12:51:24.675Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T12:51:24.675Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T12:51:25.376Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T12:51:25.377Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T12:51:25.377Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 1:11:25 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T12:51:25.377Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T12:51:25.377Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T12:51:25.382Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '74399Z","ExpirationDateTimeUtc":"2026-07-26T13:11:25.3774399Z"}}' to '74399Z","ExpirationDateTimeUtc":"2026-07-26T13:11:25.3774399Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T12:51:25.382Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T12:51:26.152Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T12:51:27.724Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T12:51:27.730Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T12:51:27.735Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T13:08:21.212Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T13:08:21.212Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T13:08:21.212Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T13:08:21.617Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T13:08:22.051Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T13:08:22.058Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T13:08:22.066Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T13:25:17.900Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T13:25:17.901Z | INFO | APP | Server cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:74"} 2026-07-26T13:25:17.901Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T13:25:17.901Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T13:25:17.901Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T13:25:17.901Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T13:25:18.040Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T13:25:18.041Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T13:25:18.523Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T13:25:18.523Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T13:25:18.523Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 1:45:18 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T13:25:18.523Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T13:25:18.523Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T13:25:18.528Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '523547Z","ExpirationDateTimeUtc":"2026-07-26T13:45:18.523547Z"}}' to '523547Z","ExpirationDateTimeUtc":"2026-07-26T13:45:18.523547Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T13:25:18.528Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/servers-count" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T13:25:18.529Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/logicals?SignServer=Server.EntryIP,Server.Label&SecureCoreFilter=all&WithState=true&WithEntriesForProtocols=WireGuardUDP,WireGuardTCP,WireGuardTLS,OpenVPNUDP,OpenVPNTCP" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T13:25:18.937Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/logicals?SignServer=Server.EntryIP,Server.Label&SecureCoreFilter=all&WithState=true&WithEntriesForProtocols=WireGuardUDP,WireGuardTCP,WireGuardTLS,OpenVPNUDP,OpenVPNTCP": 304 NotModified" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T13:25:18.937Z | INFO | API | API: Get servers response was not modified since last call, using cached data. | {"Caller":"ServersCache.UpdateAsync:232"} 2026-07-26T13:25:19.083Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/servers-count": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T13:40:03.266Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T13:40:03.266Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T13:40:03.841Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T13:40:03.852Z | INFO | SETTINGS:CHANGED | Setting 'FeatureFlags' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-26T13:42:14.597Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T13:42:14.597Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T13:45:25.497Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-26T13:45:25.497Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-26T13:45:25.498Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-26T13:45:25.499Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T13:45:25.499Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T13:45:25.499Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T13:45:25.499Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T13:45:25.638Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T13:45:25.638Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T13:45:27.562Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T13:45:27.562Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T13:45:27.562Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 2:05:27 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T13:45:27.562Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T13:45:27.562Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T13:45:27.566Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '26422Z","ExpirationDateTimeUtc":"2026-07-26T14:05:27.5626422Z"}}' to '26422Z","ExpirationDateTimeUtc":"2026-07-26T14:05:27.5626422Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T13:45:27.566Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T13:45:28.123Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T13:45:28.124Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-26T13:45:28.125Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-26T13:45:28.126Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-26T13:45:28.126Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-26T13:51:50.538Z | INFO | SETTINGS | Retrieving Client Config | {"Caller":"ClientConfigObserver.MakeClientConfigRequestAsync:96"} 2026-07-26T13:51:50.538Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/clientconfig" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T13:51:50.974Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/clientconfig": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T13:51:50.977Z | INFO | SETTINGS:CHANGED | Setting 'OpenVpnTcpPorts' changed from '[443,7770,8443]' to '[443,7770,8443]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T13:51:50.979Z | INFO | SETTINGS:CHANGED | Setting 'OpenVpnUdpPorts' changed from '[80,51820,4569,1194,5060]' to '[80,51820,4569,1194,5060]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T13:51:50.980Z | INFO | SETTINGS:CHANGED | Setting 'WireGuardUdpPorts' changed from '[443,88,1224,51820,500,4500]' to '[443,88,1224,51820,500,4500]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T13:51:50.982Z | INFO | SETTINGS:CHANGED | Setting 'WireGuardTcpPorts' changed from '[443]' to '[443]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T13:51:50.984Z | INFO | SETTINGS:CHANGED | Setting 'WireGuardTlsPorts' changed from '[443]' to '[443]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T13:51:50.986Z | INFO | SETTINGS:CHANGED | Setting 'DisabledSmartProtocols' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-26T13:59:11.277Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T13:59:11.278Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T13:59:11.278Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T13:59:11.829Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T13:59:12.199Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T13:59:12.209Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T13:59:12.214Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T14:16:07.974Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T14:16:07.974Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T14:16:07.974Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T14:16:07.974Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T14:16:07.975Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T14:16:07.975Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T14:16:08.111Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T14:16:08.111Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T14:16:08.652Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T14:16:08.653Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T14:16:08.653Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 2:36:08 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T14:16:08.654Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T14:16:08.654Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T14:16:08.658Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '653043Z","ExpirationDateTimeUtc":"2026-07-26T14:36:08.653043Z"}}' to '653043Z","ExpirationDateTimeUtc":"2026-07-26T14:36:08.653043Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T14:16:08.658Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T14:16:09.147Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T14:16:09.641Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T14:16:09.647Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T14:16:09.649Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T14:33:04.667Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T14:33:04.668Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T14:33:04.668Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T14:33:05.160Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T14:33:05.543Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T14:33:05.549Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T14:33:05.551Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T14:50:01.347Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T14:50:01.348Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T14:50:01.348Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T14:50:01.348Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T14:50:01.348Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T14:50:01.348Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T14:50:01.483Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T14:50:01.484Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T14:50:02.320Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T14:50:02.320Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T14:50:02.320Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 3:10:02 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T14:50:02.320Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T14:50:02.320Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T14:50:02.324Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '05776Z","ExpirationDateTimeUtc":"2026-07-26T15:10:02.3205776Z"}}' to '05776Z","ExpirationDateTimeUtc":"2026-07-26T15:10:02.3205776Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T14:50:02.325Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T14:50:02.830Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T14:50:03.211Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T14:50:03.216Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T14:50:03.218Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T15:06:58.028Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T15:06:58.029Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T15:06:58.029Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T15:06:58.538Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T15:06:59.079Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T15:06:59.091Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T15:06:59.101Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T15:23:54.721Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T15:23:54.721Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T15:40:51.413Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T15:40:51.414Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T15:40:51.414Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T15:40:51.414Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T15:40:51.414Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T15:40:51.414Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T15:40:51.498Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T15:40:51.498Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T15:40:52.087Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T15:40:52.088Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T15:40:52.088Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 4:00:52 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T15:40:52.088Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T15:40:52.088Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T15:40:52.092Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '088053Z","ExpirationDateTimeUtc":"2026-07-26T16:00:52.088053Z"}}' to '088053Z","ExpirationDateTimeUtc":"2026-07-26T16:00:52.088053Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T15:40:52.093Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T15:40:52.491Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T15:40:53.024Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T15:40:53.033Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T15:40:53.037Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T15:43:25.317Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T15:43:25.318Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T15:43:26.065Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T15:57:48.099Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T15:57:48.099Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T16:00:32.697Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-26T16:00:32.698Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T16:00:32.699Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-26T16:00:32.699Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-26T16:00:32.701Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-26T16:00:32.702Z | INFO | API | Waiting for 00:00:01.0841893 before retrying GET https://vpn-api.proton.me/vpn/location due to exception A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network.. Retry count: 1. | {"Caller":"RetryPolicyProvider.GetExceptionRetryPolicy:107"} 2026-07-26T16:00:33.798Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T16:00:33.800Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-26T16:00:33.800Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-26T16:00:33.803Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-26T16:00:33.806Z | INFO | API | Waiting for 00:00:02.0622551 before retrying GET https://vpn-api.proton.me/vpn/location due to exception A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network.. Retry count: 2. | {"Caller":"RetryPolicyProvider.GetExceptionRetryPolicy:107"} 2026-07-26T16:00:35.878Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T16:00:35.879Z | ERROR | API:ERROR | GET "https://185.159.159.148/vpn/location" failed: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> A socket operation was attempted to an unreachable network. | {"Caller":"LoggingHandler.LogHttpError:104"} 2026-07-26T16:00:35.879Z | ERROR | API:ERROR | API request 'https://185.159.159.148/vpn/location' failed. | {"Caller":"DnsHandler.SendRequestToIpAddressAsync:98"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) 2026-07-26T16:00:35.881Z | INFO | DNS | Attempt 1 failed for IP 185.159.159.148 | {"Caller":"DnsHandler.SendRequestToDomainAsync:73"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) 2026-07-26T16:00:35.884Z | ERROR | APP | Error occured while fetching device location. | {"Caller":"DeviceLocationObserver.OnTriggerAsync:137"} System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Http.HttpRequestException: A socket operation was attempted to an unreachable network. (185.159.159.148:443) ---> System.Net.Sockets.SocketException (10051): A socket operation was attempted to an unreachable network. at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.LoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToIpAddressAsync(IpAddress ipAddress, HttpRequestMessage request, CancellationToken token) at ProtonVPN.Api.Handlers.DnsHandler.SendRequestToDomainAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.DnsHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.Retries.RetryingHandler.<>c__DisplayClass2_0.<b__0>d.MoveNext() --- End of stack trace from previous location --- at Polly.Timeout.AsyncTimeoutEngine.ImplementationAsync[TResult](Func`3 action, Context context, Func`2 timeoutProvider, TimeoutStrategy timeoutStrategy, Func`5 onTimeoutAsync, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Timeout.AsyncTimeoutEngine.ImplementationAsync[TResult](Func`3 action, Context context, Func`2 timeoutProvider, TimeoutStrategy timeoutStrategy, Func`5 onTimeoutAsync, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy.ExecuteInternalAsync[TResult](Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy.ExecuteInternalAsync[TResult](Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.Retry.AsyncRetryEngine.ImplementationAsync[TResult](Func`3 action, Context context, ExceptionPredicates shouldRetryExceptionPredicates, ResultPredicates`1 shouldRetryResultPredicates, Func`5 onRetryAsync, CancellationToken cancellationToken, Int32 permittedRetryCount, IEnumerable`1 sleepDurationsEnumerable, Func`4 sleepDurationProvider, Boolean continueOnCapturedContext) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at Polly.AsyncPolicy`1.ExecuteInternalAsync(Func`3 action, Context context, Boolean continueOnCapturedContext, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.Retries.RetryingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.OutdatedAppHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.HumanVerificationHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.UnauthorizedResponseHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.CancellingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.SendRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.TrySendRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken) at ProtonVPN.Api.Handlers.AlternativeHostHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at System.Net.Http.HttpClient.g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) at ProtonVPN.Api.ApiClient.SendRequestAsync[T](HttpClient httpClient, HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) --- End of inner exception stack trace --- at ProtonVPN.Api.ApiClient.SendRequestAsync[T](HttpClient httpClient, HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) at ProtonVPN.Api.ApiClient.SendRequestWithNoCacheAsync[T](HttpRequestMessage request, CancellationToken cancellationToken, String logDescription) at ProtonVPN.Api.ApiClient.GetLocationDataAsync() at ProtonVPN.Client.Logic.Servers.Observers.DeviceLocationObserver.OnTriggerAsync() 2026-07-26T16:00:40.893Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-26T16:00:40.893Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T16:00:41.619Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/location": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T16:14:44.797Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T16:14:44.797Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T16:14:44.797Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T16:14:44.797Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T16:14:44.797Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T16:14:44.797Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T16:14:44.874Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T16:14:44.875Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T16:14:46.136Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T16:14:46.137Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T16:14:46.137Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 4:34:46 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T16:14:46.137Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T16:14:46.137Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T16:14:46.141Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '137292Z","ExpirationDateTimeUtc":"2026-07-26T16:34:46.137292Z"}}' to '137292Z","ExpirationDateTimeUtc":"2026-07-26T16:34:46.137292Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T16:14:46.142Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T16:14:46.854Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T16:14:47.439Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T16:14:47.444Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T16:14:47.446Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T16:31:41.477Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T16:31:41.478Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T16:31:41.478Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T16:31:42.316Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T16:31:42.737Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T16:31:42.743Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T16:31:42.745Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T16:42:54.555Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-26T16:42:54.555Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-26T16:42:54.555Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-26T16:42:54.557Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T16:42:54.557Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T16:42:54.557Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T16:42:54.557Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T16:42:54.706Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T16:42:54.707Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T16:42:55.667Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T16:42:55.668Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T16:42:55.668Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 5:02:55 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T16:42:55.668Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T16:42:55.668Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T16:42:55.671Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '81328Z","ExpirationDateTimeUtc":"2026-07-26T17:02:55.6681328Z"}}' to '81328Z","ExpirationDateTimeUtc":"2026-07-26T17:02:55.6681328Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T16:42:55.671Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T16:42:57.010Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T16:42:57.011Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-26T16:42:57.013Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-26T16:42:57.013Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-26T16:42:57.014Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-26T16:48:38.175Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T16:48:38.175Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T16:48:38.175Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T16:48:38.991Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T16:48:39.656Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T16:48:39.662Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T16:48:39.664Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T16:50:16.956Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T16:50:18.053Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T16:50:18.053Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T16:50:18.461Z | INFO | PROCESS.COMM | Received update state change with status Ready. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T16:50:18.480Z | INFO | PROCESS.COMM | Received update state change with status AutoUpdated. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T17:00:09.209Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-26T17:00:09.210Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T17:00:09.696Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/location": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T17:00:12.804Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-26T17:00:12.805Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T17:00:13.391Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/location": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T17:05:34.857Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T17:05:34.857Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T17:05:34.858Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T17:05:34.858Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T17:05:34.858Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T17:05:34.858Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T17:05:34.993Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T17:05:34.993Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T17:05:35.486Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T17:05:35.486Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T17:05:35.486Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 5:25:35 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T17:05:35.486Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T17:05:35.486Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T17:05:35.491Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '66818Z","ExpirationDateTimeUtc":"2026-07-26T17:25:35.4866818Z"}}' to '66818Z","ExpirationDateTimeUtc":"2026-07-26T17:25:35.4866818Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T17:05:35.491Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T17:05:35.864Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T17:05:36.237Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T17:05:36.245Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T17:05:36.247Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T17:22:31.546Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T17:22:31.547Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T17:22:31.547Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T17:22:32.135Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T17:22:32.662Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T17:22:32.677Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T17:22:32.681Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T17:39:28.229Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T17:39:28.233Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T17:39:28.233Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T17:39:28.233Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T17:39:28.233Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T17:39:28.234Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T17:39:28.318Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T17:39:28.318Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T17:39:28.821Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T17:39:28.821Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T17:39:28.821Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 5:59:28 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T17:39:28.821Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T17:39:28.821Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T17:39:28.825Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '13418Z","ExpirationDateTimeUtc":"2026-07-26T17:59:28.8213418Z"}}' to '13418Z","ExpirationDateTimeUtc":"2026-07-26T17:59:28.8213418Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T17:39:28.826Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T17:39:29.365Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T17:39:29.955Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T17:39:29.962Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T17:39:29.964Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T17:46:47.388Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T17:46:47.388Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T17:46:48.028Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T17:46:48.037Z | INFO | SETTINGS:CHANGED | Setting 'FeatureFlags' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-26T17:56:24.931Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T17:56:24.932Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T17:56:24.932Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T17:56:25.404Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T17:56:25.733Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T17:56:25.739Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T17:56:25.748Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T18:13:21.613Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T18:13:21.613Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T18:13:21.613Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T18:13:21.613Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T18:13:21.613Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T18:13:21.613Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T18:13:21.749Z | INFO | DNS:NAME_SERVER | Found 1 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T18:13:21.749Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T18:13:22.235Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T18:13:22.235Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 1200 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T18:13:22.235Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 6:33:22 PM based on a TTL of 00:20:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T18:13:22.235Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T18:13:22.235Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T18:13:22.238Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '53223Z","ExpirationDateTimeUtc":"2026-07-26T18:33:22.2353223Z"}}' to '53223Z","ExpirationDateTimeUtc":"2026-07-26T18:33:22.2353223Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T18:13:22.239Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T18:13:22.718Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T18:13:22.991Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T18:13:22.994Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T18:13:22.995Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T18:18:48.261Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-26T18:18:48.261Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T18:18:48.731Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/location": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T18:18:57.842Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-26T18:18:57.843Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T18:18:58.308Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/location": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T18:19:14.274Z | INFO | SETTINGS | Retrieving current device location | {"Caller":"DeviceLocationObserver.OnTriggerAsync:121"} 2026-07-26T18:19:14.274Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/location" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T18:19:14.946Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/location": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T18:30:18.297Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T18:30:18.297Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T18:30:18.298Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T18:30:18.670Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T18:30:19.113Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T18:30:19.122Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T18:30:19.125Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T18:47:14.991Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T18:47:14.991Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T19:04:11.685Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T19:04:11.685Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T19:04:11.686Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T19:04:11.686Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T19:04:11.686Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T19:04:11.687Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T19:04:11.882Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T19:04:11.882Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T19:04:11.883Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T19:04:11.928Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T19:04:11.928Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 597 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T19:04:11.928Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 7:14:08 PM based on a TTL of 00:09:57. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T19:04:11.929Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T19:04:11.930Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T19:04:11.930Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T19:04:11.935Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '84408Z","ExpirationDateTimeUtc":"2026-07-26T19:14:08.9284408Z"}}' to '84408Z","ExpirationDateTimeUtc":"2026-07-26T19:14:08.9284408Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T19:04:11.935Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T19:04:12.436Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T19:04:12.773Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T19:04:12.782Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T19:04:12.784Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T19:21:08.377Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T19:21:08.377Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T19:38:05.062Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T19:38:05.062Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T19:38:05.062Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T19:38:05.062Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T19:38:05.062Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T19:38:05.062Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T19:38:05.248Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T19:38:05.248Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T19:38:05.249Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T19:38:05.323Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T19:38:05.323Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 683 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T19:38:05.323Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 7:49:28 PM based on a TTL of 00:11:23. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T19:38:05.324Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T19:38:05.325Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T19:38:05.325Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T19:38:05.328Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '36978Z","ExpirationDateTimeUtc":"2026-07-26T19:49:28.3236978Z"}}' to '36978Z","ExpirationDateTimeUtc":"2026-07-26T19:49:28.3236978Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T19:38:05.328Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T19:38:05.808Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T19:38:06.143Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T19:38:06.156Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T19:38:06.159Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T19:40:23.621Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-26T19:40:23.622Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-26T19:40:23.623Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-26T19:40:23.624Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T19:40:24.335Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T19:40:24.336Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-26T19:40:24.338Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-26T19:40:24.338Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-26T19:40:24.339Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-26T19:50:09.445Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T19:50:09.446Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T19:50:09.446Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T19:50:09.446Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T19:50:09.446Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T19:50:09.628Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T19:50:09.628Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T19:50:09.629Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T19:50:09.633Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T19:50:09.633Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 476 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T19:50:09.633Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 7:58:05 PM based on a TTL of 00:07:56. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T19:50:09.634Z | INFO | DNS | The DNS over UDP resolver through '100.100.100.100:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T19:50:09.634Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T19:50:09.634Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T19:50:09.638Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '33944Z","ExpirationDateTimeUtc":"2026-07-26T19:58:05.6333944Z"}}' to '33944Z","ExpirationDateTimeUtc":"2026-07-26T19:58:05.6333944Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T19:50:09.638Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T19:50:10.125Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T19:55:01.748Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T19:55:01.749Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T19:55:01.749Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T19:55:02.142Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T19:55:02.589Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T19:55:02.606Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T19:55:02.610Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T20:11:58.443Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T20:11:58.443Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T20:28:55.126Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T20:28:55.127Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T20:28:55.128Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T20:28:55.128Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T20:28:55.128Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T20:28:55.128Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T20:28:55.242Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T20:28:55.242Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T20:28:55.243Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T20:28:55.320Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T20:28:55.321Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 1138 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T20:28:55.321Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 8:47:53 PM based on a TTL of 00:18:58. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T20:28:55.321Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T20:28:55.322Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T20:28:55.322Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T20:28:55.328Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '11358Z","ExpirationDateTimeUtc":"2026-07-26T20:47:53.3211358Z"}}' to '11358Z","ExpirationDateTimeUtc":"2026-07-26T20:47:53.3211358Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T20:28:55.328Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T20:28:56.110Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T20:28:56.461Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T20:28:56.468Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T20:28:56.476Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T20:45:51.811Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T20:45:51.811Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T20:45:51.812Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T20:45:52.172Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T20:45:52.610Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T20:45:52.618Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T20:45:52.626Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T21:02:48.510Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T21:02:48.510Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T21:02:48.511Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T21:02:48.511Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T21:02:48.511Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T21:02:48.511Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T21:02:48.725Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T21:02:48.725Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T21:02:48.726Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T21:02:53.535Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T21:02:53.536Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 203 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T21:02:53.536Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 9:06:16 PM based on a TTL of 00:03:23. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T21:02:53.536Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T21:02:53.537Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T21:02:53.537Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T21:02:53.540Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '61535Z","ExpirationDateTimeUtc":"2026-07-26T21:06:16.5361535Z"}}' to '61535Z","ExpirationDateTimeUtc":"2026-07-26T21:06:16.5361535Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T21:02:53.540Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T21:02:54.536Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T21:02:55.382Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T21:02:55.394Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T21:02:55.397Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T21:19:45.196Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T21:19:45.196Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T21:19:45.197Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T21:19:45.197Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T21:19:45.197Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T21:19:45.197Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T21:19:45.384Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T21:19:45.384Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T21:19:45.385Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T21:19:45.422Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T21:19:45.423Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 408 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T21:19:45.423Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 9:26:33 PM based on a TTL of 00:06:48. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T21:19:45.424Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T21:19:45.424Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T21:19:45.424Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T21:19:45.431Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '423516Z","ExpirationDateTimeUtc":"2026-07-26T21:26:33.423516Z"}}' to '423516Z","ExpirationDateTimeUtc":"2026-07-26T21:26:33.423516Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T21:19:45.431Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T21:19:45.797Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T21:19:46.266Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T21:19:46.272Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T21:19:46.273Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T21:36:41.899Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T21:36:41.900Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T21:36:41.900Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T21:36:41.901Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T21:36:41.901Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T21:36:41.901Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T21:36:42.064Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T21:36:42.064Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T21:36:42.065Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T21:36:42.082Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T21:36:42.082Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 184 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T21:36:42.082Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 9:39:46 PM based on a TTL of 00:03:04. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T21:36:42.083Z | INFO | DNS | The DNS over UDP resolver through '100.100.100.100:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T21:36:42.084Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T21:36:42.084Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T21:36:42.088Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '28344Z","ExpirationDateTimeUtc":"2026-07-26T21:39:46.0828344Z"}}' to '28344Z","ExpirationDateTimeUtc":"2026-07-26T21:39:46.0828344Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T21:36:42.088Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T21:36:42.486Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T21:36:42.919Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T21:36:42.924Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T21:36:42.926Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T21:53:31.511Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T21:53:31.511Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T21:53:31.511Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T21:53:31.511Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T21:53:31.511Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T21:53:31.696Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T21:53:31.696Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T21:53:31.698Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T21:53:31.991Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T21:53:31.992Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 1027 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T21:53:31.993Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 10:10:38 PM based on a TTL of 00:17:07. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T21:53:31.994Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T21:53:31.994Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T21:53:31.995Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T21:53:32.011Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '25319Z","ExpirationDateTimeUtc":"2026-07-26T22:10:38.9925319Z"}}' to '25319Z","ExpirationDateTimeUtc":"2026-07-26T22:10:38.9925319Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T21:53:32.011Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T21:53:32.430Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T21:53:38.573Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T21:53:38.574Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T21:53:38.575Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T21:53:38.702Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T21:53:39.010Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T21:53:39.024Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T21:53:39.027Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T22:10:35.259Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T22:10:35.259Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T22:10:35.260Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T22:10:35.758Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T22:10:36.096Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T22:10:36.102Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T22:10:36.104Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T22:27:31.943Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T22:27:31.944Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T22:37:52.677Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-26T22:37:52.677Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-26T22:37:52.691Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-26T22:37:52.693Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T22:37:52.693Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T22:37:52.693Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T22:37:52.693Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T22:37:52.876Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T22:37:52.876Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T22:37:52.877Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T22:37:53.159Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T22:37:53.159Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 72 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T22:37:53.159Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 10:39:05 PM based on a TTL of 00:01:12. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T22:37:53.159Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T22:37:53.160Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T22:37:53.160Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T22:37:53.163Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '94464Z","ExpirationDateTimeUtc":"2026-07-26T22:39:05.1594464Z"}}' to '94464Z","ExpirationDateTimeUtc":"2026-07-26T22:39:05.1594464Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T22:37:53.163Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T22:37:53.976Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T22:37:53.977Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-26T22:37:53.979Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-26T22:37:53.979Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-26T22:37:53.980Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-26T22:44:28.643Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T22:44:28.643Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T22:44:28.643Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T22:44:28.643Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T22:44:28.643Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T22:44:28.643Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T22:44:28.826Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T22:44:28.826Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T22:44:28.827Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T22:44:28.837Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T22:44:28.837Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 805 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T22:44:28.837Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 10:57:53 PM based on a TTL of 00:13:25. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T22:44:28.838Z | INFO | DNS | The DNS over UDP resolver through '100.100.100.100:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T22:44:28.839Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T22:44:28.839Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T22:44:28.841Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '74993Z","ExpirationDateTimeUtc":"2026-07-26T22:57:53.8374993Z"}}' to '74993Z","ExpirationDateTimeUtc":"2026-07-26T22:57:53.8374993Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T22:44:28.842Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T22:44:29.203Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T22:44:29.626Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T22:44:29.632Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T22:44:29.638Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T23:01:25.327Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T23:01:25.327Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T23:18:22.010Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T23:18:22.011Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T23:18:22.011Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T23:18:22.011Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T23:18:22.011Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T23:18:22.011Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T23:18:22.191Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T23:18:22.191Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T23:18:22.192Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T23:18:22.220Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T23:18:22.220Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 906 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T23:18:22.220Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 11:33:28 PM based on a TTL of 00:15:06. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T23:18:22.221Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T23:18:22.222Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T23:18:22.222Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T23:18:22.226Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '07635Z","ExpirationDateTimeUtc":"2026-07-26T23:33:28.2207635Z"}}' to '07635Z","ExpirationDateTimeUtc":"2026-07-26T23:33:28.2207635Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T23:18:22.226Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T23:18:22.691Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T23:18:23.190Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T23:18:23.196Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T23:18:23.198Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T23:35:18.702Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T23:35:18.702Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-26T23:40:02.838Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T23:40:03.408Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T23:40:03.409Z | INFO | PROCESS.COMM | Received update state change with status Checking. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T23:40:04.346Z | INFO | PROCESS.COMM | Received update state change with status Ready. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T23:40:04.352Z | INFO | PROCESS.COMM | Received update state change with status AutoUpdated. | {"Caller":"ClientControllerListener.StartUpdateStateListenerAsync:144"} 2026-07-26T23:52:15.396Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-26T23:52:15.396Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-26T23:52:15.396Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T23:52:15.396Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T23:52:15.396Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T23:52:15.397Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T23:52:15.541Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T23:52:15.541Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T23:52:15.542Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T23:52:15.856Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T23:52:15.856Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 60 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T23:52:15.856Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/26/2026 11:53:15 PM based on a TTL of 00:01:00. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T23:52:15.857Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T23:52:15.857Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T23:52:15.857Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T23:52:15.863Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '66503Z","ExpirationDateTimeUtc":"2026-07-26T23:53:15.8566503Z"}}' to '66503Z","ExpirationDateTimeUtc":"2026-07-26T23:53:15.8566503Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T23:52:15.864Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T23:52:16.327Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-26T23:52:16.768Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-26T23:52:16.773Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-26T23:52:16.775Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-26T23:56:53.559Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-26T23:56:53.560Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-26T23:56:53.560Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-26T23:56:53.560Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-26T23:56:53.560Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-26T23:56:53.748Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-26T23:56:53.748Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T23:56:53.749Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-26T23:56:53.756Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-26T23:56:53.756Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 922 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-26T23:56:53.756Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/27/2026 12:12:15 AM based on a TTL of 00:15:22. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-26T23:56:53.757Z | INFO | DNS | The DNS over UDP resolver through '100.100.100.100:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-26T23:56:53.757Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-26T23:56:53.757Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-26T23:56:53.758Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '67034Z","ExpirationDateTimeUtc":"2026-07-27T00:12:15.7567034Z"}}' to '67034Z","ExpirationDateTimeUtc":"2026-07-27T00:12:15.7567034Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-26T23:56:53.759Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-26T23:56:54.233Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T00:09:12.096Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-27T00:09:12.096Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-27T00:15:22.527Z | INFO | APP | Requesting a VPN plan update (Force request: False) (Minimum request date UTC: 7/27/2026 12:20:30 AM) | {"Caller":"VpnPlanUpdater.EnqueueRequestAsync:84"} 2026-07-27T00:15:22.527Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-27T00:15:22.528Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-27T00:15:22.528Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-27T00:15:22.528Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-27T00:15:22.673Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-27T00:15:22.673Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T00:15:22.674Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T00:15:22.974Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-27T00:15:22.974Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 6 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-27T00:15:22.974Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/27/2026 12:15:28 AM based on a TTL of 00:00:06. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-27T00:15:22.975Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-27T00:15:22.975Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-27T00:15:22.975Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-27T00:15:22.981Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '42716Z","ExpirationDateTimeUtc":"2026-07-27T00:15:28.9742716Z"}}' to '42716Z","ExpirationDateTimeUtc":"2026-07-27T00:15:28.9742716Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T00:15:22.981Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-27T00:15:23.413Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T00:26:08.773Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-27T00:26:08.774Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-27T00:26:08.774Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-27T00:26:08.775Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-27T00:26:08.775Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-27T00:26:08.775Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-27T00:26:08.965Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-27T00:26:08.965Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T00:26:08.966Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T00:26:08.971Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-27T00:26:08.972Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 555 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-27T00:26:08.972Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/27/2026 12:35:23 AM based on a TTL of 00:09:15. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-27T00:26:08.972Z | INFO | DNS | The DNS over UDP resolver through '100.100.100.100:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-27T00:26:08.973Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-27T00:26:08.973Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-27T00:26:08.976Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '20908Z","ExpirationDateTimeUtc":"2026-07-27T00:35:23.9720908Z"}}' to '20908Z","ExpirationDateTimeUtc":"2026-07-27T00:35:23.9720908Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T00:26:08.977Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-27T00:26:09.419Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T00:26:09.705Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-27T00:26:09.716Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-27T00:26:09.717Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-27T00:43:05.458Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-27T00:43:05.458Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-27T01:00:02.158Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-27T01:00:02.158Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-27T01:00:02.158Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-27T01:00:02.158Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-27T01:00:02.158Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-27T01:00:02.158Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-27T01:00:02.338Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-27T01:00:02.338Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T01:00:02.339Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T01:00:02.625Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-27T01:00:02.626Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 700 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-27T01:00:02.626Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/27/2026 1:11:42 AM based on a TTL of 00:11:40. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-27T01:00:02.627Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-27T01:00:02.628Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-27T01:00:02.628Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-27T01:00:02.632Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '69471Z","ExpirationDateTimeUtc":"2026-07-27T01:11:42.6269471Z"}}' to '69471Z","ExpirationDateTimeUtc":"2026-07-27T01:11:42.6269471Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T01:00:02.632Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-27T01:00:03.147Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T01:00:03.455Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-27T01:00:03.466Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-27T01:00:03.470Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-27T01:16:58.842Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-27T01:16:58.842Z | INFO | APP | No server update needed, using cached servers | {"Caller":"ServersUpdater.UpdateAsync:86"} 2026-07-27T01:33:55.532Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-27T01:33:55.533Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-27T01:33:55.533Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-27T01:33:55.533Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-27T01:33:55.533Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-27T01:33:55.533Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-27T01:33:55.708Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-27T01:33:55.709Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T01:33:55.710Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T01:33:55.746Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-27T01:33:55.746Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 736 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-27T01:33:55.746Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/27/2026 1:46:11 AM based on a TTL of 00:12:16. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-27T01:33:55.747Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-27T01:33:55.747Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-27T01:33:55.747Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-27T01:33:55.751Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '67453Z","ExpirationDateTimeUtc":"2026-07-27T01:46:11.7467453Z"}}' to '67453Z","ExpirationDateTimeUtc":"2026-07-27T01:46:11.7467453Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T01:33:55.751Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-27T01:33:56.218Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T01:33:56.527Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-27T01:33:56.538Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-27T01:33:56.542Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-27T01:35:21.743Z | INFO | APP | Loading announcements from file as the user has none. | {"Caller":"AnnouncementsProvider.LoadFromFileIfEmpty:109"} 2026-07-27T01:35:21.743Z | INFO | APP | Reading announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Read:54"} 2026-07-27T01:35:21.744Z | INFO | APP | Read 0 announcements from file. | {"Caller":"AnnouncementsFileReaderWriter.Read:56"} 2026-07-27T01:35:21.745Z | INFO | API:REQUEST | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-27T01:35:22.464Z | INFO | API:RESPONSE | GET "https://185.159.159.148/core/v4/notifications?FullScreenImageSupport=png&FullScreenImageWidth=1024&FullScreenImageHeight=768": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T01:35:22.465Z | INFO | APP | Writing announcements file. | {"Caller":"AnnouncementsFileReaderWriter.Save:70"} 2026-07-27T01:35:22.466Z | INFO | APP | Writing announcements file finished with state 'Success'. | {"Caller":"AnnouncementsFileReaderWriter.Save:72"} 2026-07-27T01:35:22.467Z | INFO | APP | Reading all announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:62"} 2026-07-27T01:35:22.467Z | INFO | APP | Read 1 announcement files. | {"Caller":"AnnouncementsFileReaderWriter.ReadAllUsers:64"} 2026-07-27T01:50:52.210Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-27T01:50:52.211Z | INFO | APP | Load cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:80"} 2026-07-27T01:50:52.212Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-27T01:50:52.212Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-27T01:50:52.212Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-27T01:50:52.212Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-27T01:50:52.295Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-27T01:50:52.296Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T01:50:52.297Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T01:50:52.327Z | INFO | DNS:RESPONSE | The endpoint '86.96.1.1:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-27T01:50:52.328Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '86.96.1.1:53'. TTL is 184 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-27T01:50:52.328Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/27/2026 1:53:56 AM based on a TTL of 00:03:04. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-27T01:50:52.329Z | INFO | DNS | The DNS over UDP resolver through '100.100.100.100:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-27T01:50:52.329Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-27T01:50:52.329Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-27T01:50:52.333Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '81976Z","ExpirationDateTimeUtc":"2026-07-27T01:53:56.3281976Z"}}' to '81976Z","ExpirationDateTimeUtc":"2026-07-27T01:53:56.3281976Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T01:50:52.333Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-27T01:50:52.781Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/status/J_RuwddWt9IrMgLT3sGO2ULjWC0aPFNxckR2Tzfbi0V0iX5mvEB5GJfLs0GOf9tJ2xv8dtD0uSKg7NzLRXLKEg==/binary": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T01:50:53.072Z | INFO | APP | Writing servers file. | {"Caller":"ServersFileReaderWriter.Save:62"} 2026-07-27T01:50:53.078Z | INFO | APP | Writing servers file finished with state 'Success'. | {"Caller":"ServersFileReaderWriter.Save:64"} 2026-07-27T01:50:53.080Z | INFO | APP | Using cached location names for language 'en-US'. | {"Caller":"LocationNamesProvider.RefreshAsync:96"} 2026-07-27T02:00:15.628Z | INFO | SETTINGS | Fetching feature flags | {"Caller":"FeatureFlagsObserver.UpdateFeatureFlagsAsync:115"} 2026-07-27T02:00:15.628Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-27T02:00:15.628Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-27T02:00:15.628Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-27T02:00:15.628Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-27T02:00:15.831Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-27T02:00:15.831Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T02:00:15.832Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T02:00:16.159Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-27T02:00:16.159Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 781 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-27T02:00:16.159Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/27/2026 2:13:17 AM based on a TTL of 00:13:01. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-27T02:00:16.160Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-27T02:00:16.160Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-27T02:00:16.161Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-27T02:00:16.167Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '98894Z","ExpirationDateTimeUtc":"2026-07-27T02:13:17.1598894Z"}}' to '98894Z","ExpirationDateTimeUtc":"2026-07-27T02:13:17.1598894Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T02:00:16.167Z | INFO | API:REQUEST | GET "https://185.159.159.148/feature/v2/frontend" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-27T02:00:16.532Z | INFO | API:RESPONSE | GET "https://185.159.159.148/feature/v2/frontend": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T02:00:16.538Z | INFO | SETTINGS:CHANGED | Setting 'FeatureFlags' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"} 2026-07-27T02:07:48.912Z | INFO | APP | Server update requested | {"Caller":"ServersUpdater.UpdateAsync:62"} 2026-07-27T02:07:48.912Z | INFO | APP | Server cache is outdated, updating | {"Caller":"ServersUpdater.UpdateAsync:74"} 2026-07-27T02:07:48.912Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/servers-count" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-27T02:07:48.914Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/logicals?SignServer=Server.EntryIP,Server.Label&SecureCoreFilter=all&WithState=true&WithEntriesForProtocols=WireGuardUDP,WireGuardTCP,WireGuardTLS,OpenVPNUDP,OpenVPNTCP" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-27T02:07:49.265Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/servers-count": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T02:07:49.401Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/logicals?SignServer=Server.EntryIP,Server.Label&SecureCoreFilter=all&WithState=true&WithEntriesForProtocols=WireGuardUDP,WireGuardTCP,WireGuardTLS,OpenVPNUDP,OpenVPNTCP": 304 NotModified" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T02:07:49.401Z | INFO | API | API: Get servers response was not modified since last call, using cached data. | {"Caller":"ServersCache.UpdateAsync:232"} 2026-07-27T02:24:08.612Z | INFO | SETTINGS | Retrieving Client Config | {"Caller":"ClientConfigObserver.MakeClientConfigRequestAsync:96"} 2026-07-27T02:24:08.612Z | INFO | DNS | No fresh IP addresses for host 'vpn-api.proton.me' were found in the cache. Triggering a refresh. | {"Caller":"ARecordDnsManagerBase.ResolveOrGetFromCacheAsync:93"} 2026-07-27T02:24:08.613Z | INFO | DNS | Attempting a UDP DNS request for host 'vpn-api.proton.me'. | {"Caller":"DnsManager.ResolveDnsAsync:66"} 2026-07-27T02:24:08.613Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.ResolveAsync:63"} 2026-07-27T02:24:08.613Z | INFO | DNS:NAME_SERVER | Getting name servers from available network interfaces. | {"Caller":"NameServersLoader.Get:45"} 2026-07-27T02:24:08.784Z | INFO | DNS:NAME_SERVER | Found 2 name servers. | {"Caller":"NameServersLoader.Get:61"} 2026-07-27T02:24:08.784Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '100.100.100.100:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T02:24:08.785Z | INFO | DNS:RESOLVE | Attempting to resolve host 'vpn-api.proton.me' through '86.96.1.1:53'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:84"} 2026-07-27T02:24:09.073Z | INFO | DNS:RESPONSE | The endpoint '100.100.100.100:53' responded successfully to the DNS query of host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.ResolveAsync:122"} 2026-07-27T02:24:09.073Z | INFO | DNS:RESPONSE | 1 records were received for host 'vpn-api.proton.me' with DNS over UDP endpoint '100.100.100.100:53'. TTL is 745 seconds. | {"Caller":"DnsOverUdpResolver.ResolveAsync:129"} 2026-07-27T02:24:09.073Z | INFO | DNS:RESPONSE | Created DNS response entity for host 'vpn-api.proton.me' with 1 IP addresses and an expiration date in UTC of 7/27/2026 2:36:34 AM based on a TTL of 00:12:25. | {"Caller":"DnsResolverBase.CreateDnsResponseWithIpAddresses:181"} 2026-07-27T02:24:09.074Z | INFO | DNS | The DNS over UDP resolver through '86.96.1.1:53' was canceled when resolving host 'vpn-api.proton.me'. | {"Caller":"DnsOverUdpResolver.TryResolveAsync:94"} 2026-07-27T02:24:09.074Z | INFO | DNS:RESPONSE | Successfully resolved host 'vpn-api.proton.me'. | {"Caller":"DnsResolverBase.LogResult:80"} 2026-07-27T02:24:09.075Z | INFO | DNS | The UDP DNS request was successful for host 'vpn-api.proton.me'. Saving to cache. | {"Caller":"DnsManager.ResolveDnsAsync:71"} 2026-07-27T02:24:09.079Z | INFO | SETTINGS:CHANGED | Setting 'DnsCache' changed from '33463Z","ExpirationDateTimeUtc":"2026-07-27T02:36:34.0733463Z"}}' to '33463Z","ExpirationDateTimeUtc":"2026-07-27T02:36:34.0733463Z"}}'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T02:24:09.079Z | INFO | API:REQUEST | GET "https://185.159.159.148/vpn/v2/clientconfig" | {"Caller":"LoggingHandler.LogHttpRequest:88"} 2026-07-27T02:24:09.666Z | INFO | API:RESPONSE | GET "https://185.159.159.148/vpn/v2/clientconfig": 200 OK" | {"Caller":"LoggingHandler.LogHttpResponse:96"} 2026-07-27T02:24:09.670Z | INFO | SETTINGS:CHANGED | Setting 'OpenVpnTcpPorts' changed from '[443,7770,8443]' to '[443,7770,8443]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T02:24:09.672Z | INFO | SETTINGS:CHANGED | Setting 'OpenVpnUdpPorts' changed from '[80,51820,4569,1194,5060]' to '[80,51820,4569,1194,5060]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T02:24:09.674Z | INFO | SETTINGS:CHANGED | Setting 'WireGuardUdpPorts' changed from '[443,88,1224,51820,500,4500]' to '[443,88,1224,51820,500,4500]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T02:24:09.676Z | INFO | SETTINGS:CHANGED | Setting 'WireGuardTcpPorts' changed from '[443]' to '[443]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T02:24:09.678Z | INFO | SETTINGS:CHANGED | Setting 'WireGuardTlsPorts' changed from '[443]' to '[443]'. | {"Caller":"SettingsCacheBase.LogChangeUnencrypted:334"} 2026-07-27T02:24:09.681Z | INFO | SETTINGS:CHANGED | Setting 'DisabledSmartProtocols' changed (encrypted). | {"Caller":"SettingsCacheBase.LogChange:321"}