Packet tunneling over UDP, multiple channels
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

126 lines
4.4 KiB
:doctype: manpage
:revdate: {sys:date "+%Y-%m-%d %H:%M:%S"}
2 years ago - script for managing rrqnet virtual cables with
2 years ago
iup and ifdown
2 years ago
ln -s /etc/rrqnet/ /etc/network/if-post-down.d/rrqnet
ln -s /etc/rrqnet/ /etc/network/if-pre-up.d/rrqnet
2 years ago
*/etc/rrqnet/* 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.
An +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
with packet routing according to the destination Ethernet machine
This script handles the special purpose "option codes" for the IFACE
stanzas that are used for declaring the +rrqnet+ daemon configuration
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
these +rrqnet+ options.
The list of IFACE options for +rrqnet+ are:
*rrqnet_port* _port_::
2 years ago
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.
*rrqnet_remote* _remote_::
This IFACE option is used for declaring the remote connection details.
Refer to +rrqnet+ man page for the full specification. Multiple
2 years ago
remotes for a single +rrqnet+ daemon are declared by using multiple
+rrqnet_remote+ lines.
*rrqnet_options* _options_::
2 years ago
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.
*rrqnet_log* _level_ _pathname_::
This IFACE option is used for declaring the log level as one of +-v+,
+-vv+ or +-vvv+, and to nominate the log file. If omitted, all the
2 years ago
+rrqnet+ daemon output will be directed to +/dev/null+. If __pathname_
is of the form "facility.priority", then stderr is sent to +syslog+.
Otherwise, stderr is appended to the nominated file.
*rrqnet_bridge* _bridge_::
2 years ago
This IFACE option is only used to make the +tap+ (once created) to be
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.
The following is a configuration example:
iface mynet0 inet static
rrqnet_port 3636
rrqnet_options -4 -B 10 -T 1
rrqnet_remote 111.222.333.444:3636=/sec/mynet.key
rrqnet_log -v /var/log/mynet0.log
2 years ago
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 + The +rrqnet_port+ option
marks the stanza as an ++rrqnet+ virtual cabling set up which then is
duly handled by
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
2 years ago
This script creates the +tap+ interface if needed, and brings it up.
Thereafter, if so configured the +tap+ is added to the +bridge+, and
then the +rrqnet+ virtual cable process is started under a +daemon+
2 years ago
Note that the +rrqnet+ virtual cable requires UDP networking for its
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.
2 years ago
*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
Ralph Rönnquist <>