summaryrefslogtreecommitdiffstats
path: root/README.ipv6
diff options
context:
space:
mode:
authorJuanJo Ciarlante <jjo@google.com>2009-09-25 23:20:41 +0200
committerJuanJo Ciarlante <juanjosec@gmail.com>2011-03-25 13:30:29 +0100
commitd7627b1a5197a8634e011bb100849c45a612602d (patch)
tree70afcaf1edc9c6cad0ae7cf345209a034f700157 /README.ipv6
parent6d1b80bdeb5e0df3dee6a8bc05d7e3f622371c1c (diff)
downloadopenvpn-d7627b1a5197a8634e011bb100849c45a612602d.tar.gz
openvpn-d7627b1a5197a8634e011bb100849c45a612602d.tar.xz
openvpn-d7627b1a5197a8634e011bb100849c45a612602d.zip
* renamed README.ipv6{.txt,}
Diffstat (limited to 'README.ipv6')
-rw-r--r--README.ipv670
1 files changed, 70 insertions, 0 deletions
diff --git a/README.ipv6 b/README.ipv6
new file mode 100644
index 0000000..f9b6171
--- /dev/null
+++ b/README.ipv6
@@ -0,0 +1,70 @@
+[ Last updated: 17-Sep-2009. ]
+This README covers UDP/IPv6 v0.4.x ( --udp6 and --tcp6-xxxxxx ) support
+for openvpn-2.1.
+
+Available under GPLv2 from
+ http://github.com/jjo/openvpn-ipv6
+
+* Working:
+ OK:
+ - upd6,tcp6: GNU/Linux, win32
+ - udp4->upd6,tcp4->tcp6 (ipv4/6 mapped): GNU/Linux
+ (gives a warning on local!=remote proto matching)
+ NOT:
+ - tcp4->tcp6 (ipv4/6 mapped): win32
+ fails w/connection refused
+
+
+
+* Setup:
+ ./configure --enable-ipv6 (by default)
+
+* Usage:
+ For IPv6 just specify "-p upd6" an proper IPv6 hostnames, adapting the example
+ from man page ...
+
+ On may:
+ openvpn --proto udp6 --remote <june_IPv6_addr> --dev tun1 \
+ --ifconfig 10.4.0.1 10.4.0.2 --verb 5 --secret key
+
+ On june:
+ openvpn --proto udp6 --remote <may_IPv6_addr> --dev tun1 \
+ --ifconfig 10.4.0.2 10.4.0.1 --verb 5 --secret key
+
+ Same for --proto tcp6-client, tcp6-server.
+
+* Main code changes summary:
+ - socket.h: New struct openvpn_sockaddr type that holds sockaddrs and pktinfo,
+ (here I omitted #ifdef USE_PF_xxxx, see socket.h )
+
+ struct openvpn_sockaddr {
+ union {
+ struct sockaddr sa;
+ struct sockaddr_in in;
+ struct sockaddr_in6 in6;
+ } addr;
+ };
+
+ struct link_socket_addr
+ {
+ struct openvpn_sockaddr local;
+ struct openvpn_sockaddr remote;
+ struct openvpn_sockaddr actual;
+ };
+
+ PRO: allows simple type overloading: local.addr.sa, local.addr.in, local.addr.in6 ... etc
+ (also local.pi.in and local.pi.in6)
+
+ - several function prototypes moved from sockaddr_in to openvpn_sockaddr
+ - several new sockaddr functions needed to "generalize" AF_xxxx operations:
+ addr_copy(), addr_zero(), ...etc
+ proto_is_udp(), proto_is_dgram(), proto_is_net()
+
+* TODO: See TODO.ipv6
+
+--
+JuanJo Ciarlante jjo () google () com
+: :
+. Linux IP Aliasing author .
+. Modular algo (AES et all) support for FreeSWAN/OpenSWAN author .
+:... plus other scattered free software bits in the wild ...: