Problem of the week: I spent an infuriatingly long time trying to set up a VPN connection at work on a new 64-bit laptop I’ve gained using OpenVPN. It (mostly) seemed to install ok, and connect and authenticate with the remote server fine, but it then absolutely refused to set up the TAP connection. Instead, it reached the TAP stage and just gave me a “All TAP-Win32 adapters on this system are currently in use” message every time. Hmmpf. Skip to the bottom for a step by step, but first a semi-ranty explanation.
It turns out there’s a few issues here, exacerbated by what looks like a move to commercialisation in the OpenVPN project, which has moved them from OpenVPN.se to OpenVPN.net.
The core problem is that old versions of OpenVPN don’t work with Windows 7 at all (anything before 2.1, I think), and while >2.1 does work with Windows 7 with some workarounds (see below), my eventual testing makes it look like it doesn’t work properly in 64-bit until 2.1.3. Unfortunately, the old site links to 2.0.9 as the newest stable release, and 2.1_beta as the newest development release. Neither of these work, even though it explicitly says that they should work for 32 and 64 bit windows, and I’m pretty sure it’s because it’s way out of date, and it means XP only.
The new site meanwhile doesn’t link to a list of releases to this product at all, instead only offering ‘OpenVPN Connect’, which is a quite different looking product, and doesn’t seem to work for me probably because of some intricacies to the setup we have here in this office. A bit of research did eventually threw up an old OpenVPN releases page on the new site though, which lists a selection of old versions, including many substantially newer than the old site’s versions, up to 2.1.3 as the most recent (released August 2010), which does work in 64-bit. Eugh.
Possibly useful to somebody: the key difference seems to be that 2.1.3 uses the ‘tap0901’ driver, not the ‘tap0801’ driver, and that’s the one that works in 64-bit.
Anyway, the actual steps to do this:
- If you’ve got any OpenVPN version already installed, run the ‘Delete all TAP ethernet adaptors’ (or similar) script in Start Menu/OpenVPN/Utilities as Administrator (right click, Run as Administrator), and then uninstall it.
- Download the OpenVPN 2.1.3 installer but don’t run it yet!
- Right click the installer in your downloads folder, go to compatibility and set it to Run as Vista (Service Pack 2) and Run as Administrator.
- Run the installer, installing everything in the list (which should include ‘TAP virtual ethernet adaptor’ for this version, not ‘TAP 32-bit adapter’, or similar, like all the others). Note that it can sit on the installing TAP driver stage for quite a few minutes, that seems to be fine, whatever you do don’t stop it.
- This should result in the tray icon starting up all by itself, running as Administrator, since the installer was running as Administrator. To make sure this happens in the future, make sure any shortcuts you might have to the application anywhere (i.e. the start menu shortcuts) also have ‘Run as Administrator’ ticked. At this stage, it should connect correctly.