tunnel any IP subnetwork or virtual ethernet adapter over a single UDP or TCP port,
configure a scalable, load-balanced VPN server farm using one or more machines which can handle thousands of dynamic connections from incoming VPN clients,
use all of the encryption, authentication, and certification features of the OpenSSL library to protect your private network traffic as it transits the internet,
use any cipher, key size, or HMAC digest (for datagram integrity checking) supported by the OpenSSL library,
choose between static-key based conventional encryption or certificate-based public key encryption,
use static, pre-shared keys or TLS-based dynamic key exchange,
use real-time adaptive link compression and traffic-shaping to manage link bandwidth utilization,
tunnel networks whose public endpoints are dynamic such as DHCP or dial-in clients,
tunnel networks through connection-oriented stateful firewalls without having to use explicit firewall rules,
tunnel networks over NAT,
create secure ethernet bridges using virtual tap devices, and
control OpenVPN using a GUI on Windows or Mac OS X.