update for new -tpg argument
[rrq/rrqnet.git] / rrqnet-ifupdown.sh.8.adoc
index 98d1210093cacd2f69dd64114acf610530265cca..3bca61683f4b3f683d7a3b65dd0357cf5393e5df 100644 (file)
@@ -10,21 +10,20 @@ ifup and ifdown
 
 SYNOPSIS
 --------
 
 SYNOPSIS
 --------
- ln -s /etc/rrqnet/ifupdown.sh /etc/network/if-post-down.d/rrqnet
- ln -s /etc/rrqnet/ifupdown.sh /etc/network/if-pre-up.d/rrqnet
+ for HOOKD in down post-down pre-up up ; do
+     ln -s /etc/rrqnet/ifupdown.sh /etc/network/if-$HOOKD.d/rrqnet
+ done
 
 DESCRIPTION
 -----------
 
 */etc/rrqnet/ifupdown.sh* is a utility script for managing +rrqnet+
 virtual cables via +/etc/network/interfaces+ declarations. In normal
 
 DESCRIPTION
 -----------
 
 */etc/rrqnet/ifupdown.sh* is a utility script for managing +rrqnet+
 virtual cables via +/etc/network/interfaces+ declarations. In normal
-use the script is set up as "pre-up" and "post-down" scripts by means
-of links from +/etc/network/if-pre-up.d/rrqnet+ and from
-+/etc/network/if-post-down.d/rrqnet+. It will then be invoked by
-+ifup+ and +ifdown+ for handling the +rrqnet+ declarations and bring
-up or tear down +rrqnet+ virtual cable plugs over +tap+ interfaces.
+use the script is set up as hook script by means of links from all
++/etc/network/if-*.d/rrqnet+ for automatic invocation with the
+commands +ifup+ and +ifdown+.
 
 
-An +rrqnet+ virtual cable uses a +tap+ interface at each cable end
+A +rrqnet+ virtual cable uses a +tap+ interface at each cable end
 host, and a service process (aptly named +rrqnet+) to tunnel the +tap+
 network traffic over UDP. Each +rrqnet+ process acts as a networking
 switch that facilitates level 2 connectivity among all its end points
 host, and a service process (aptly named +rrqnet+) to tunnel the +tap+
 network traffic over UDP. Each +rrqnet+ process acts as a networking
 switch that facilitates level 2 connectivity among all its end points
@@ -32,18 +31,21 @@ with packet routing according to the destination Ethernet machine
 addresses.
 
 This script handles the special purpose "option codes" for the IFACE
 addresses.
 
 This script handles the special purpose "option codes" for the IFACE
-stanzas that are used for declaring the +rrqnet+ daemon configuration
+blocks that are used for declaring the +rrqnet+ daemon configuration
 to for the +tap+ interface for its virtual cabling. I.e., the IFACE
 to for the +tap+ interface for its virtual cabling. I.e., the IFACE
-stanza is made for the tap interface and it includes one or more of
+block is made for the tap interface and it includes one or more of
 these +rrqnet+ options.
 
 The list of IFACE options for +rrqnet+ are:
 
 these +rrqnet+ options.
 
 The list of IFACE options for +rrqnet+ are:
 
-*rrqnet_port* _port_::
+*rrqnet_port* [ notap ] _port_::
 
 
-This IFACE option is required both as way of marking that the stanza
-is for an +rrqnet+ virtual cable +tap+, and to declare which UDP port
-the +rrqnet+ daemon should listen on for incoming cabling.
+This IFACE option is required both as way of marking that the
+configuration block is for an +rrqnet+ virtual cable +tap+, and to
+declare which UDP port the +rrqnet+ daemon should listen on for
+incoming cabling. The port number may be preceded by +notap+ to
+indcate that this +rrqnet+ should not have an actual tap interface on
+the host but rather only serve to interconnect remote connections.
 
 *rrqnet_nice* _nice_::
 
 
 *rrqnet_nice* _nice_::
 
@@ -60,8 +62,8 @@ remotes for a single +rrqnet+ daemon are declared by using multiple
 *rrqnet_options* _options_::
 
 This IFACE option is used for declaring any additional +rrqnet+ daemon
 *rrqnet_options* _options_::
 
 This IFACE option is used for declaring any additional +rrqnet+ daemon
-settings ([-4] [-B n] [-T n] [-m mcast]). Refer to the +rrqnet+ man
-page for the full specification.
+settings ([-tpg] [-4] [-B n] [-T n] [-m mcast]). Refer to the +rrqnet+
+man page for the full specification.
 
 *rrqnet_log* _level_ _pathname_::
 
 
 *rrqnet_log* _level_ _pathname_::
 
@@ -78,6 +80,20 @@ made a "port" of the nominated preceding +bridge+ interface. The same
 things is achieved by including the +tap+ in the +bridge_ports+ list
 of the bridge, provided that the +tap+ is created before the bridge.
 
 things is achieved by including the +tap+ in the +bridge_ports+ list
 of the bridge, provided that the +tap+ is created before the bridge.
 
+*rrqnet_dhcp* _method args_::
+
+This IFACE option is used for attaching a DHCP client to the
+interface. The +method+ identifies the DHCP client method, and
+currently only the +dhclient+ method is defined, which is run as
+follows:
++
+----
+dhclient -pf $PIDFILE $DHCPARGS -lf $LEASES $IFACE
+----
++
+The given +args+ if non-empty replaces +$DHCPARGS+, which by default
+are "-4 -cf /dev/null". Refer to the +dhclient+ man page for details.
+
 EXAMPLES
 --------
 
 EXAMPLES
 --------
 
@@ -96,13 +112,13 @@ iface mynet0 inet static
 The above example declares a virtual cable plug for UDP port +3636+
 tunneling through host +111.222.333.444+ port +3636+ where the local
 +tap+ +mynet0+ has ipv4 address +10.0.0.2+. The +rrqnet_port+ option
 The above example declares a virtual cable plug for UDP port +3636+
 tunneling through host +111.222.333.444+ port +3636+ where the local
 +tap+ +mynet0+ has ipv4 address +10.0.0.2+. The +rrqnet_port+ option
-marks the stanza as an ++rrqnet+ virtual cabling set up which then is
-duly handled by +rrqnet-ifupdown.sh+.
+marks the IFACE block as an ++rrqnet+ virtual cabling set up which
+then is duly handled by +rrqnet-ifupdown.sh+.
 
 The +rrqnet_options+ in the example tells the +rrqnet+ process to use
 
 The +rrqnet_options+ in the example tells the +rrqnet+ process to use
-an ipv4-only socket, 10 packet buffers and a single delivery thread.
-If left out, the default is to use an ipv6 socket, 10 bufffers and 5
-threads.
+an ipv4-only socket, 10 packet buffers and a single delivery thread,
+in addition to the socket reader threads. The default is to use an
+ipv6 socket, 10 bufffers and 5 delivery threads.
 
 NOTES
 -----
 
 NOTES
 -----
@@ -117,14 +133,20 @@ tunnel traffic. The tunnel packets will have a UDP header in addition
 to the orignal packet, which means that packets grow with some 28/48
 (ipv4/6) bytes.
 
 to the orignal packet, which means that packets grow with some 28/48
 (ipv4/6) bytes.
 
+
 SEE ALSO
 --------
 
 SEE ALSO
 --------
 
- *brctl(8)* - ethernet bridge administration
- *daemon(1)* - turns other processes into daemons
- *interfaces(5)* - network interface configuration for ifup and ifdown
- *rrqnet(8)* - packet tunneling over UDP, multiple channels
+*brctl(8)* - ethernet bridge administration
+
+*daemon(1)* - turns other processes into daemons
+
+*dhclient(8)* - Dynamic Host Configuration Protocol Client
+
+*interfaces(5)* - network interface configuration for ifup and ifdown
+
+*rrqnet(8)* - packet tunneling over UDP, multiple channels
+
 AUTHOR
 ------
 Ralph Rönnquist <ralph.ronnquist@gmail.com>
 AUTHOR
 ------
 Ralph Rönnquist <ralph.ronnquist@gmail.com>