The IVPN client software has a client-server architecture. The IVPN agent runs as a daemon and is responsible for establishing connections, spawning openvpn processes etc. whilst the client UI that you interact with is a seperate component that communicates with the agent.

In order to implement various security features such as the 'always on' firewall it is important that the agent daemon is always running. This keepalive functionality is configured in the daemons plist file and can be modified to not be persistent by following the instructions below.

Please note that by following the instructions below the always on firewall will no longer function correctly.
  1. Quit the IVPN client by clicking on the menu bar icon and selecting Quit IVPN.
  2. Stop the agent daemon.
    sudo launchctl unload net.ivpn.client.Helper.plist
  3. Edit /Library/LaunchDaemons/net.ivpn.client.Helper.plist and change the KeepAlive key to False.
  4. Start the agent daemon.
    sudo launchctl load net.ivpn.client.Helper.plist
  5. Start the IVPN client. When you next quit the IVPN client the IVPN agent daemon will also be killed.