IPv6 follow-up: OpenVPN transport over IPv6
Over 18 months ago I dual-stacked my Linode and made almost all services accessible via both IPv4 and IPv6. Although no where near as popular as IPv4, I do see hits on HTTP, HTTPS, NTP, and git ports on my machine over IPv6.
The one service I couldn’t set up over IPv6 was OpenVPN. This has finally changed with the release of 2.3.0. OpenVPN now supports IPv6 as both a transport and payload when using a tun
style device. The only thing I was really looking for was the transport side, so I’ll detail the configuration of that here.
The easiest way to configure this server-side is to leave local
and port
as defaults. Setting local to the IPv6 wildcard address doesn’t work at all, as discovered by trial and error. The only thing necessary is to change your proto
line to read proto udp6
(as opposed to just udp
). On Linux, this will enable binding to both the IPv6 and IPv4 wildcard addresses.
;local 0.0.0.0
;port 1194
;proto udp
proto udp6
dev tun
See Also
- Making things IPv6 capable - June 8, 2011
- OpenVPN and ATA over Ethernet (AoE) interaction - February 25, 2013
- Why I switched from lighttpd to nginx - December 8, 2010
- Git smart HTTP transport on nginx - December 8, 2010
- Bye bye Slicehost, Hello Linode - October 3, 2010