Merge branch 'master' of git://tinc-vpn.org/tinc 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-2011 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 Either OpenSSL (http://www.openssl.org/) or libgcrypt
50 (http://www.gnupg.org/download/#libgcrypt).
51
52 The zlib library is used for optional compression. You can find it at
53 http://www.gzip.org/zlib/.
54
55 The lzo library is also used for optional compression. You can find it at
56 http://www.oberhumer.com/opensource/lzo/.
57
58 Since 1.1, the libevent library is used for the main event loop. You can find
59 it at http://monkey.org/~provos/libevent/.
60
61 In order to compile tinc, you will need a GNU C compiler environment. Please
62 ensure you have the latest stable versions of all the required libraries.
63
64
65 Features
66 --------
67
68 This version of tinc supports multiple virtual networks at once. To
69 use this feature, you may supply a netname via the -n or --net
70 options. The standard locations for the config files will then be
71 /etc/tinc/<net>/.
72
73 tincd regenerates its encryption key pairs. It does this on the first
74 activity after the keys have expired. This period is adjustable in the
75 configuration file, and the default time is 3600 seconds (one hour).
76
77 This version supports multiple subnets at once. They are also sorted
78 on subnet mask size. This means that it is possible to have
79 overlapping subnets on the VPN, as long as their subnet mask sizes
80 differ.
81
82 Since pre5, tinc can operate in several routing modes. The default mode,
83 "router", works exactly like the older version, and uses Subnet lines to
84 determine the destination of packets. The other two modes, "switch" and "hub",
85 allow the tinc daemons to work together like a single network switch or hub.
86 This is useful for bridging networks. The latter modes only work properly on
87 Linux, FreeBSD and Windows.
88
89 The algorithms used for encryption and generating message authentication codes
90 can now be changed in the configuration files. All cipher and digest algorithms
91 supported by OpenSSL can be used. Useful ciphers are "blowfish" (default),
92 "bf-ofb", "des", "des3", etcetera. Useful digests are "sha1" (default), "md5",
93 etcetera.
94
95 Support for routing IPv6 packets has been added. Just add Subnet lines with
96 IPv6 addresses (without using :: abbreviations) and use ifconfig or ip (from
97 the iproute package) to give the virtual network interface corresponding IPv6
98 addresses. tinc does not provide autoconfiguration for IPv6 hosts, if you need
99 it use radvd or zebra.
100
101 It is also possible to make tunnels to other tinc daemons over IPv6 networks,
102 if the operating system supports IPv6.  tinc will automatically use both IPv6
103 and IPv4 when available, but this can be changed by adding the option
104 "AddressFamily = ipv4" or "AddressFamily = ipv6" to the tinc.conf file.
105
106 Normally, when started tinc will detach and run in the background. In a native
107 Windows environment this means tinc will intall itself as a service, which will
108 restart after reboots.  To prevent tinc from detaching or running as a service,
109 use the -D option.
110