How to use the Mullvad CLI


Last updated: 16 March 2022

Follow these instructions to use the Mullvad command line interface (CLI) in your operating system's terminal. See also our guide CLI commands for using WireGuard.


If your app isn't up to date, first download the latest version and install it.

Available commands

Open a terminal window and type mullvad to see a full list of subcommands and their usages. Below is a list of the most common ones.

Specify your account

Replace the number string with your Mullvad account number.

mullvad account set 1234123412341234

Type mullvad account to see a list of other account-related commands.

Show account info

This command will show your account number and the expiration date of your account.

mullvad account get

List server locations

This command displays a list of available countries and cities.

mullvad relay list

Select a location

In this example, we are connecting to a server in Sweden (se), in the city of Malmö (mma).

Replace "se" with the country of your choice and, optionally, "mma" with a specific city in that country.

mullvad relay set location se mma

Select a specific server

Replace "se" with the country of your choice and, optionally, "mma" with a specific city in that country and "se-mma-001" with a servername in this group.

mullvad relay set location se mma se-mma-001

Or use this command:

mullvad relay set hostname se-mma-001


Connect to the location that you selected.

mullvad connect


mullvad disconnect

Force an update to the serverlist

mullvad relay update

Check your connection status

mullvad status

Auto-connect on start-up

If you want Mullvad to start and connect when you boot up your computer, use this command.

mullvad auto-connect set on

To turn this off, run

mullvad auto-connect set off

Enable LAN access

mullvad lan set allow

Report a problem

First create an anonymized log file.

mullvad-problem-report collect --output report.log

Before sending it to us, you have the option to view the log file.

Then send the log file.

mullvad-problem-report send --report report.log --email your@email.address --message "Write a description of your problem."

Although optional, we strongly recommend that you include a description of the problem. You also don't need to fill in an email address, but if you want a reply from us, you will need to include one.

Split tunneling (Linux only)

Split tunneling allows you to exclude some apps from the VPN so they will use your regular Internet connection. This will for example allow you to access some websites that are blocking VPN services.

Using mullvad-exclude

To start a new process excluded from Mullvad use this command:

mullvad-exclude <program>

Using mullvad split-tunnel

This command works with the PID (process ID) of a program. To find the PID of a running program use the pgrep Linux command.

To exclude a process from Mullvad that is already running use this command:

mullvad split-tunnel pid add <pid>

To list the PIDs of all the processes that are currently excluded use this command:

mullvad split-tunnel pid list

To restore a previously excluded process use this command:

mullvad split-tunnel pid delete <pid>

To restore all previously excluded processes use this command:

mullvad split-tunnel pid clear

Block ads / trackers / malware

To enable DNS filtering of ads, trackers and/or malware you can use the following commands.

To view the help, use this command:

mullvad dns set default --help

To enable all filters use the follwing command. To enable some filters remove some of the arguments.

mullvad dns set default --block-ads --block-malware --block-trackers

To reset the filtering use this command:

mullvad dns set default

Use custom DNS server

If you set a custom DNS server it will override "Block ads / trackers / malware". You can only use a public DNS server if you use WireGuard protocol, however you can use a local DNS server with OpenVPN protocol.

To set a custom DNS server use the following command and replace with the server IP you want to use.

mullvad dns set custom

To reset the DNS use this command:

mullvad dns set default

Reset settings

This command performs a factory reset on all settings, deletes app logs and cache files, disconnects the app, and logs you out.

mullvad factory-reset

You will be asked to confirm your decision before the reset.