Merge pull request 'version' (#10) from rrq/rrqnet:suites/unstable into suites/unstable
[rrq/rrqnet.git] / rrqnet.8.adoc
index c7e18238b4d8640973ece02c56371c39953cb6d3..ccc35c10107b982bc6d9ab8cdc70e5a4a98e8f8a 100644 (file)
@@ -23,9 +23,9 @@ the remotes it may communicate with.
 OPTIONS
 -------
 
-Note that any options must be given in the fixed order:
+Note that any options must be given or omitted in the fixed order:
 
-    [-v] [-4] [-B n] [-T n] [-m mcast] [-t tap]
+  [-v] [-tpg] [-4] [-B n] [-T n] [-m mcast] [-t tap] [-S source]
 
 *-v*::
 
@@ -33,6 +33,13 @@ This tells *rrqnet* to log its operation on +stderr+. Use *-vv* to
 also see logs about connections and messaging, or *-vvv* for *rrqnet*
 to be insanely verbose on +stderr+ about virtually everything.
 
+*-tpg*::
+
+This enables a special UDP transport quirk where *rrqnet* expands any
+packet in the range [1461,1477] bytes to be of 1478 bytes instead. It
+is a work-around for an observed problem in a NAT traversal case for
+certain packet sizes in that range.
+
 *-4*::
 
 This directs *rrqnet* to use an ipv4-only socket for its UDP. By
@@ -72,6 +79,14 @@ networking channel in a format compatible with VDE plugs.
 * Without a *-t* argument, *rrqnet* will operate merely as a virtual
 cable switch among its channels.
 
+*-S* _source_::
+
+This tells which source address to use for outgoing UDP messages.
+
+port::
+
+This non-optional argument tells which UDP port to use.
+
 _address-block[:port][=cryptfile]_ [ *-i* _mac_[,_mac_]* ]::
 
 Remotes are declared as +ipv4+ or +ipv6+ network address blocks
@@ -92,12 +107,12 @@ hosts via UDP messaging between the hosts.
 collection of fully connected hosts, although the more common is a
 "star' formation. See the EXAMPLES section for inspiration.
 
-*rrqnet* includes logic aiming to protect against broadcast cycles.
-Howewer it does not have the more advanced spanning tree logic that is
-offered by bridge interfaces. In general it's probably best to avoid
-cabling cycles and perhaps rather run several *rrqnet* on a host with
-their taps connected with a bridge interface. Though, multiple virtual
-cabling paths between hosts might increase connection reliability.
+*rrqnet* includes logic to protect against broadcast cycles. Whilst
+acting as a switch for all its remotes it does not have spanning tree
+logic as is offered by bridge interfaces. Generally it's probably best
+to avoid cabling cycles, but *rrqnet* also handles full mesh linking
+between multiple hosts without additional configuration. Such a setup
+is also dynamically adapting to prefer the fastest link between hosts.
 
 By default *rrqnet* opens an +ipv6+ socket on the given port. This
 mode handles both +ipv6+ and +ipv4+ remotes with +ipv4+ remotes
@@ -440,6 +455,7 @@ Using +-t -+ for stdin/stdout packet traffic is compatible with
 SEE ALSO
 --------
 *rrqnet-cron(8)* - Management script to uphold a *rrqnet* plug.
+*rrqnet-ifupdown(8)* - Management script to uphold a *rrqnet* plug.
 
 *vde_plug(1)* - Virtual Distributed Ethernet plug.