Releasing 1.1pre2.
[tinc] / README
diff --git a/README b/README
index 65b6be3..09f6e6e 100644 (file)
--- a/README
+++ b/README
-This is the README file for tinc version 1.0pre3. Installation instructions may
-be found in the INSTALL file.
+This is the README file for tinc version 1.1pre2. Installation
+instructions may be found in the INSTALL file.
 
-tinc is Copyright (C) 1998,1999,2000 Ivo Timmermans <itimmermans@bigfoot.com>,
-Guus Sliepen <guus@sliepen.warande.net> and others. For a complete list of
-authors see the AUTHORS file.
+tinc is Copyright (C) 1998-2011 by:
 
-This program is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free Software
-Foundation; either version 2 of the License, or (at your option) any later
-version. See the file COPYING for more details.
+Ivo Timmermans,
+Guus Sliepen <guus@tinc-vpn.org>,
+and others.
+
+For a complete list of authors see the AUTHORS file.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version. See the file COPYING for more details.
+
+
+This is a pre-release
+---------------------
+
+Please note that this is NOT a stable release. Until version 1.1.0 is released,
+please use one of the 1.0.x versions if you need a stable version of tinc.
+
+Although tinc 1.1 will be protocol compatible with tinc 1.0.x, the
+functionality of the tincctl program may still change, and the control socket
+protocol is not fixed yet.
 
 
 Security statement
 ------------------
 
-In august 2000, we discovered the existence of a security hole in all versions
-of tinc up to and including 1.0pre2. This had to do with the way we exchanged
-keys. Since then, we have been working on a new authentication scheme to make
-tinc as secure as possible. The current version uses the OpenSSL library and
-does authentication in much the same way as the SSH protocol does.
+This version uses an experimental and unfinished cryptographic protocol. Use
+it at your own risk.
+
+
+Compatibility
+-------------
+
+Version 1.1pre2 is compatible with 1.0pre8, 1.0 and later, but not with older
+versions of tinc.
+
+When the ExperimentalProtocol option is used, tinc is still compatible with
+1.0.X and 1.1pre2 itself, but not with any other 1.1preX version.
 
-Cryptography is a hard thing to get right. We cannot make any guarantees. Time,
-review and feedback are the only things that can prove the security of any
-cryptographic product. If you wish to review tinc or give us feedback, you are
-stronly encouraged to do so.
 
 Requirements
 ------------
 
-Since 1.0pre3, we use OpenSSL for all cryptographic functions.  So you need to
-install this library first; grab it from http://www.openssl.org/.  We recommend
-version 0.9.5 or better.  If this library is not installed on you system,
-configure will fail.  The manual in doc/tinc.texi contains more detailed
-information on how to install this library.
+Either OpenSSL (http://www.openssl.org/) or libgcrypt
+(http://www.gnupg.org/download/#libgcrypt).
+
+The zlib library is used for optional compression. You can find it at
+http://www.gzip.org/zlib/.
+
+The lzo library is also used for optional compression. You can find it at
+http://www.oberhumer.com/opensource/lzo/.
+
+Since 1.1, the libevent library is used for the main event loop. You can find
+it at http://monkey.org/~provos/libevent/.
+
+In order to compile tinc, you will need a GNU C compiler environment. Please
+ensure you have the latest stable versions of all the required libraries.
 
 
 Features
 --------
 
-This version of tinc supports multiple virtual networks at once. To use this
-feature, you may supply a netname via the -n or --net options. The standard
-locations for the config files will then be /etc/tinc/<net>/. Because of this
-feature, tinc will send packets directly to their destinations, instead of to
-the uplink. If this behaviour is undesirable (for instance because of firewalls
-or other restrictions), please use an older version of tinc (I would recommend
-tinc-0.2.19).
-
-In order to force the kernel to accept received packets, the destination MAC
-address will be set to FE:FD:00:00:00:00 upon reception. The MAC address of the
-ethertap or tun/tap interface must also be set to this address. See the manual
-for more detailed information.
-
-tincd regenerates its encryption key pairs. It does this on the first activity
-after the keys have expired. This period is adjustable in the configuration
-file, and the default time is 3600 seconds (one hour).
-
-This version supports multiple subnets at once. They are also sorted on subnet
-mask size. This means that it is possible to have overlapping subnets on the
-VPN, as long as their subnet mask sizes differ.
+This version of tinc supports multiple virtual networks at once. To
+use this feature, you may supply a netname via the -n or --net
+options. The standard locations for the config files will then be
+/etc/tinc/<net>/.
+
+tincd regenerates its encryption key pairs. It does this on the first
+activity after the keys have expired. This period is adjustable in the
+configuration file, and the default time is 3600 seconds (one hour).
+
+This version supports multiple subnets at once. They are also sorted
+on subnet mask size. This means that it is possible to have
+overlapping subnets on the VPN, as long as their subnet mask sizes
+differ.
+
+Since pre5, tinc can operate in several routing modes. The default mode,
+"router", works exactly like the older version, and uses Subnet lines to
+determine the destination of packets. The other two modes, "switch" and "hub",
+allow the tinc daemons to work together like a single network switch or hub.
+This is useful for bridging networks. The latter modes only work properly on
+Linux, FreeBSD and Windows.
+
+The algorithms used for encryption and generating message authentication codes
+can now be changed in the configuration files. All cipher and digest algorithms
+supported by OpenSSL can be used. Useful ciphers are "blowfish" (default),
+"bf-ofb", "des", "des3", etcetera. Useful digests are "sha1" (default), "md5",
+etcetera.
+
+Support for routing IPv6 packets has been added. Just add Subnet lines with
+IPv6 addresses (without using :: abbreviations) and use ifconfig or ip (from
+the iproute package) to give the virtual network interface corresponding IPv6
+addresses. tinc does not provide autoconfiguration for IPv6 hosts, if you need
+it use radvd or zebra.
+
+It is also possible to make tunnels to other tinc daemons over IPv6 networks,
+if the operating system supports IPv6.  tinc will automatically use both IPv6
+and IPv4 when available, but this can be changed by adding the option
+"AddressFamily = ipv4" or "AddressFamily = ipv6" to the tinc.conf file.
+
+Normally, when started tinc will detach and run in the background. In a native
+Windows environment this means tinc will intall itself as a service, which will
+restart after reboots.  To prevent tinc from detaching or running as a service,
+use the -D option.
+