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

Comparing gvpe/doc/gvpe.osdep.5.pod (file contents):
Revision 1.7 by pcg, Wed Mar 23 20:07:56 2005 UTC vs.
Revision 1.8 by pcg, Wed Mar 23 21:55:39 2005 UTC

28found on a specific host, you will either need to hardwire the MAC address 28found on a specific host, you will either need to hardwire the MAC address
29for TUN-style hosts on all networks (and avoid ARP altogether, which is 29for TUN-style hosts on all networks (and avoid ARP altogether, which is
30possible), or you need to send a packet from these hosts into the vpn 30possible), or you need to send a packet from these hosts into the vpn
31network to tell gvpe the local interface address. 31network to tell gvpe the local interface address.
32 32
33=head2 Interface Initialisation
34
35Unless otherwise notes, the network interface will be set "UP" with the
36correct MAC address and correct MTU value. With most interface drivers,
37this is done by running C</sbin/ifconfig>, so make sure that this command
38exists.
39
33=head2 native/linux 40=head2 native/linux
34 41
35TAP-device; already part of the kernel (only 2.4+ supported, but see 42TAP-device; already part of the kernel (only 2.4+ supported, but see
36tincd/linux). This is the configuration tested best, as gvpe is being 43tincd/linux). This is the configuration tested best, as gvpe is being
37developed on this platform. 44developed on this platform.
38 45
39To configure the interface, use either iproute2: 46C<ifname> should be set to the name of the network device.
40
41 ip set $IFNAME address $MAC mtu $MTU up
42 ip addr add $IFNAME 10.11.12.13
43 ip route add $IFNAME 10.11.12.13/8
44
45Or C<ifconfig>:
46
47 ifconfig $IFNAME hw ether $MAC mtu $MTU
48 ifconfig $IFNAME 10.11.12.13 netmask 255.0.0.0
49 47
50To hardwire ARP addresses, use iproute2 (C<arp> can do it, too): 48To hardwire ARP addresses, use iproute2 (C<arp> can do it, too):
51 49
52 MAC=fe:fd:80:00:00:$(printf "%02x" $NODEID) 50 MAC=fe:fd:80:00:00:$(printf "%02x" $NODEID)
53 ip neighbour add 10.11.12.13 lladdr $MAC nud permanent dev $IFNAME 51 ip neighbour add 10.11.12.13 lladdr $MAC nud permanent dev $IFNAME
54 52
55=head2 tincd/linux 53=head2 tincd/linux
56 54
57TAP-device; already part of the kernel (2.2+ supported). See 55TAP-device; already part of the kernel (2.2 only). See
58C<native/linux> for more info. 56C<native/linux> for more info.
57
58C<ifname> should be set to the path of a tap device,
59e.g. C</dev/tap0>. The interface will be named accordingly.
59 60
60=head2 native/cygwin 61=head2 native/cygwin
61 62
62TAP-device; The TAP device to be used must either be the CIPE driver 63TAP-device; The TAP device to be used must either be the CIPE driver
63(C<http://cipe-win32.sourceforge.net/>), or (highly recommended) the newer 64(C<http://cipe-win32.sourceforge.net/>), or (highly recommended) the newer
64TAP-Win32 driver bundled with openvpn (http://openvpn.sf.net/). Just 65TAP-Win32 driver bundled with openvpn (http://openvpn.sf.net/). Just
65download and run the openvpn installer. The only option you need to select 66download and run the openvpn installer. The only option you need to select
66is the TAP driver. 67is the TAP driver.
67 68
68The MAC need not be set (and in fact I<cannot> be set). The MAC address 69C<ifname> should be set to the name of the device, found in the registry
69is dynamically being patched into packets and ARP-requests, so only IPv4 70at (no kidding :):
70works with ARP on this platform. 71
72 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\<adapterid>\Connection\Name
73
74The MAC address is dynamically being patched into packets and
75ARP-requests, so only IPv4 works with ARP on this platform.
71 76
72=head2 tincd/freebsd 77=head2 tincd/freebsd
73 78
74TAP-device; part of the kernel (since 4.x, maybe earlier). To initialize 79TAP-device; part of the kernel (since 4.x, maybe earlier).
75the interface, use this command:
76 80
77 ifconfig $IFNAME ether $MAC mtu $MTU up 81C<ifname> should be set to the path of a tap device,
82e.g. C</dev/tap0>. The interface will be named accordingly.
78 83
79These commands might be helpful examples: 84These commands might be helpful examples:
80 85
81 ifconfig $IFNAME 10.0.0.$NODEID 86 ifconfig $IFNAME 10.0.0.$NODEID
82 route add -net 10.0.0.0 -netmask 255.255.255.0 -interface $IFNAME 10.0.0.$NODEID 87 route add -net 10.0.0.0 -netmask 255.255.255.0 -interface $IFNAME 10.0.0.$NODEID
83 88
84=head2 tincd/netbsd 89=head2 tincd/netbsd
85 90
86TUN-device; The interface is a point to point-device. To initialize it, 91TUN-device; The interface is a point-to-point device. To initialize it,
87you currently need to configure it as such, giving it an address on your 92you currently need to configure it as a point-to-point device, giving it
88vpn (the exact address doesn't matter), like this: 93an address on your vpn (the exact address doesn't matter), like this:
89 94
90 ifconfig $IFNAME mtu $MTU up 95 ifconfig $IFNAME mtu $MTU up
91 ifconfig $IFNAME 10.11.12.13 10.55.66.77 96 ifconfig $IFNAME 10.11.12.13 10.55.66.77
92 route add -net 10.0.0.0 10.55.66.77 255.0.0.0 97 route add -net 10.0.0.0 10.55.66.77 255.0.0.0
93 ping -c1 10.55.66.77 # ping once to tell gvpe your gw ip 98 ping -c1 10.55.66.77 # ping once to tell gvpe your gw ip
94 99
100The ping is required to tell the ARP emulator inside GVPE the local IP
101address.
102
103C<ifname> should be set to the path of a tun device,
104e.g. C</dev/tun0>. The interface will be named accordingly.
105
95=head2 tincd/openbsd 106=head2 tincd/openbsd
96 107
97TUN-device; already part of the kernel. See C<tincd/netbsd> for more information. 108TUN-device; already part of the kernel. See C<tincd/netbsd> for more information.
98 109
99=head2 native/darwin 110=head2 native/darwin
106 117
107There are two drivers, the one to use is the "tap" driver. It driver must 118There are two drivers, the one to use is the "tap" driver. It driver must
108be loaded before use, read the docs on how to install it as a startup 119be loaded before use, read the docs on how to install it as a startup
109item. 120item.
110 121
111To initialize the interface, use this command: 122C<ifname> should be set to the path of a tap device,
112 123e.g. C</dev/tap0>. The interface will be named accordingly.
113 ifconfig $IFNAME ether $MAC mtu $MTU up
114 124
115These commands might be helpful examples: 125These commands might be helpful examples:
116 126
117 ifconfig $IFNAME 10.0.0.$NODEID 127 ifconfig $IFNAME 10.0.0.$NODEID
118 route add -net 10.0.0.0 -interface $IFNAME 255.255.255.0 128 route add -net 10.0.0.0 -interface $IFNAME 255.255.255.0
124 134
125The necessary kernel extension can be found here: 135The necessary kernel extension can be found here:
126 136
127 http://chrisp.de/en/projects/tunnel.html 137 http://chrisp.de/en/projects/tunnel.html
128 138
139C<ifname> should be set to the path of a tun device,
140e.g. C</dev/tun0>. The interface will be named accordingly.
141
129The driver must be loaded before use: 142The driver must be loaded before use:
130 143
131 kmodload tunnel 144 kmodload tunnel
132 145
133=head2 tincd/solaris 146=head2 tincd/solaris
138 151
139Some precompiled tun drivers might be available here: 152Some precompiled tun drivers might be available here:
140 153
141 http://www.monkey.org/~dugsong/fragroute/ 154 http://www.monkey.org/~dugsong/fragroute/
142 155
156The interface MAC and MTU are I<NOT> set up for you. Please try it out and
157send me an C<ifconfig> command invocation that does that.
158
143See C<tincd/netbsd> for more information. 159See C<tincd/netbsd> for more information.
144 160
145Completely unstested so far. 161Completely unstested so far.
146 162
147=head2 tincd/mingw 163=head2 tincd/mingw
148 164
149TAP-device; see C<native/cygwin> for more information. 165TAP-device; see C<native/cygwin> for more information.
150 166
167The setup is likely to be similar to C<native/cygwin>.
168
151Completely untested so far. 169Completely untested so far.
152 170
153=head2 tincd/raw_socket 171=head2 tincd/raw_socket
154 172
155TAP-device; purpose unknown and untested, probably binds itself on an 173TAP-device; purpose unknown and untested, probably binds itself on an
156existing ethernet device (given by C<ifname>), which should probably not 174existing ethernet device (given by C<ifname>). It must be down prior to
157be configured in any way, except for setting it I<up>. 175running the command, and GVPE will try to set it's MAC address and MTU to
176the "correct" values.
177
178Completely untested so far.
158 179
159=head2 tincd/uml_socket 180=head2 tincd/uml_socket
160 181
161TAP-device; purpose unknown and untested, probably creates a unix datagram 182TAP-device; purpose unknown and untested, probably creates a unix datagram
162socket (path given by C<ifname>) and reads and writes raw packets, so 183socket (path given by C<ifname>) and reads and writes raw packets, so
163might be useful in other than UML contexts. 184might be useful in other than UML contexts.
164 185
186No network interface is created, and the MAC and MTU must be set as
187approriate on the other side of the socket. GVPE will exit if the MAC
188address doesn't match what it expects.
189
190Completely untested so far.
191
165=head2 tincd/cygwin 192=head2 tincd/cygwin
166 193
167Known to be broken, use C<native/cygwin> instead. 194Known to be broken, use C<native/cygwin> instead.
168 195
169=head1 SEE ALSO 196=head1 SEE ALSO

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines