Overview

Kape Desktop CLI Integration

Overview

The Lightway CLI can establish VPN connections and is controlled through a command line interface. In order to establish connections additional information is needed - connection token and location information - which can be retrieved via the Kape Client SDK and needs to be handed over to the Lightway CLI.

The Lightway CLI needs elevated rights to perform its tasks (e.g. establish network connections, maintain routes, etc) and therefore needs to be controlled from a service that runs with elevated rights.

Implementation responsibilities

Feature

3rd Party Client

Lightway CLI

Kape Client SDK / kp_client_sdk

Setup tun device

Connect to VPN server

Disconnect from VPN server

Maintain VPN connection

Reconnect on network change (or no network)

The client has to implement reconnection logic and detection of network changes and availability.

Reconnect on initial connection issue

The client has to monitor Lightway CLI statuses and implement reconnection logic if needed.

Retrieval and fetching of VPN locations/endpoints

The client has to implement the integration between Kape Client SDK and Lightway CLI.

Determine the “best” VPN location for the user

Optional, implemented by the client.

Display the IP when connected to the VPN

Implemented by the client. As lightway uses multiple outgoing IPs and the server switches seamlessly between them for different services only one of the outgoing IPs can be determined and displayed.

User Authorization

Integration with Kape Client API. Handover of access token between Kape Client SDK and Lightway CLI.

Connection Authentication

✅ via access token

Handle routing

Handle DNS

Min OS Support

macOS 10.13 / Windows 10

macOS 10.13 / Windows 10

Last updated