--- title: "Configure Clients" description: "Configure Olm for connecting to Pangolin clients" --- ## Mac and Windows Each respective client has a preferences window with all currently available configuration parameters like DNS override and preferred DNS servers. In your desktop client, click the menu bar or system tray icon, select More in the menu, and click Preferences. ## Pangolin CLI Refer to the [documentation in the official repository](https://github.com/fosrl/cli/blob/main/docs/pangolin.md) for the available commands, default values, and more. ## Olm CLI ### Flags Olm ID generated by Pangolin to identify the client. **Example**: `31frd0uzbjvp721` A unique secret used to authenticate the client ID with the websocket. **Example**: `h51mmlknrvrwv8s4r1i210azhumt6isgbpyavxodibx1k2d6` Keep this secret private and secure. It's used for authentication. The endpoint where both Gerbil and Pangolin reside for websocket connections. **Example**: `https://pangolin.example.com` MTU for the WireGuard interface. **Default**: `1280` DNS server to use for resolving the endpoint. **Default**: `8.8.8.8` The log level to use for Olm output. **Options**: `DEBUG`, `INFO`, `WARN`, `ERROR`, `FATAL` **Default**: `INFO` Interval for pinging the server. **Default**: `3s` Timeout for each ping. **Default**: `5s` Enable NAT hole punching mode instead of relaying through the VPS. **Default**: `false` Path to a configuration file containing the same arguments as command line. **Example**: `/etc/olm/config.yaml` ### Environment Variables All CLI arguments can be set using environment variables as an alternative to command line flags. Environment variables are particularly useful when running Olm in containerized environments. When both environment variables and CLI arguments are provided, CLI arguments take precedence. Endpoint of your Pangolin server (equivalent to `--endpoint`) Olm ID generated by Pangolin (equivalent to `--id`) Olm secret for authentication (equivalent to `--secret`) MTU for the WireGuard interface (equivalent to `--mtu`) **Default**: `1280` DNS server to use for resolving the endpoint (equivalent to `--dns`) **Default**: `8.8.8.8` Log level (equivalent to `--log-level`) **Default**: `INFO` Interval for pinging the server (equivalent to `--ping-interval`) **Default**: `3s` Timeout for each ping (equivalent to `--ping-timeout`) **Default**: `5s` Enable NAT hole punching mode (equivalent to `--holepunch`) **Default**: `false` Path to health file for connection monitoring (equivalent to `--health-file`) Load the config from this file instead of command line arguments (equivalent to `--config-file`)