Merge branch 'master' into 1.1
[tinc] / README
1 This is the README file for tinc version 1.1pre2. Installation
2 instructions may be found in the INSTALL file.
3
4 tinc is Copyright (C) 1998-2012 by:
5
6 Ivo Timmermans,
7 Guus Sliepen <guus@tinc-vpn.org>,
8 and others.
9
10 For a complete list of authors see the AUTHORS file.
11
12 This program is free software; you can redistribute it and/or modify
13 it under the terms of the GNU General Public License as published by
14 the Free Software Foundation; either version 2 of the License, or (at
15 your option) any later version. See the file COPYING for more details.
16
17
18 This is a pre-release
19 ---------------------
20
21 Please note that this is NOT a stable release. Until version 1.1.0 is released,
22 please use one of the 1.0.x versions if you need a stable version of tinc.
23
24 Although tinc 1.1 will be protocol compatible with tinc 1.0.x, the
25 functionality of the tincctl program may still change, and the control socket
26 protocol is not fixed yet.
27
28
29 Security statement
30 ------------------
31
32 This version uses an experimental and unfinished cryptographic protocol. Use
33 it at your own risk.
34
35
36 Compatibility
37 -------------
38
39 Version 1.1pre2 is compatible with 1.0pre8, 1.0 and later, but not with older
40 versions of tinc.
41
42 When the ExperimentalProtocol option is used, tinc is still compatible with
43 1.0.X and 1.1pre2 itself, but not with any other 1.1preX version.
44
45
46 Requirements
47 ------------
48
49 OpenSSL (http://www.openssl.org/) version 1.0.0 or later.
50
51 The zlib library is used for optional compression. You can find it at
52 http://www.gzip.org/zlib/.
53
54 The lzo library is also used for optional compression. You can find it at
55 http://www.oberhumer.com/opensource/lzo/.
56
57 Since 1.1, the libevent library is used for the main event loop. You can find
58 it at http://monkey.org/~provos/libevent/.
59
60 In order to compile tinc, you will need a GNU C compiler environment. Please
61 ensure you have the latest stable versions of all the required libraries.
62
63
64 Features
65 --------
66
67 This version of tinc supports multiple virtual networks at once. To
68 use this feature, you may supply a netname via the -n or --net
69 options. The standard locations for the config files will then be
70 /etc/tinc/<net>/.
71
72 tincd regenerates its encryption key pairs. It does this on the first
73 activity after the keys have expired. This period is adjustable in the
74 configuration file, and the default time is 3600 seconds (one hour).
75
76 This version supports multiple subnets at once. They are also sorted
77 on subnet mask size. This means that it is possible to have
78 overlapping subnets on the VPN, as long as their subnet mask sizes
79 differ.
80
81 Since pre5, tinc can operate in several routing modes. The default mode,
82 "router", works exactly like the older version, and uses Subnet lines to
83 determine the destination of packets. The other two modes, "switch" and "hub",
84 allow the tinc daemons to work together like a single network switch or hub.
85 This is useful for bridging networks. The latter modes only work properly on
86 Linux, FreeBSD and Windows.
87
88 The algorithms used for encryption and generating message authentication codes
89 can now be changed in the configuration files. All cipher and digest algorithms
90 supported by OpenSSL can be used. Useful ciphers are "blowfish" (default),
91 "bf-ofb", "des", "des3", etcetera. Useful digests are "sha1" (default), "md5",
92 etcetera.
93
94 Support for routing IPv6 packets has been added. Just add Subnet lines with
95 IPv6 addresses (without using :: abbreviations) and use ifconfig or ip (from
96 the iproute package) to give the virtual network interface corresponding IPv6
97 addresses. tinc does not provide autoconfiguration for IPv6 hosts, if you need
98 it use radvd or zebra.
99
100 It is also possible to make tunnels to other tinc daemons over IPv6 networks,
101 if the operating system supports IPv6.  tinc will automatically use both IPv6
102 and IPv4 when available, but this can be changed by adding the option
103 "AddressFamily = ipv4" or "AddressFamily = ipv6" to the tinc.conf file.
104
105 Normally, when started tinc will detach and run in the background. In a native
106 Windows environment this means tinc will intall itself as a service, which will
107 restart after reboots.  To prevent tinc from detaching or running as a service,
108 use the -D option.
109