Daemon Environment Variables
These environment variables control the behavior of the Mullvad VPN daemon.Firewall Configuration
TALPID_FIREWALL_DEBUG
Helps debug firewall rules. Behavior varies by platform:- Linux
- macOS
- Windows
Set to
"1" to add packet counters to all firewall rules.TALPID_FIREWALL_DONT_SET_SRC_VALID_MARK
Set to1 to prevent the daemon from setting the net.ipv4.conf.all.src_valid_mark kernel parameter on Linux.
By default, the daemon sets this kernel parameter to
1 to prevent strict reverse path filtering from blocking relay traffic. Only disable if you understand the implications.TALPID_FIREWALL_DONT_SET_ARP_IGNORE
Set to1 to prevent the daemon from setting the net.ipv4.conf.all.arp_ignore kernel parameter on Linux.
DNS Configuration
TALPID_DNS_MODULE
Override the automatic DNS configuration method detection.- Linux
- Windows
- macOS
Available options:
"static-file"- Modify/etc/resolv.confdirectly"resolvconf"- Use theresolvconfprogram"systemd"- Use systemd’sresolvedservice via DBus"network-manager"- Use NetworkManager via DBus
TALPID_DISABLE_LOCAL_DNS_RESOLVER
Set to1 to disable the local DNS resolver (macOS only).
TALPID_NEVER_FILTER_AAAA_QUERIES
Set to1 to never ignore DNS AAAA queries (macOS only).
WireGuard Configuration
TALPID_FORCE_USERSPACE_WIREGUARD
Forces the daemon to use the userspace implementation of WireGuard instead of the kernel module.Network Monitoring
TALPID_DISABLE_OFFLINE_MONITOR
Forces the daemon to always assume the host is online, disabling network connectivity checks.Split Tunneling (Linux)
TALPID_CGROUP2_FS
Forces the daemon to look for the cgroup2 filesystem at a custom path instead of/sys/fs/cgroup.
TALPID_NET_CLS_MOUNT_DIR
Forces the daemon to mount thenet_cls controller in a specific directory (cgroup v1 systems only).
Access Control
MULLVAD_MANAGEMENT_SOCKET_GROUP
Restricts access to the management interface socket to users in a specific group (Linux and macOS only).By default, everyone has access to the management socket. Use this variable to restrict CLI and GUI access.
Debugging
MULLVAD_BACKTRACE_ON_FAULT
Controls whether the daemon logs a backtrace when encountering a fault (e.g., SIGSEGV).1- Enable backtrace logging0- Disable backtrace logging- Default: Enabled in debug builds, disabled in release builds
File Paths
These environment variables override default file and directory locations:MULLVAD_SETTINGS_DIR
Customize the settings directory location.MULLVAD_LOG_DIR
Customize the log directory location.MULLVAD_CACHE_DIR
Customize the cache directory location.MULLVAD_RPC_SOCKET_PATH
Customize the full path to the RPC socket.Development-Only Variables
MULLVAD_API_HOST
Set the hostname for API requests.MULLVAD_API_ADDR
Set the IP address and port for API requests.MULLVAD_API_DISABLE_TLS
Use plain HTTP for API requests instead of HTTPS.MULLVAD_CONNCHECK_HOST
Set the hostname for connection check requests.MULLVAD_ENABLE_DEV_UPDATES
Enable version checks in development builds.Desktop Frontend Variables
These variables control the Electron desktop application.MULLVAD_PATH
Customize the path to themullvad-problem-report tool when running in development mode.
<repo>/target/debug/.
MULLVAD_DISABLE_UPDATE_NOTIFICATION
Set to1 to disable notifications when updates are available.
Setting Environment Variables
The method for setting environment variables varies by platform:- Windows
- Linux
- macOS
Use Restart the daemon for changes to take effect:
setx from an elevated command prompt:Related Resources
- File Paths - Default and custom file locations
- Settings Management - Configure app settings