4 Latest IPv6 payload support code and documentation can be found from here:
6 http://www.greenie.net/ipv6/openvpn.html
8 For TODO list, see TODO.IPv6.
10 Gert Doering, 31.12.2009
14 IPv6 transport support
15 ----------------------
17 [ Last updated: 25-Mar-2011. ]
19 OpenVPN-2.1 over UDP6/TCP6 README for ipv6-0.4.x patch releases:
20 ( --udp6 and --tcp6-{client,server} )
23 Source code under GPLv2 from http://github.com/jjo/openvpn-ipv6
25 Distro ready repos/packages:
26 o Debian sid official repo, by Alberto Gonzalez Iniesta,
27 starting from openvpn_2.1~rc20-2
28 o Gentoo official portage tree, by Marcel Pennewiss:
29 - https://bugs.gentoo.org/show_bug.cgi?id=287896
30 o Ubuntu package, by Bernhard Schmidt:
31 - https://launchpad.net/~berni/+archive/ipv6/+packages
32 o Freetz.org, milestone freetz-1.2
33 - http://trac.freetz.org/milestone/freetz-1.2
37 - upd6,tcp6: GNU/Linux, win32, openbsd-4.7, freebsd-8.1
38 - udp4->upd6,tcp4->tcp6 (ipv4/6 mapped): GNU/Linux
39 (gives a warning on local!=remote proto matching)
41 - win32: tcp4->tcp6 (ipv4/6 mapped) fails w/connection refused
46 ./configure --enable-ipv6 (by default)
49 For IPv6 just specify "-p upd6" an proper IPv6 hostnames, adapting the example
53 openvpn --proto udp6 --remote <june_IPv6_addr> --dev tun1 \
54 --ifconfig 10.4.0.1 10.4.0.2 --verb 5 --secret key
57 openvpn --proto udp6 --remote <may_IPv6_addr> --dev tun1 \
58 --ifconfig 10.4.0.2 10.4.0.1 --verb 5 --secret key
60 Same for --proto tcp6-client, tcp6-server.
62 * Main code changes summary:
63 - socket.h: New struct openvpn_sockaddr type that holds sockaddrs and pktinfo,
64 (here I omitted #ifdef USE_PF_xxxx, see socket.h )
66 struct openvpn_sockaddr {
69 struct sockaddr_in in;
70 struct sockaddr_in6 in6;
74 struct link_socket_addr
76 struct openvpn_sockaddr local;
77 struct openvpn_sockaddr remote;
78 struct openvpn_sockaddr actual;
81 PRO: allows simple type overloading: local.addr.sa, local.addr.in, local.addr.in6 ... etc
82 (also local.pi.in and local.pi.in6)
84 - several function prototypes moved from sockaddr_in to openvpn_sockaddr
85 - several new sockaddr functions needed to "generalize" AF_xxxx operations:
86 addr_copy(), addr_zero(), ...etc
87 proto_is_udp(), proto_is_dgram(), proto_is_net()
89 * For TODO list, see TODO.IPv6
92 JuanJo Ciarlante jjo () google () com ............................
94 . Linux IP Aliasing author .
95 . Modular algo (AES et all) support for FreeSWAN/OpenSWAN author .
96 . OpenVPN over IPv6 support .
97 :...... plus other scattered free software bits in the wild ...: