TUN/TAPは仮想ネットワークデバイス及びそのデバイスドライバの実装およびデバイス名で、主にUnix系のシステムで利用できる。 実ハードウェアであるネットワークカードと対応しているデバイスドライバと同様にネットワーク通信ができるが、データはハードウェアではなく、ネットワーク通信.
Unfortunately, the Cisco AnyConnect client for Mac conflicts with Pow. And by 'conflicts', I mean it causes a grey-screen-of-death kernel panic anytime you connect to the VPN and Pow is installed.
![Tun Tun](https://www.gns3.com/api/v2/assets/photo/566fcfbb5a0ac59e297e83e0/4.png)
As an alternative, there is OpenConnect, a command-line client for Cisco's AnyConnect SSL VPN.
![Tun/tap driver for os x Tun/tap driver for os x](https://www.securitykiss.com/images/product/l2tpconfig/ipadiphone/l2tp_ipad7.gif)
Here's how to get it set up on Mac OS X:
- OpenConnect can be installed via homebrew:
- Install the Mac OS X TUN/TAP driver
- (Optional) Running openconnect requires sudo, presumably because it affects resolution of DNS. So, I added password-less sudo ability for the openconnect command.
And added this line:
- (Optional) When connecting to your SSL VPN, openconnect may complain about a 'self-signed certificate' being in the chain and force you to explicitly accept it every time. The self-signed cert is actually the root certficate and (hopefully) is one with implicit trust (i.e. trusted by browsers), so we can safely trust it by specifying the CA file after exporting it from KeyChain:
- Determine the name your root certificate (i.e. visit your SSL VPN in Chrome, click the green lock, click 'Certificate Information')
- Open the Keychain Access App
- Search the 'System Roots' keychain to find your root certificate and select it
File
>Export Items...
the certificate as a.pem
file somewhere on your hard drive (I put it in~/.ssh/<certificate name>.pem
- Connect!The only thing you should be prompted for is your VPN password. I added the command to my aliases file.
- To disconnect, just Ctrl-c in the window where you started the VPN connection.
Note
I had an incident after an unclean VPN exit where later the VPN hostname could not be found. I guess the DNS resolver was messed up. I was forced to reboot to fix it so I could reconnect to the VPN.