With OpenVPN 2.3 came solid support for IPv6, both within the OpenVPN tunnel as well as for transit of the tunnel itself. OpenVPN all the way back to 1.x had rudimentary support for IPv6, which was largely rewritten. Overall, inside an OpenVPN tunnel an administrator can choose to support Ethernet (layer 2), IPv4 (layer 3), and IPv6 (layer 3).
The diagram illustrates the logical relationship of the transit network path and the protected network path. Only a single transit method needs to be used, and a single OpenVPN configuration can contain both IPv4 and IPv6 --remote
entries. All traffic, regardless of type, will be protected within the tunnel. It is perfectly acceptable to have an all-IPv6 tunnel, using IPv6 for both transit and protected traffic. With additional routing and proxying, it’s even possible to use OpenVPN to aid in IPv6 to IPv4 translation.