Skip to content

protonvpn-gui: issues connecting to VPN regardless of protocal. #425431

Description

@vendion

Nixpkgs version

  • Unstable (25.11)

Describe the bug

Using protonvpn-gui version 4.9.6, I am unable to get a successful connection to a VPN server regardless of the protocol being used. When using OpenVPN (both TCP and UDP), when I try to connect I get the following error pop up:

We're sorry, an unexpected error occured. Please try again.

Looking at the log output I see the following

vendion on vili ~ took 0s
✗ protonvpn-app
2025-07-15T13:22:20.227662+00:00 | proton.vpn.core.connection:472 | INFO | CONN:STATE_CHANGED | Disconnected (initial state)
2025-07-15T13:22:20.230266+00:00 | proton.vpn.app.gtk.app:57 | INFO | APP:PROCESS_START | self=<app.App object at 0x7fc5627c6000 (proton+vpn+app+gtk+app+App at 0x2a516300)>
2025-07-15T13:22:20.440150+00:00 | proton.vpn.core.refresher.vpn_data_refresher:167 | INFO | APP.VPN_DATA_REFRESHER:ENABLE | VPN data refresher service enabled.
2025-07-15T13:22:20.440325+00:00 | proton.vpn.core.refresher.vpn_data_refresher:175 | INFO | Next client config refresh scheduled in 2:27:17.775208
2025-07-15T13:22:20.440435+00:00 | proton.vpn.core.refresher.vpn_data_refresher:184 | INFO | Next server list refresh scheduled in 0:10:11.915821
2025-07-15T13:22:20.440967+00:00 | proton.vpn.core.refresher.vpn_data_refresher:193 | INFO | Next certificate refresh scheduled in 5 days, 5:34:16.559075
2025-07-15T13:22:20.441068+00:00 | proton.vpn.core.refresher.vpn_data_refresher:202 | INFO | Next feature flags refresh scheduled in 1:46:39.292900
2025-07-15T13:22:20.602247+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:95 | INFO | VPN reconnector enabled.
2025-07-15T13:22:20.904724+00:00 | proton.vpn.app.gtk.controller:147 | INFO | APP.STARTUP:STARTUP_ACTIONS | Running startup actions
2025-07-15T13:22:20.904902+00:00 | proton.vpn.app.gtk.widgets.vpn.vpn_widget:199 | INFO | APP.VPN:WIDGET_READY | VPN widget is ready (load time: 0.46 seconds)
2025-07-15T13:22:20.908244+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:175 | INFO | Network connectivity was detected.
2025-07-15T13:22:49.996490+00:00 | proton.vpn.app.gtk.widgets.vpn.quick_connect_widget:104 | INFO | UI.TRAY:CONNECT | Connect to fastest server
2025-07-15T13:22:50.259605+00:00 | proton.vpn.core.connection:370 | INFO | CONN.CONNECT:START | Server: US-GA#530 / Domain: node-us-397.protonvpn.net / IP: 89.222.103.2 / OpenVPN Ports: ProtocolPorts(udp=[80, 51820, 4569, 1194, 5060], tcp=[443, 7770, 8443]) / WireGuard Ports: ProtocolPorts(udp=[443, 88, 1224, 51820, 500, 4500], tcp=[443]) / Protocol: openvpn-tcp / Backend: None
2025-07-15T13:22:50.261742+00:00 | proton.vpn.core.connection:384 | INFO | Using certificate based authentication for openvpn: True
2025-07-15T13:22:50.262506+00:00 | proton.vpn.core.connection:472 | INFO | CONN:STATE_CHANGED | Connecting
2025-07-15T13:22:50.815749+00:00 | proton.vpn.backend.linux.networkmanager.core.networkmanager:91 | INFO | VPN server REACHABLE.
2025-07-15T13:22:50.829507+00:00 | proton.vpn.app.gtk.utils.exception_handler:257 | CRITICAL | APP:CRASH | Unexpected error.
Traceback (most recent call last):
  File "/nix/store/djck7mx6jad1w0yy6zings96dyxanls6-python3-3.13.5/lib/python3.13/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "/nix/store/djck7mx6jad1w0yy6zings96dyxanls6-python3-3.13.5/lib/python3.13/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/nix/store/rl7xcad3vw7mffcl85bkb7k52sfj4glc-python3.13-proton-vpn-api-core-0.42.4/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 394, in connect
    await self._on_connection_event(
        events.Up(events.EventContext(connection=connection))
    )
  File "/nix/store/rl7xcad3vw7mffcl85bkb7k52sfj4glc-python3.13-proton-vpn-api-core-0.42.4/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 463, in _on_connection_event
    event = await self._handle_on_event(event)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/rl7xcad3vw7mffcl85bkb7k52sfj4glc-python3.13-proton-vpn-api-core-0.42.4/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 448, in _handle_on_event
    return await self._update_state(new_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/rl7xcad3vw7mffcl85bkb7k52sfj4glc-python3.13-proton-vpn-api-core-0.42.4/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 485, in _update_state
    new_event = await self._current_state.run_tasks()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/rl7xcad3vw7mffcl85bkb7k52sfj4glc-python3.13-proton-vpn-api-core-0.42.4/lib/python3.13/site-packages/proton/vpn/connection/states.py", line 245, in run_tasks
    await self.context.connection.start()
  File "/nix/store/6bl4psjlgmj7g6qfs0vkpfainlr088fh-python3.13-proton-vpn-network-manager-0.12.13/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/core/networkmanager.py", line 98, in start
    future_connection = self.setup()  # Creates the network manager connection.
  File "/nix/store/6bl4psjlgmj7g6qfs0vkpfainlr088fh-python3.13-proton-vpn-network-manager-0.12.13/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/protocol/openvpn/openvpn.py", line 220, in setup
    self._generate_connection(passphrase)
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/nix/store/6bl4psjlgmj7g6qfs0vkpfainlr088fh-python3.13-proton-vpn-network-manager-0.12.13/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/protocol/openvpn/openvpn.py", line 234, in _generate_connection
    self.connection = self._import_vpn_config(vpnconfig)
                      ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/nix/store/6bl4psjlgmj7g6qfs0vkpfainlr088fh-python3.13-proton-vpn-network-manager-0.12.13/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/core/networkmanager.py", line 272, in _import_vpn_config
    raise NotImplementedError(
        "Support for given configuration is not implemented"
    )
NotImplementedError: Support for given configuration is not implemented
2025-07-15T13:22:50.938601+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7fc54871c980>: Failed to resolve 'vpn-api.proton.me' ([Errno -2] Name or service not known)")':/core/v4/reports/sentry/api/25/envelope/
2025-07-15T13:22:50.939388+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7fc5488f1950>: Failed to resolve 'vpn-api.proton.me' ([Errno -2] Name or service not known)")':/core/v4/reports/sentry/api/25/envelope/
2025-07-15T13:22:50.940057+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7fc5488f1d10>: Failed to resolve 'vpn-api.proton.me' ([Errno -2] Name or service not known)")':/core/v4/reports/sentry/api/25/envelope/
2025-07-15T13:22:50.941087+00:00 | sentry_sdk.errors:232 | ERROR | Internal error in sentry_sdk
Traceback (most recent call last):
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connection.py", line 198, in _new_conn
    sock = connection.create_connection(
        (self._dns_host, self.port),
    ...<2 lines>...
        socket_options=self.socket_options,
    )
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/util/connection.py", line 60, in create_connection
    for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
               ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/djck7mx6jad1w0yy6zings96dyxanls6-python3-3.13.5/lib/python3.13/socket.py", line 977, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
               ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
socket.gaierror: [Errno -2] Name or service not known

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    response = self._make_request(
        conn,
    ...<10 lines>...
        **response_kw,
    )
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connectionpool.py", line 488, in _make_request
    raise new_e
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connectionpool.py", line 464, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connectionpool.py", line 1093, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connection.py", line 704, in connect
    self.sock = sock = self._new_conn()
                       ~~~~~~~~~~~~~~^^
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connection.py", line 205, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0x7fc5488f1e50>: Failed to resolve 'vpn-api.proton.me' ([Errno -2] Name or service notknown)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/nix/store/7yizxz03wjnl3sb1mklnibwq01khcc7i-python3.13-sentry-sdk-2.25.0/lib/python3.13/site-packages/sentry_sdk/transport.py", line 563, in send_envelope_wrapper
    self._send_envelope(envelope)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "/nix/store/7yizxz03wjnl3sb1mklnibwq01khcc7i-python3.13-sentry-sdk-2.25.0/lib/python3.13/site-packages/sentry_sdk/transport.py", line 497, in _send_envelope
    self._send_request(
    ~~~~~~~~~~~~~~~~~~^
        body.getvalue(),
        ^^^^^^^^^^^^^^^^
    ...<2 lines>...
        envelope=envelope,
        ^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/nix/store/7yizxz03wjnl3sb1mklnibwq01khcc7i-python3.13-sentry-sdk-2.25.0/lib/python3.13/site-packages/sentry_sdk/transport.py", line 349, in _send_request
    response = self._request(
        "POST",
    ...<2 lines>...
        headers,
    )
  File "/nix/store/7yizxz03wjnl3sb1mklnibwq01khcc7i-python3.13-sentry-sdk-2.25.0/lib/python3.13/site-packages/sentry_sdk/transport.py", line 713, in _request
    return self._pool.request(
           ~~~~~~~~~~~~~~~~~~^
        method,
        ^^^^^^^
    ...<2 lines>...
        headers=headers,
        ^^^^^^^^^^^^^^^^
    )
    ^
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/_request_methods.py", line 143, in request
    return self.request_encode_body(
           ~~~~~~~~~~~~~~~~~~~~~~~~^
        method, url, fields=fields, headers=headers, **urlopen_kw
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/_request_methods.py", line 278, in request_encode_body
    return self.urlopen(method, url, **extra_kw)
           ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/poolmanager.py", line 443, in urlopen
    response = conn.urlopen(method, u.request_uri, **kw)
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connectionpool.py", line 871, in urlopen
    return self.urlopen(
           ~~~~~~~~~~~~^
        method,
        ^^^^^^^
    ...<13 lines>...
        **response_kw,
        ^^^^^^^^^^^^^^
    )
    ^
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connectionpool.py", line 871, in urlopen
    return self.urlopen(
           ~~~~~~~~~~~~^
        method,
        ^^^^^^^
    ...<13 lines>...
        **response_kw,
        ^^^^^^^^^^^^^^
    )
    ^
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connectionpool.py", line 871, in urlopen
    return self.urlopen(
           ~~~~~~~~~~~~^
        method,
        ^^^^^^^
    ...<13 lines>...
        **response_kw,
        ^^^^^^^^^^^^^^
    )
    ^
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/connectionpool.py", line 841, in urlopen
    retries = retries.increment(
        method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
    )
  File "/nix/store/hhxqjpinyvfkpy2zjarx2rmx0asch4wk-python3.13-urllib3-2.4.0/lib/python3.13/site-packages/urllib3/util/retry.py", line 519, in increment
    raise MaxRetryError(_pool, url, reason) from reason  # type: ignore[arg-type]
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='vpn-api.proton.me', port=443): Max retries exceeded with url: /core/v4/reports/sentry/api/25/envelope/ (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7fc5488f1e50>: Failed to resolve 'vpn-api.proton.me' ([Errno -2] Name or service not known)"))
2025-07-15T13:22:56.077674+00:00 | proton.vpn.app.gtk.widgets.vpn.connection_status_widget:81 | INFO | UI:DISCONNECT | Disconnect from VPN
2025-07-15T13:22:56.078214+00:00 | proton.vpn.core.connection:472 | INFO | CONN:STATE_CHANGED | Disconnecting
2025-07-15T13:22:56.078515+00:00 | proton.vpn.core.connection:472 | INFO | CONN:STATE_CHANGED | Disconnected
2025-07-15T13:22:56.078968+00:00 | proton.vpn.connection.persistence:112 | WARNING | CONN.PERSISTENCE:REMOVE | Connection persistence not found when trying to remove it: /home/vendion/.cache/Proton/VPN/connection/connection_persistence.json
2025-07-15T13:22:56.277820+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:216 | INFO | VPN connection is disconnected.
2025-07-15T13:24:14.355747+00:00 | proton.vpn.connection.states:131 | WARNING | CONN:WARNING | DISCONNECTED state received unexpected event: Down
2025-07-15T13:24:14.356240+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:102 | INFO | VPN reconnector disabled.
2025-07-15T13:24:14.356697+00:00 | proton.vpn.core.refresher.vpn_data_refresher:161 | INFO | APP.VPN_DATA_REFRESHER:DISABLE | VPN data refresher service disabled.

vendion on vili ~ took 1m55s
➜ ping vpn-api.proton.me
PING vpn-api.proton.me (185.159.159.148) 56(84) bytes of data.
64 bytes from 185.159.159.148: icmp_seq=1 ttl=41 time=174 ms
64 bytes from 185.159.159.148: icmp_seq=2 ttl=40 time=174 ms
64 bytes from 185.159.159.148: icmp_seq=3 ttl=40 time=153 ms
64 bytes from 185.159.159.148: icmp_seq=4 ttl=40 time=224 ms
^C
--- vpn-api.proton.me ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 7226ms
rtt min/avg/max/mdev = 153.276/181.466/224.373/26.191 ms

When using the wireguard protocal, it connects but no traffic gets routed out. From the protonvpn app I get the following output:

vendion on vili ~ took 7s
➜ protonvpn-app
2025-07-15T13:39:29.055331+00:00 | proton.vpn.core.connection:472 | INFO | CONN:STATE_CHANGED | Disconnected (initial state)
2025-07-15T13:39:29.069124+00:00 | proton.vpn.app.gtk.app:57 | INFO | APP:PROCESS_START | self=<app.App object at 0x7faed7023f40 (proton+vpn+app+gtk+app+App at 0x198a4940)>
2025-07-15T13:39:29.328061+00:00 | proton.vpn.core.refresher.vpn_data_refresher:167 | INFO | APP.VPN_DATA_REFRESHER:ENABLE | VPN data refresher service enabled.
2025-07-15T13:39:29.328359+00:00 | proton.vpn.core.refresher.vpn_data_refresher:175 | INFO | Next client config refresh scheduled in 2:10:08.887187
2025-07-15T13:39:29.328546+00:00 | proton.vpn.core.refresher.vpn_data_refresher:184 | INFO | Next server list refresh scheduled in 0:05:58.674361
2025-07-15T13:39:29.329319+00:00 | proton.vpn.core.refresher.vpn_data_refresher:193 | INFO | Next certificate refresh scheduled in 5 days, 5:17:07.670757
2025-07-15T13:39:29.329534+00:00 | proton.vpn.core.refresher.vpn_data_refresher:202 | INFO | Next feature flags refresh scheduled in 1:29:30.404471
2025-07-15T13:39:29.572165+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:95 | INFO | VPN reconnector enabled.
2025-07-15T13:39:29.868906+00:00 | proton.vpn.app.gtk.controller:147 | INFO | APP.STARTUP:STARTUP_ACTIONS | Running startup actions
2025-07-15T13:39:29.869065+00:00 | proton.vpn.app.gtk.widgets.vpn.vpn_widget:199 | INFO | APP.VPN:WIDGET_READY | VPN widget is ready (load time: 0.54 seconds)
2025-07-15T13:39:29.872473+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:175 | INFO | Network connectivity was detected.
2025-07-15T13:39:40.042753+00:00 | proton.vpn.app.gtk.widgets.vpn.quick_connect_widget:104 | INFO | UI.TRAY:CONNECT | Connect to fastest server
2025-07-15T13:39:40.380140+00:00 | proton.vpn.core.connection:370 | INFO | CONN.CONNECT:START | Server: US-GA#443 / Domain: node-us-392.protonvpn.net / IP: 89.222.103.1 / OpenVPN Ports: ProtocolPorts(udp=[80, 51820, 4569, 1194, 5060], tcp=[443, 7770, 8443]) / WireGuard Ports: ProtocolPorts(udp=[443, 88, 1224, 51820, 500, 4500], tcp=[443]) / Protocol: wireguard / Backend: None
2025-07-15T13:39:40.391161+00:00 | proton.vpn.core.connection:384 | INFO | Using certificate based authentication for openvpn: True
2025-07-15T13:39:40.445227+00:00 | proton.vpn.core.connection:472 | INFO | CONN:STATE_CHANGED | Connecting
2025-07-15T13:39:40.726643+00:00 | proton.vpn.backend.linux.networkmanager.core.networkmanager:91 | INFO | VPN server REACHABLE.
2025-07-15T13:39:41.548351+00:00 | proton.vpn.backend.linux.networkmanager.core.localagent_mixin:61 | INFO | Waiting for agent status from node-us-392.protonvpn.net...
2025-07-15T13:39:41.814147+00:00 | proton.vpn.backend.linux.networkmanager.core.localagent_mixin:95 | INFO | Requesting VPN connection features...
2025-07-15T13:39:41.814562+00:00 | proton.vpn.local_agent/transport_stream.rs:56 | INFO | Sending: Request { features_set: Some(AgentFeatures { netshield_level: Some(0), randomized_nat: Some(false), split_tcp: Some(true), port_forwarding: Some(true), forwarded_port: None, jail: None, bouncing: Some("14") }), status_get: None }
2025-07-15T13:39:41.814857+00:00 | proton.vpn.backend.linux.networkmanager.core.localagent_mixin:97 | INFO | VPN connection features requested.
2025-07-15T13:39:42.058806+00:00 | proton.vpn.local_agent/transport_stream.rs:80 | INFO | Receiving: Response { status: Some(StatusMessage { state: Connected, reason: None,features: Some(AgentFeatures { netshield_level: Some(0), randomized_nat: Some(true), split_tcp: Some(true), port_forwarding: Some(false), forwarded_port: None, jail: Some(false), bouncing: Some("10") }), connection_details: Some(ConnectionDetails { device_ip: Some("172.56.71.206"), device_country: Some("US"), server_ipv4: Some("185.98.168.12"), server_ipv6: Some("2a02:6ea0:c10d:6064::21") }) }), error: None }
2025-07-15T13:39:42.059303+00:00 | proton.vpn.backend.linux.networkmanager.core.localagent_mixin:102 | INFO | Agent status received: Status { state: CONNECTED, reason: None, features: Some(AgentFeatures { features: AgentFeatures { netshield_level: Some(0), randomized_nat: Some(true), split_tcp: Some(true), port_forwarding: Some(false), forwarded_port: None, jail: Some(false), bouncing: Some("10") } }), connection_details: Some(ConnectionDetails { device_ip: "172.56.71.xxx", device_country: Some("US"), server_ipv4: Some("185.98.168.12"), server_ipv6: Some("2a02:6ea0:c10d:6064::21") }) }
2025-07-15T13:39:42.059802+00:00 | proton.vpn.core.connection:472 | INFO | CONN:STATE_CHANGED | Connected
2025-07-15T13:39:42.218239+00:00 | proton.vpn.local_agent/transport_stream.rs:80 | INFO | Receiving: Response { status: Some(StatusMessage { state: Connected, reason: None,features: Some(AgentFeatures { netshield_level: Some(0), randomized_nat: Some(false), split_tcp: Some(true), port_forwarding: Some(true), forwarded_port: None, jail: Some(false), bouncing: Some("14") }), connection_details: Some(ConnectionDetails { device_ip: Some("172.56.71.206"), device_country: Some("US"), server_ipv4: Some("185.98.168.16"), server_ipv6: Some("2a02:6ea0:c10d:6064::25") }) }), error: None }
2025-07-15T13:39:42.218496+00:00 | proton.vpn.local_agent/port_forwarding.rs:197 | INFO | Sending Request { version: 0, operation: 2, reserved: 0, internal_port: 0, external_port: 0, lifetime_seconds: 60 } attempt 0
2025-07-15T13:39:42.267554+00:00 | proton.vpn.local_agent/port_forwarding.rs:225 | INFO | Receiving Response { version: 0, operation: 130, response_code: 0, gateway_epoch_seconds: 6675472, internal_port: 53126, external_port: 53126, lifetime_seconds: 60 }
2025-07-15T13:39:42.267932+00:00 | proton.vpn.local_agent/listener.rs:102 | INFO | Forwarded port updated.
2025-07-15T13:39:42.268217+00:00 | proton.vpn.backend.linux.networkmanager.core.localagent_mixin:102 | INFO | Agent status received: Status { state: CONNECTED, reason: None, features: Some(AgentFeatures { features: AgentFeatures { netshield_level: Some(0), randomized_nat: Some(false), split_tcp: Some(true), port_forwarding: Some(true), forwarded_port: Some(53126), jail: Some(false), bouncing: Some("14") } }), connection_details: Some(ConnectionDetails { device_ip: "172.56.71.xxx", device_country: Some("US"), server_ipv4: Some("185.98.168.16"), server_ipv6: Some("2a02:6ea0:c10d:6064::25") }) }
2025-07-15T13:39:42.871266+00:00 | proton.vpn.core.connection:472 | INFO | CONN:STATE_CHANGED | Connected
2025-07-15T13:40:17.341694+00:00 | proton.vpn.app.gtk.widgets.vpn.quick_connect_widget:109 | INFO | UI:DISCONNECT | Disconnect from VPN
2025-07-15T13:40:17.342158+00:00 | proton.vpn.core.connection:472 | INFO | CONN:STATE_CHANGED | Disconnecting
2025-07-15T13:40:17.522857+00:00 | proton.vpn.backend.linux.networkmanager.core.local_agent.listener:72 | INFO | Agent listener successfully stopped.
2025-07-15T13:40:17.523135+00:00 | proton.vpn.core.connection:472 | INFO | CONN:STATE_CHANGED | Disconnected
2025-07-15T13:40:17.955742+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:216 | INFO | VPN connection is disconnected.
2025-07-15T13:40:24.676307+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:102 | INFO | VPN reconnector disabled.
2025-07-15T13:40:24.677508+00:00 | proton.vpn.connection.states:131 | WARNING | CONN:WARNING | DISCONNECTED state received unexpected event: Down
2025-07-15T13:40:24.679546+00:00 | proton.vpn.core.refresher.vpn_data_refresher:161 | INFO | APP.VPN_DATA_REFRESHER:DISABLE | VPN data refresher service disabled.

After connecting, if I try to ping a host (both by DNS and IP I have a 100% packet loss rate).

Steps to reproduce

  1. Install pkgs.protonvpn-gui
  2. Login to the app and select a protocol
  3. Try to use the "Quick Connect" option

Expected behaviour

A successful VPN connection and traffic getting routed

Screenshots

No response

Relevant log output

Additional context

It does look like version 4.9.7 was released a month ago, but I don't know if that addresses my issue.

System metadata

vendion on vili ~ took 57s
➜ nix-shell -p nix-info --run "nix-info -m"

  • system: "x86_64-linux"
  • host os: Linux 6.15.6-xanmod1, NixOS, 25.11 (Xantusia), 25.11.20250714.62e0f05
  • multi-user?: yes
  • sandbox: yes
  • version: nix-env (Nix) 2.28.4
  • nixpkgs: /nix/store/n8gf8yr0571s1ld4nr6dmk143iv3rvmh-source

Notify maintainers

@SebTM
@Steinhagen


Note for maintainers: Please tag this issue in your pull request description. (i.e. Resolves #ISSUE.)

I assert that this issue is relevant for Nixpkgs

Is this issue important to you?

Add a 👍 reaction to issues you find important.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions