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

Comparing gvpe/doc/gvpe.conf.5 (file contents):
Revision 1.13 by pcg, Wed Mar 23 21:55:39 2005 UTC vs.
Revision 1.16 by pcg, Mon Dec 5 12:58:06 2005 UTC

127.\} 127.\}
128.rm #[ #] #H #V #F C 128.rm #[ #] #H #V #F C
129.\" ======================================================================== 129.\" ========================================================================
130.\" 130.\"
131.IX Title "GVPE.CONF 5" 131.IX Title "GVPE.CONF 5"
132.TH GVPE.CONF 5 "2005-03-23" "1.9" "GNU Virtual Private Ethernet" 132.TH GVPE.CONF 5 "2005-12-05" "1.9" "GNU Virtual Private Ethernet"
133.SH "NAME" 133.SH "NAME"
134gvpe.conf \- configuration file for the GNU VPE daemon 134gvpe.conf \- configuration file for the GNU VPE daemon
135.SH "SYNOPSIS" 135.SH "SYNOPSIS"
136.IX Header "SYNOPSIS" 136.IX Header "SYNOPSIS"
137.Vb 3 137.Vb 3
158.SH "DESCRIPTION" 158.SH "DESCRIPTION"
159.IX Header "DESCRIPTION" 159.IX Header "DESCRIPTION"
160The gvpe config file consists of a series of lines that contain \f(CW\*(C`variable 160The gvpe config file consists of a series of lines that contain \f(CW\*(C`variable
161= value\*(C'\fR pairs. Empty lines are ignored. Comments start with a \f(CW\*(C`#\*(C'\fR and 161= value\*(C'\fR pairs. Empty lines are ignored. Comments start with a \f(CW\*(C`#\*(C'\fR and
162extend to the end of the line. They can be used on their own lines, or 162extend to the end of the line. They can be used on their own lines, or
163after any directives. Spaces are allowed before or after the \f(CW\*(C`=\*(C'\fR sign or 163after any directives. Whitespace is allowed around the \f(CW\*(C`=\*(C'\fR sign or after
164after values, but not within the variable names or values themselves. 164values, but not within the variable names or values themselves.
165.PP 165.PP
166The only exception to the above is the \*(L"on\*(R" directive that can prefix any 166The only exception to the above is the \*(L"on\*(R" directive that can prefix any
167\&\f(CW\*(C`name = value\*(C'\fR setting and will only \*(L"execute\*(R" it on the named node, or 167\&\f(CW\*(C`name = value\*(C'\fR setting and will only \*(L"execute\*(R" it on the named node, or
168(if the nodename starts with \*(L"!\*(R") on all nodes except the named one. 168(if the nodename starts with \*(L"!\*(R") on all nodes except the named one.
169.PP 169.PP
254The default should be working ok for most links. 254The default should be working ok for most links.
255.IP "if-up = relative-or-absolute-path" 4 255.IP "if-up = relative-or-absolute-path" 4
256.IX Item "if-up = relative-or-absolute-path" 256.IX Item "if-up = relative-or-absolute-path"
257Sets the path of a script that should be called immediately after the 257Sets the path of a script that should be called immediately after the
258network interface is initialized (but not neccessarily up). The following 258network interface is initialized (but not neccessarily up). The following
259environment variables are passed to it (the values are just examples): 259environment variables are passed to it (the values are just examples).
260.Sp
261Variables that have the same value on all nodes:
260.RS 4 262.RS 4
261.IP "CONFBASE=/etc/gvpe" 4 263.IP "CONFBASE=/etc/gvpe" 4
262.IX Item "CONFBASE=/etc/gvpe" 264.IX Item "CONFBASE=/etc/gvpe"
263The configuration base directory. 265The configuration base directory.
264.IP "IFNAME=vpn0" 4 266.IP "IFNAME=vpn0" 4
265.IX Item "IFNAME=vpn0" 267.IX Item "IFNAME=vpn0"
266The interface to initialize. 268The network interface to initialize.
267.IP "MTU=1436" 4
268.IX Item "MTU=1436"
269The \s-1MTU\s0 to set the interface to. You can use lower values (if done
270consistently on all hosts), but this is usually ineffective.
271.IP "MAC=fe:fd:80:00:00:01" 4
272.IX Item "MAC=fe:fd:80:00:00:01"
273The \s-1MAC\s0 address to set the interface to. The script *must* set the
274interface \s-1MAC\s0 to this value. You will most likely use one of these:
275.Sp
276.Vb 2
277\& ip link set $IFNAME address $MAC mtu $MTU up # GNU/Linux
278\& ifconfig $IFNAME ether $MAC mtu $MTU up # FreeBSD
279.Ve
280.Sp
281Please see the \f(CW\*(C`gvpe.osdep(5)\*(C'\fR manpage for platform-specific information.
282.IP "IFTYPE=native # or tincd" 4 269.IP "IFTYPE=native # or tincd" 4
283.IX Item "IFTYPE=native # or tincd" 270.IX Item "IFTYPE=native # or tincd"
284.PD 0 271.PD 0
285.IP "IFSUBTYPE=linux # or freebsd, darwin etc.." 4 272.IP "IFSUBTYPE=linux # or freebsd, darwin etc.." 4
286.IX Item "IFSUBTYPE=linux # or freebsd, darwin etc.." 273.IX Item "IFSUBTYPE=linux # or freebsd, darwin etc.."
287.PD 274.PD
288The interface type (\f(CW\*(C`native\*(C'\fR or \f(CW\*(C`tincd\*(C'\fR) and the subtype (usually the os 275The interface type (\f(CW\*(C`native\*(C'\fR or \f(CW\*(C`tincd\*(C'\fR) and the subtype (usually the
289name in lowercase) that this gvpe was configured for. Can be used to select 276\&\s-1OS\s0 name in lowercase) that this \s-1GVPE\s0 was configured for. Can be used to
290the correct syntax to use for network-related commands. 277select the correct syntax to use for network-related commands.
278.IP "MTU=1436" 4
279.IX Item "MTU=1436"
280The \s-1MTU\s0 to set the interface to. You can use lower values (if done
281consistently on all hosts), but this is usually ineffective.
282.IP "NODES=5" 4
283.IX Item "NODES=5"
284The number of nodes in this \s-1GVPE\s0 network.
285.RE
286.RS 4
287.Sp
288Variables that are node-specific and with values pertaining to the node
289running this \s-1GVPE:\s0
290.IP "IFUPDATA=string" 4
291.IX Item "IFUPDATA=string"
292The value of the configuration directive \f(CW\*(C`if\-up\-data\*(C'\fR.
293.IP "MAC=fe:fd:80:00:00:01" 4
294.IX Item "MAC=fe:fd:80:00:00:01"
295The \s-1MAC\s0 address the network interface has to use.
296.Sp
297Might be used to initialize interfaces on platforms where \s-1GVPE\s0 does not
298do this automatically. Please see the \f(CW\*(C`gvpe.osdep(5)\*(C'\fR manpage for
299platform-specific information.
291.IP "NODENAME=branch1" 4 300.IP "NODENAME=branch1" 4
292.IX Item "NODENAME=branch1" 301.IX Item "NODENAME=branch1"
293The nickname of the current node, as passed to the gvpe daemon. 302The nickname of the node.
294.IP "NODEID=1" 4 303.IP "NODEID=1" 4
295.IX Item "NODEID=1" 304.IX Item "NODEID=1"
296The numerical node id of the current node. The first node mentioned in the 305The numerical node \s-1ID\s0 of the node running this instance of \s-1GVPE\s0. The first
297config file gets \s-1ID\s0 1, the second \s-1ID\s0 2 and so on. 306node mentioned in the config file gets \s-1ID\s0 1, the second \s-1ID\s0 2 and so on.
298.RE 307.RE
299.RS 4 308.RS 4
300.Sp 309.Sp
310In addition, all node-specific variables (except \f(CW\*(C`NODEID\*(C'\fR) will be
311available with a postfix of \f(CW\*(C`_nodeid\*(C'\fR, which contains the value for that
312node, e.g. the \f(CW\*(C`MAC_1\*(C'\fR variable contains the \s-1MAC\s0 address of node #1, while
313the \f(CW\*(C`NODENAME_22\*(C'\fR variable contains the name of node #22.
314.Sp
301Here is a simple if-up script: 315Here is a simple if-up script:
302.Sp 316.Sp
303.Vb 5 317.Vb 5
304\& #!/bin/sh 318\& #!/bin/sh
305\& ip link set $IFNAME address $MAC mtu $MTU up 319\& ip link set $IFNAME up
306\& [ $NODENAME = branch1 ] && ip addr add 10.0.0.1 dev $IFNAME 320\& [ $NODENAME = branch1 ] && ip addr add 10.0.0.1 dev $IFNAME
307\& [ $NODENAME = branch2 ] && ip addr add 10.1.0.1 dev $IFNAME 321\& [ $NODENAME = branch2 ] && ip addr add 10.1.0.1 dev $IFNAME
308\& ip route add 10.0.0.0/8 dev $IFNAME 322\& ip route add 10.0.0.0/8 dev $IFNAME
309.Ve 323.Ve
310.Sp 324.Sp
398used to select the right configuration section and must be passed as an 412used to select the right configuration section and must be passed as an
399argument to the gvpe daemon. 413argument to the gvpe daemon.
400.IP "node-up = relative-or-absolute-path" 4 414.IP "node-up = relative-or-absolute-path" 4
401.IX Item "node-up = relative-or-absolute-path" 415.IX Item "node-up = relative-or-absolute-path"
402Sets a command (default: no script) that should be called whenever a 416Sets a command (default: no script) that should be called whenever a
403connection is established (even on rekeying operations). In addition 417connection is established (even on rekeying operations). In addition to
404to the variables passed to \f(CW\*(C`if\-up\*(C'\fR scripts, the following environment 418all the variables passed to \f(CW\*(C`if\-up\*(C'\fR scripts, the following environment
405variables will be set: 419variables will be set:
406.RS 4 420.RS 4
407.IP "DESTNODE=branch2" 4 421.IP "DESTNODE=branch2" 4
408.IX Item "DESTNODE=branch2" 422.IX Item "DESTNODE=branch2"
409The name of the remote node. 423The name of the remote node.
460reestablished every \f(CW\*(C`rekey\*(C'\fR seconds. 474reestablished every \f(CW\*(C`rekey\*(C'\fR seconds.
461.Sh "\s-1NODE\s0 \s-1SPECIFIC\s0 \s-1SETTINGS\s0" 475.Sh "\s-1NODE\s0 \s-1SPECIFIC\s0 \s-1SETTINGS\s0"
462.IX Subsection "NODE SPECIFIC SETTINGS" 476.IX Subsection "NODE SPECIFIC SETTINGS"
463The following settings are node\-specific, that is, every node can have 477The following settings are node\-specific, that is, every node can have
464different settings, even within the same gvpe instance. Settings that are 478different settings, even within the same gvpe instance. Settings that are
465executed before the first node section set the defaults, settings that are 479set before the first node section set the defaults, settings that are
466executed within a node section only apply to the given node. 480set within a node section only apply to the given node.
481.IP "allow-direct = nodename" 4
482.IX Item "allow-direct = nodename"
483Allow direct connections to this node. See \f(CW\*(C`deny\-direct\*(C'\fR for more info.
467.IP "compress = yes|true|on | no|false|off" 4 484.IP "compress = yes|true|on | no|false|off" 4
468.IX Item "compress = yes|true|on | no|false|off" 485.IX Item "compress = yes|true|on | no|false|off"
469Wether to compress data packets sent to this host (default: \f(CW\*(C`yes\*(C'\fR). 486Wether to compress data packets sent to this host (default: \f(CW\*(C`yes\*(C'\fR).
470Compression is really cheap even on slow computers and has no size 487Compression is really cheap even on slow computers and has no size
471overhead at all, so enabling this is a good idea. 488overhead at all, so enabling this is a good idea.
475try to establish and keep a connection to the given host), \f(CW\*(C`never\*(C'\fR 492try to establish and keep a connection to the given host), \f(CW\*(C`never\*(C'\fR
476(never initiate a connection to the given host, but accept connections), 493(never initiate a connection to the given host, but accept connections),
477\&\f(CW\*(C`ondemand\*(C'\fR (try to establish a connection on the first packet sent, and 494\&\f(CW\*(C`ondemand\*(C'\fR (try to establish a connection on the first packet sent, and
478take it down after the keepalive interval) or \f(CW\*(C`disabled\*(C'\fR (node is bad, 495take it down after the keepalive interval) or \f(CW\*(C`disabled\*(C'\fR (node is bad,
479don't talk to it). 496don't talk to it).
497.IP "deny-direct = nodename | *" 4
498.IX Item "deny-direct = nodename | *"
499Deny direct connections to the specified node (or all nodes when \f(CW\*(C`*\*(C'\fR
500is given). Only one node can be specified, but you can use multiple
501\&\f(CW\*(C`allow\-direct\*(C'\fR and \f(CW\*(C`deny\-direct\*(C'\fR statements. This only makes sense in
502networks with routers, as routers are required for indirect connections.
503.Sp
504Sometimes, a node cannot reach some other nodes for reasons of network
505connectivity. For example, a node behind a firewall that only allows
506conenctions to/from a single other node in the network. In this case one
507should specify \f(CW\*(C`deny\-direct = *\*(C'\fR and \f(CW\*(C`allow\-direct = othernodename\*(C'\fR (the other
508node \fImust\fR be a router for this to work).
509.Sp
510The algorithm to check wether a connection may be direct is as follows:
511.Sp
5121. Other node mentioned in a \f(CW\*(C`allow\-direct\*(C'\fR? If yes, allow the connection.
513.Sp
5142. Other node mentioned in a \f(CW\*(C`deny\-direct\*(C'\fR? If yes, deny direct connections.
515.Sp
5163. Allow the connection.
517.Sp
518That is, \f(CW\*(C`allow\-direct\*(C'\fR takes precende over \f(CW\*(C`deny\-direct\*(C'\fR.
519.Sp
520The check is done in both directions, i.e. both nodes must allow a direct
521connection before one is attempted, so you only need to specify connect
522limitations on one node.
480.IP "dns-domain = domain-suffix" 4 523.IP "dns-domain = domain-suffix" 4
481.IX Item "dns-domain = domain-suffix" 524.IX Item "dns-domain = domain-suffix"
482The \s-1DNS\s0 domain suffix that points to the \s-1DNS\s0 tunnel server for this node. 525The \s-1DNS\s0 domain suffix that points to the \s-1DNS\s0 tunnel server for this node.
483.Sp 526.Sp
484The domain must point to a \s-1NS\s0 record that points to the \fIdns-hostname\fR, 527The domain must point to a \s-1NS\s0 record that points to the \fIdns-hostname\fR,
539protocol is enabled automatically). 582protocol is enabled automatically).
540.Sp 583.Sp
541\&\s-1NOTE:\s0 Please specify \f(CW\*(C`enable\-udp = yes\*(C'\fR if you want t use it even though 584\&\s-1NOTE:\s0 Please specify \f(CW\*(C`enable\-udp = yes\*(C'\fR if you want t use it even though
542it might get switched on automatically, as some future version might 585it might get switched on automatically, as some future version might
543default to another default protocol. 586default to another default protocol.
587.IP "hostname = hostname | ip [can not be defaulted]" 4
588.IX Item "hostname = hostname | ip [can not be defaulted]"
589Forces the address of this node to be set to the given dns hostname or ip
590address. It will be resolved before each connect request, so dyndns should
591work fine. If this setting is not specified and a router is available,
592then the router will be queried for the address of this node. Otherwise,
593the connection attempt will fail.
544.IP "icmp-type = integer" 4 594.IP "icmp-type = integer" 4
545.IX Item "icmp-type = integer" 595.IX Item "icmp-type = integer"
546Sets the type value to be used for outgoing (and incoming) packets sent 596Sets the type value to be used for outgoing (and incoming) packets sent
547via the \s-1ICMP\s0 transport. 597via the \s-1ICMP\s0 transport.
548.Sp 598.Sp
549The default is \f(CW0\fR (which is \f(CW\*(C`echo\-reply\*(C'\fR, also known as 599The default is \f(CW0\fR (which is \f(CW\*(C`echo\-reply\*(C'\fR, also known as
550\&\*(L"ping\-replies\*(R"). Other useful values include \f(CW8\fR (\f(CW\*(C`echo\-request\*(C'\fR, a.k.a. 600\&\*(L"ping\-replies\*(R"). Other useful values include \f(CW8\fR (\f(CW\*(C`echo\-request\*(C'\fR, a.k.a.
551\&\*(L"ping\*(R") and \f(CW11\fR (\f(CW\*(C`time\-exceeded\*(C'\fR), but any 8\-bit value can be used. 601\&\*(L"ping\*(R") and \f(CW11\fR (\f(CW\*(C`time\-exceeded\*(C'\fR), but any 8\-bit value can be used.
602.IP "if-up-data = value" 4
603.IX Item "if-up-data = value"
604The value specified using this directive will be passed to the \f(CW\*(C`if\-up\*(C'\fR
605script in the environment variable \f(CW\*(C`IFUPDATA\*(C'\fR.
552.IP "inherit-tos = yes|true|on | no|false|off" 4 606.IP "inherit-tos = yes|true|on | no|false|off" 4
553.IX Item "inherit-tos = yes|true|on | no|false|off" 607.IX Item "inherit-tos = yes|true|on | no|false|off"
554Wether to inherit the \s-1TOS\s0 settings of packets sent to the tunnel when 608Wether to inherit the \s-1TOS\s0 settings of packets sent to the tunnel when
555sending packets to this node (default: \f(CW\*(C`yes\*(C'\fR). If set to \f(CW\*(C`yes\*(C'\fR then 609sending packets to this node (default: \f(CW\*(C`yes\*(C'\fR). If set to \f(CW\*(C`yes\*(C'\fR then
556outgoing tunnel packets will have the same \s-1TOS\s0 setting as the packets sent 610outgoing tunnel packets will have the same \s-1TOS\s0 setting as the packets sent
608.SH "SEE ALSO" 662.SH "SEE ALSO"
609.IX Header "SEE ALSO" 663.IX Header "SEE ALSO"
610\&\fIgvpe\fR\|(5), \fIgvpe\fR\|(8), \fIgvpectrl\fR\|(8). 664\&\fIgvpe\fR\|(5), \fIgvpe\fR\|(8), \fIgvpectrl\fR\|(8).
611.SH "AUTHOR" 665.SH "AUTHOR"
612.IX Header "AUTHOR" 666.IX Header "AUTHOR"
613Marc Lehmann <gvpe@plan9.de> 667Marc Lehmann <gvpe@schmorp.de>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines