ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/gvpe/doc/gvpe.5
(Generate patch)

Comparing gvpe/doc/gvpe.5 (file contents):
Revision 1.4 by pcg, Thu Jan 27 07:02:18 2005 UTC vs.
Revision 1.5 by pcg, Tue Feb 22 23:00:57 2005 UTC

127.\} 127.\}
128.rm #[ #] #H #V #F C 128.rm #[ #] #H #V #F C
129.\" ======================================================================== 129.\" ========================================================================
130.\" 130.\"
131.IX Title "GVPE 5" 131.IX Title "GVPE 5"
132.TH GVPE 5 "2005-01-27" "1.7" "GNU Virtual Private Ethernet" 132.TH GVPE 5 "2005-02-22" "1.7" "GNU Virtual Private Ethernet"
133.SH "NAME" 133.SH "NAME"
134GNU\-VPE \- Overview of the GNU Virtual Private Ethernet suite. 134GNU\-VPE \- Overview of the GNU Virtual Private Ethernet suite.
135.SH "DESCRIPTION" 135.SH "DESCRIPTION"
136.IX Header "DESCRIPTION" 136.IX Header "DESCRIPTION"
137\&\s-1GVPE\s0 is a suite designed to provide a virtual private network for multiple 137\&\s-1GVPE\s0 is a suite designed to provide a virtual private network for multiple
138nodes over an untrusted network. 138nodes over an untrusted network. This document first gives an introduction
139to VPNs in general and then describes the specific implementation of \s-1GVPE\s0.
140.Sh "\s-1WHAT\s0 \s-1IS\s0 A \s-1VPN\s0?"
141.IX Subsection "WHAT IS A VPN?"
142\&\s-1VPN\s0 is an acronym, it stands for:
139.IP "\(bu" 4 143.IP "\(bu" 4
140.IX Xref "Virtual" 144.IX Xref "Virtual"
141Virtual means that no physical network is created (of course), but an 145Virtual means that no physical network is created (of course), but a
142ethernet is emulated by creating multiple tunnels between the member 146network is \fIemulated\fR by creating multiple tunnels between the member
143nodes. 147nodes by encapsulating and sending data over another transport network.
148.Sp
149Usually the emulated network is a normal \s-1IP\s0 or Ethernet, and the transport
150network is the Internet. However, using a \s-1VPN\s0 system like \s-1GVPE\s0 to connect
151nodes over other untrusted networks such as Wireless \s-1LAN\s0 is not uncommon.
144.IP "\(bu" 4 152.IP "\(bu" 4
145.IX Xref "Private" 153.IX Xref "Private"
146Private means that non-participating nodes cannot decode (\*(L"sniff)\*(R" nor 154Private means that non-participating nodes cannot decode (\*(L"sniff)\*(R" nor
147inject (\*(L"spoof\*(R") packets. 155inject (\*(L"spoof\*(R") packets. This means that nodes can be connected over
156untrusted networks such as the public Internet without fear of being
157eavesdropped while at the same time being able to trust data sent by other
158nodes.
148.Sp 159.Sp
149In the case of gvpe, even participating nodes cannot sniff packets send to 160In the case of \s-1GVPE\s0, even participating nodes cannot sniff packets
150other nodes or spoof packets as if sent from other nodes. 161send to other nodes or spoof packets as if sent from other nodes, so
162communications between any two nodes is private to those two nodes.
151.IP "\(bu" 4 163.IP "\(bu" 4
152.IX Xref "Network" 164.IX Xref "Network"
153Network means that more than two parties can participate in the network, 165Network means that more than two parties can participate in the network,
154so for instance it's possible to connect multiple branches of a company 166so for instance it's possible to connect multiple branches of a company
155into a single network. Many so-called \*(L"vpn\*(R" solutions only create 167into a single network. Many so-called \*(L"vpn\*(R" solutions only create
156point-to-point tunnels. 168point-to-point tunnels, which in turn can be used to build larger
169networks.
170.Sp
171\&\s-1GVPE\s0 provides a true multi-point network in wich any number of nodes (at
172least a few dozen in practise, the theoretical limit is 4095 nodes) can
173participate.
157.Sh "\s-1DESIGN\s0 \s-1GOALS\s0" 174.Sh "\s-1GVPE\s0 \s-1DESIGN\s0 \s-1GOALS\s0"
158.IX Subsection "DESIGN GOALS" 175.IX Subsection "GVPE DESIGN GOALS"
159.IP "\s-1SIMPLE\s0 \s-1DESIGN\s0" 4 176.IP "\s-1SIMPLE\s0 \s-1DESIGN\s0" 4
160.IX Item "SIMPLE DESIGN" 177.IX Item "SIMPLE DESIGN"
161Cipher, \s-1HMAC\s0 algorithms and other key parameters must be selected 178Cipher, \s-1HMAC\s0 algorithms and other key parameters must be selected
162at compile time \- this makes it possible to only link in algorithms 179at compile time \- this makes it possible to only link in algorithms
163you actually need. It also makes the crypto part of the source very 180you actually need. It also makes the crypto part of the source very
164transparent and easy to inspect. 181transparent and easy to inspect, and last not least this makes it possible
182to hardcode the layout of all packets into the binary. \s-1GVPE\s0 goes a step
183further and internally reserves blocks of the same length for all packets,
184which virtually removes all possibilities of buffer overflows, as there is
185only a single type of buffer and it's always of fixed length.
165.IP "\s-1EASY\s0 \s-1TO\s0 \s-1SETUP\s0" 4 186.IP "\s-1EASY\s0 \s-1TO\s0 \s-1SETUP\s0" 4
166.IX Item "EASY TO SETUP" 187.IX Item "EASY TO SETUP"
167A few lines of config (the config file is shared unmodified between all 188A few lines of config (the config file is shared unmodified between all
168hosts) and a single run of \f(CW\*(C`gvpectrl\*(C'\fR to generate the keys suffices to 189hosts) and a single run of \f(CW\*(C`gvpectrl\*(C'\fR to generate the keys suffices to
169make it work. 190make it work.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines