App Support.

We're here to help.

Error: The TAP system extension could not be loaded

There will be an "Error: The TAP system extension could not be loaded." message in the connection log if Viscosity's TAP system extension (kext) fails to load. The TAP system extension is needed to support OpenVPN connections set to use the TAP network interface type. It is not needed for TUN connections, which are the most commonly used.

Please note that this message is different from the "Error: The TAP system extension was blocked from loading." error message. If you are receiving this message please refer to the Error: The TAP system extension was blocked from loading article instead.

Viscosity 1.7.4 introduced the ability to detect if the system extension failed to load. A failure to load is almost always caused be a conflicting system extension, typically from another VPN client or security software. Prior versions of Viscosity may appear to work as they're using the conflicting system extension's TAP support, however this can be a potential security risk and may result in DNS or IP address assignment problems.

The first step to resolving this issue is to try temporarily quitting and/or uninstalling any possible conflicting software and see if the issue persists. If still receiving the error message it may be necessary to manually identify the conflicting system extension and unload it.

To do this type the command kextstat | grep -v into the Terminal application (located at /Applications/Utilities/Terminal) and press Return/Enter. The output will display the bundle identifiers for the loaded non-Apple system extensions, for example Viscosity's is "com.viscosityvpn.Viscosity.tap". If you see an extension listed that may be conflicting, it can be unloaded using the kextunload command, for example kextunload -b com.example.tap.