Updated manual and documentation

This commit is contained in:
Mark Qvist 2024-08-29 17:02:22 +02:00
parent b3536f16e8
commit dec9145d65
7 changed files with 280 additions and 82 deletions

Binary file not shown.

Binary file not shown.

View File

@ -312,8 +312,9 @@ Filter output to only show some interfaces:
.. code:: text .. code:: text
usage: rnstatus.py [-h] [--config CONFIG] [--version] [-a] [-A] [-s SORT] usage: rnstatus [-h] [--config CONFIG] [--version] [-a] [-A]
[-r] [-j] [-v] [filter] [-l] [-s SORT] [-r] [-j] [-R hash] [-i path]
[-w seconds] [-v] [filter]
Reticulum Network Stack Status Reticulum Network Stack Status
@ -326,9 +327,13 @@ Filter output to only show some interfaces:
--version show program's version number and exit --version show program's version number and exit
-a, --all show all interfaces -a, --all show all interfaces
-A, --announce-stats show announce stats -A, --announce-stats show announce stats
-l, --link-stats show link stats
-s SORT, --sort SORT sort interfaces by [rate, traffic, rx, tx, announces, arx, atx, held] -s SORT, --sort SORT sort interfaces by [rate, traffic, rx, tx, announces, arx, atx, held]
-r, --reverse reverse sorting -r, --reverse reverse sorting
-j, --json output in JSON format -j, --json output in JSON format
-R hash transport identity hash of remote instance to get status from
-i path path to identity used for remote management
-w seconds timeout before giving up on remote queries
-v, --verbose -v, --verbose
@ -452,8 +457,9 @@ Resolve path to a destination:
.. code:: text .. code:: text
usage: rnpath.py [-h] [--config CONFIG] [--version] [-t] [-r] [-d] [-D] usage: rnpath [-h] [--config CONFIG] [--version] [-t] [-m hops]
[-x] [-w seconds] [-v] [destination] [-r] [-d] [-D] [-x] [-w seconds] [-R hash] [-i path]
[-W seconds] [-j] [-v] [destination]
Reticulum Path Discovery Utility Reticulum Path Discovery Utility
@ -465,11 +471,16 @@ Resolve path to a destination:
--config CONFIG path to alternative Reticulum config directory --config CONFIG path to alternative Reticulum config directory
--version show program's version number and exit --version show program's version number and exit
-t, --table show all known paths -t, --table show all known paths
-m hops, --max hops maximum hops to filter path table by
-r, --rates show announce rate info -r, --rates show announce rate info
-d, --drop remove the path to a destination -d, --drop remove the path to a destination
-D, --drop-announces drop all queued announces -D, --drop-announces drop all queued announces
-x, --drop-via drop all paths via specified transport instance -x, --drop-via drop all paths via specified transport instance
-w seconds timeout before giving up -w seconds timeout before giving up
-R hash transport identity hash of remote instance to manage
-i path path to identity used for remote management
-W seconds timeout before giving up on remote queries
-j, --json output in JSON format
-v, --verbose -v, --verbose
@ -524,20 +535,27 @@ these as part of the result as well.
.. code:: text .. code:: text
usage: rnprobe [-h] [--config CONFIG] [--version] [-v] [-s SIZE] usage: rnprobe [-h] [--config CONFIG] [-s SIZE] [-n PROBES]
[-t seconds] [-w seconds] [--version] [-v]
[full_name] [destination_hash] [full_name] [destination_hash]
Reticulum Probe Utility Reticulum Probe Utility
positional arguments: positional arguments:
full_name full destination name in dotted notation full_name full destination name in dotted notation
destination_hash hexadecimal hash of the destination destination_hash hexadecimal hash of the destination
optional arguments: options:
-h, --help show this help message and exit -h, --help show this help message and exit
--config CONFIG path to alternative Reticulum config directory --config CONFIG path to alternative Reticulum config directory
-s SIZE, --size SIZE size of probe packet payload in bytes -s SIZE, --size SIZE size of probe packet payload in bytes
--version show program's version number and exit -n PROBES, --probes PROBES
number of probes to send
-t seconds, --timeout seconds
timeout before giving up
-w seconds, --wait seconds
time between each probe
--version show program's version number and exit
-v, --verbose -v, --verbose
@ -578,8 +596,9 @@ Or fetch a file from the remote system:
.. code:: text .. code:: text
usage: rncp.py [-h] [--config path] [-v] [-q] [-S] [-l] [-f] [-b seconds] usage: rncp [-h] [--config path] [-v] [-q] [-S] [-l] [-F] [-f]
[-a allowed_hash] [-n] [-p] [-w seconds] [--version] [file] [destination] [-j path] [-b seconds] [-a allowed_hash] [-n] [-p]
[-w seconds] [--version] [file] [destination]
Reticulum File Transfer Utility Reticulum File Transfer Utility
@ -594,10 +613,12 @@ Or fetch a file from the remote system:
-q, --quiet decrease verbosity -q, --quiet decrease verbosity
-S, --silent disable transfer progress output -S, --silent disable transfer progress output
-l, --listen listen for incoming transfer requests -l, --listen listen for incoming transfer requests
-F, --allow-fetch allow authenticated clients to fetch files
-f, --fetch fetch file from remote listener instead of sending -f, --fetch fetch file from remote listener instead of sending
-j path, --jail path restrict fetch requests to specified path
-b seconds announce interval, 0 to only announce at startup -b seconds announce interval, 0 to only announce at startup
-a allowed_hash accept from this identity -a allowed_hash allow this identity
-n, --no-auth accept files and fetches from anyone -n, --no-auth accept requests from anyone
-p, --print-identity print identity and destination info and exit -p, --print-identity print identity and destination info and exit
-w seconds sender timeout before giving up -w seconds sender timeout before giving up
--version show program's version number and exit --version show program's version number and exit
@ -685,15 +706,19 @@ to create and provision new :ref:`RNodes<rnode-main>` from any supported hardwar
.. code:: text .. code:: text
usage: rnodeconf.py [-h] [-i] [-a] [-u] [-U] [--fw-version version] [--nocheck] [-e] usage: rnodeconf [-h] [-i] [-a] [-u] [-U] [--fw-version version]
[-E] [-C] [--baud-flash baud_flash] [-N] [-T] [-b] [-B] [-p] [-D i] [--fw-url url] [--nocheck] [-e] [-E] [-C]
[--freq Hz] [--bw Hz] [--txp dBm] [--sf factor] [--cr rate] [--baud-flash baud_flash] [-N] [-T] [-b] [-B] [-p] [-D i]
[--eeprom-backup] [--eeprom-dump] [--eeprom-wipe] [-P] [--display-addr byte] [--freq Hz] [--bw Hz] [--txp dBm]
[--trust-key hexbytes] [--version] [port] [--sf factor] [--cr rate] [--eeprom-backup] [--eeprom-dump]
[--eeprom-wipe] [-P] [--trust-key hexbytes] [--version] [-f]
[-r] [-k] [-S] [-H FIRMWARE_HASH] [--platform platform]
[--product product] [--model model] [--hwrev revision]
[port]
RNode Configuration and firmware utility. This program allows you to change various RNode Configuration and firmware utility. This program allows you to change
settings and startup modes of RNode. It can also install, flash and update the firmware various settings and startup modes of RNode. It can also install, flash and
on supported devices. update the firmware on supported devices.
positional arguments: positional arguments:
port serial port where RNode is attached port serial port where RNode is attached
@ -703,20 +728,26 @@ to create and provision new :ref:`RNodes<rnode-main>` from any supported hardwar
-i, --info Show device info -i, --info Show device info
-a, --autoinstall Automatic installation on various supported devices -a, --autoinstall Automatic installation on various supported devices
-u, --update Update firmware to the latest version -u, --update Update firmware to the latest version
-U, --force-update Update to specified firmware even if version matches or is older than installed version -U, --force-update Update to specified firmware even if version matches
--fw-version version Use a specific firmware version for update or autoinstall or is older than installed version
--fw-version version Use a specific firmware version for update or
autoinstall
--fw-url url Use an alternate firmware download URL
--nocheck Don't check for firmware updates online --nocheck Don't check for firmware updates online
-e, --extract Extract firmware from connected RNode for later use -e, --extract Extract firmware from connected RNode for later use
-E, --use-extracted Use the extracted firmware for autoinstallation or update -E, --use-extracted Use the extracted firmware for autoinstallation or
update
-C, --clear-cache Clear locally cached firmware files -C, --clear-cache Clear locally cached firmware files
--baud-flash baud_flash --baud-flash baud_flash
Set specific baud rate when flashing device. Default is 921600 Set specific baud rate when flashing device. Default
is 921600
-N, --normal Switch device to normal mode -N, --normal Switch device to normal mode
-T, --tnc Switch device to TNC mode -T, --tnc Switch device to TNC mode
-b, --bluetooth-on Turn device bluetooth on -b, --bluetooth-on Turn device bluetooth on
-B, --bluetooth-off Turn device bluetooth off -B, --bluetooth-off Turn device bluetooth off
-p, --bluetooth-pair Put device into bluetooth pairing mode -p, --bluetooth-pair Put device into bluetooth pairing mode
-D i, --display i Set display intensity (0-255) -D i, --display i Set display intensity (0-255)
--display-addr byte Set display address as hex byte (00 - FF)
--freq Hz Frequency in Hz for TNC mode --freq Hz Frequency in Hz for TNC mode
--bw Hz Bandwidth in Hz for TNC mode --bw Hz Bandwidth in Hz for TNC mode
--txp dBm TX power in dBm for TNC mode --txp dBm TX power in dBm for TNC mode
@ -728,10 +759,46 @@ to create and provision new :ref:`RNodes<rnode-main>` from any supported hardwar
-P, --public Display public part of signing key -P, --public Display public part of signing key
--trust-key hexbytes Public key to trust for device verification --trust-key hexbytes Public key to trust for device verification
--version Print program version and exit --version Print program version and exit
-f, --flash Flash firmware and bootstrap EEPROM
-r, --rom Bootstrap EEPROM without flashing firmware
-k, --key Generate a new signing key and exit
-S, --sign Display public part of signing key
-H FIRMWARE_HASH, --firmware-hash FIRMWARE_HASH
Display installed firmware hash
--platform platform Platform specification for device bootstrap
--product product Product specification for device bootstrap
--model model Model code for device bootstrap
--hwrev revision Hardware revision for device bootstrap
For more information on how to create your own RNodes, please read the :ref:`Creating RNodes<rnode-creating>` For more information on how to create your own RNodes, please read the :ref:`Creating RNodes<rnode-creating>`
section of this manual. section of this manual.
Remote Management
-----------------
It is possible to allow remote management of Reticulum
systems using the various built-in utilities, such as
``rnstatus`` and ``rnpath``. To do so, you will need to set
the ``enable_remote_management`` directive in the ``[reticulum]``
section of the configuration file. You will also need to specify
one or more Reticulum Identity hashes for authenticating the
queries from client programs. For this purpose, you can use
existing identity files, or generate new ones with the rnid utility.
The following is a truncated example of enabling remote management
in the Reticulum configuration file:
.. code:: text
[reticulum]
...
enable_remote_management = yes
remote_management_allowed = 9fb6d773498fb3feda407ed8ef2c3229, 2d882c5586e548d79b5af27bca1776dc
...
For a complete example configuration, you can run ``rnsd --exampleconfig``.
Improving System Configuration Improving System Configuration
------------------------------ ------------------------------

View File

@ -281,6 +281,7 @@ to participate in the development of Reticulum itself.</p>
<li class="toctree-l3"><a class="reference internal" href="using.html#the-rnodeconf-utility">The rnodeconf Utility</a></li> <li class="toctree-l3"><a class="reference internal" href="using.html#the-rnodeconf-utility">The rnodeconf Utility</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l2"><a class="reference internal" href="using.html#remote-management">Remote Management</a></li>
<li class="toctree-l2"><a class="reference internal" href="using.html#improving-system-configuration">Improving System Configuration</a><ul> <li class="toctree-l2"><a class="reference internal" href="using.html#improving-system-configuration">Improving System Configuration</a><ul>
<li class="toctree-l3"><a class="reference internal" href="using.html#fixed-serial-port-names">Fixed Serial Port Names</a></li> <li class="toctree-l3"><a class="reference internal" href="using.html#fixed-serial-port-names">Fixed Serial Port Names</a></li>
<li class="toctree-l3"><a class="reference internal" href="using.html#reticulum-as-a-system-service">Reticulum as a System Service</a></li> <li class="toctree-l3"><a class="reference internal" href="using.html#reticulum-as-a-system-service">Reticulum as a System Service</a></li>

File diff suppressed because one or more lines are too long

View File

@ -492,8 +492,9 @@ Reticulum Transport Instance &lt;5245a8efe1788c6a1cd36144a270e13b&gt; running
</pre></div> </pre></div>
</div> </div>
<p><strong>All Command-Line Options</strong></p> <p><strong>All Command-Line Options</strong></p>
<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>usage: rnstatus.py [-h] [--config CONFIG] [--version] [-a] [-A] [-s SORT] <div class="highlight-text notranslate"><div class="highlight"><pre><span></span>usage: rnstatus [-h] [--config CONFIG] [--version] [-a] [-A]
[-r] [-j] [-v] [filter] [-l] [-s SORT] [-r] [-j] [-R hash] [-i path]
[-w seconds] [-v] [filter]
Reticulum Network Stack Status Reticulum Network Stack Status
@ -506,9 +507,13 @@ options:
--version show program&#39;s version number and exit --version show program&#39;s version number and exit
-a, --all show all interfaces -a, --all show all interfaces
-A, --announce-stats show announce stats -A, --announce-stats show announce stats
-l, --link-stats show link stats
-s SORT, --sort SORT sort interfaces by [rate, traffic, rx, tx, announces, arx, atx, held] -s SORT, --sort SORT sort interfaces by [rate, traffic, rx, tx, announces, arx, atx, held]
-r, --reverse reverse sorting -r, --reverse reverse sorting
-j, --json output in JSON format -j, --json output in JSON format
-R hash transport identity hash of remote instance to get status from
-i path path to identity used for remote management
-w seconds timeout before giving up on remote queries
-v, --verbose -v, --verbose
</pre></div> </pre></div>
</div> </div>
@ -609,8 +614,9 @@ Path found, destination &lt;c89b4da064bf66d280f0e4d8abfd9806&gt; is 4 hops away
</pre></div> </pre></div>
</div> </div>
<p><strong>All Command-Line Options</strong></p> <p><strong>All Command-Line Options</strong></p>
<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>usage: rnpath.py [-h] [--config CONFIG] [--version] [-t] [-r] [-d] [-D] <div class="highlight-text notranslate"><div class="highlight"><pre><span></span>usage: rnpath [-h] [--config CONFIG] [--version] [-t] [-m hops]
[-x] [-w seconds] [-v] [destination] [-r] [-d] [-D] [-x] [-w seconds] [-R hash] [-i path]
[-W seconds] [-j] [-v] [destination]
Reticulum Path Discovery Utility Reticulum Path Discovery Utility
@ -622,11 +628,16 @@ options:
--config CONFIG path to alternative Reticulum config directory --config CONFIG path to alternative Reticulum config directory
--version show program&#39;s version number and exit --version show program&#39;s version number and exit
-t, --table show all known paths -t, --table show all known paths
-m hops, --max hops maximum hops to filter path table by
-r, --rates show announce rate info -r, --rates show announce rate info
-d, --drop remove the path to a destination -d, --drop remove the path to a destination
-D, --drop-announces drop all queued announces -D, --drop-announces drop all queued announces
-x, --drop-via drop all paths via specified transport instance -x, --drop-via drop all paths via specified transport instance
-w seconds timeout before giving up -w seconds timeout before giving up
-R hash transport identity hash of remote instance to manage
-i path path to identity used for remote management
-W seconds timeout before giving up on remote queries
-j, --json output in JSON format
-v, --verbose -v, --verbose
</pre></div> </pre></div>
</div> </div>
@ -669,20 +680,27 @@ Round-trip time is 1.809 seconds over 1 hop [RSSI -73 dBm] [SNR 12.0 dB]
</pre></div> </pre></div>
</div> </div>
<p><strong>All Command-Line Options</strong></p> <p><strong>All Command-Line Options</strong></p>
<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>usage: rnprobe [-h] [--config CONFIG] [--version] [-v] [-s SIZE] <div class="highlight-text notranslate"><div class="highlight"><pre><span></span>usage: rnprobe [-h] [--config CONFIG] [-s SIZE] [-n PROBES]
[-t seconds] [-w seconds] [--version] [-v]
[full_name] [destination_hash] [full_name] [destination_hash]
Reticulum Probe Utility Reticulum Probe Utility
positional arguments: positional arguments:
full_name full destination name in dotted notation full_name full destination name in dotted notation
destination_hash hexadecimal hash of the destination destination_hash hexadecimal hash of the destination
optional arguments: options:
-h, --help show this help message and exit -h, --help show this help message and exit
--config CONFIG path to alternative Reticulum config directory --config CONFIG path to alternative Reticulum config directory
-s SIZE, --size SIZE size of probe packet payload in bytes -s SIZE, --size SIZE size of probe packet payload in bytes
--version show program&#39;s version number and exit -n PROBES, --probes PROBES
number of probes to send
-t seconds, --timeout seconds
timeout before giving up
-w seconds, --wait seconds
time between each probe
--version show program&#39;s version number and exit
-v, --verbose -v, --verbose
</pre></div> </pre></div>
</div> </div>
@ -710,8 +728,9 @@ and simply running the program in listener mode:</p>
</pre></div> </pre></div>
</div> </div>
<p><strong>All Command-Line Options</strong></p> <p><strong>All Command-Line Options</strong></p>
<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>usage: rncp.py [-h] [--config path] [-v] [-q] [-S] [-l] [-f] [-b seconds] <div class="highlight-text notranslate"><div class="highlight"><pre><span></span>usage: rncp [-h] [--config path] [-v] [-q] [-S] [-l] [-F] [-f]
[-a allowed_hash] [-n] [-p] [-w seconds] [--version] [file] [destination] [-j path] [-b seconds] [-a allowed_hash] [-n] [-p]
[-w seconds] [--version] [file] [destination]
Reticulum File Transfer Utility Reticulum File Transfer Utility
@ -726,10 +745,12 @@ options:
-q, --quiet decrease verbosity -q, --quiet decrease verbosity
-S, --silent disable transfer progress output -S, --silent disable transfer progress output
-l, --listen listen for incoming transfer requests -l, --listen listen for incoming transfer requests
-F, --allow-fetch allow authenticated clients to fetch files
-f, --fetch fetch file from remote listener instead of sending -f, --fetch fetch file from remote listener instead of sending
-j path, --jail path restrict fetch requests to specified path
-b seconds announce interval, 0 to only announce at startup -b seconds announce interval, 0 to only announce at startup
-a allowed_hash accept from this identity -a allowed_hash allow this identity
-n, --no-auth accept files and fetches from anyone -n, --no-auth accept requests from anyone
-p, --print-identity print identity and destination info and exit -p, --print-identity print identity and destination info and exit
-w seconds sender timeout before giving up -w seconds sender timeout before giving up
--version show program&#39;s version number and exit --version show program&#39;s version number and exit
@ -800,15 +821,19 @@ optional arguments:
<p>The <code class="docutils literal notranslate"><span class="pre">rnodeconf</span></code> utility allows you to inspect and configure existing <a class="reference internal" href="hardware.html#rnode-main"><span class="std std-ref">RNodes</span></a>, and <p>The <code class="docutils literal notranslate"><span class="pre">rnodeconf</span></code> utility allows you to inspect and configure existing <a class="reference internal" href="hardware.html#rnode-main"><span class="std std-ref">RNodes</span></a>, and
to create and provision new <a class="reference internal" href="hardware.html#rnode-main"><span class="std std-ref">RNodes</span></a> from any supported hardware devices.</p> to create and provision new <a class="reference internal" href="hardware.html#rnode-main"><span class="std std-ref">RNodes</span></a> from any supported hardware devices.</p>
<p><strong>All Command-Line Options</strong></p> <p><strong>All Command-Line Options</strong></p>
<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>usage: rnodeconf.py [-h] [-i] [-a] [-u] [-U] [--fw-version version] [--nocheck] [-e] <div class="highlight-text notranslate"><div class="highlight"><pre><span></span>usage: rnodeconf [-h] [-i] [-a] [-u] [-U] [--fw-version version]
[-E] [-C] [--baud-flash baud_flash] [-N] [-T] [-b] [-B] [-p] [-D i] [--fw-url url] [--nocheck] [-e] [-E] [-C]
[--freq Hz] [--bw Hz] [--txp dBm] [--sf factor] [--cr rate] [--baud-flash baud_flash] [-N] [-T] [-b] [-B] [-p] [-D i]
[--eeprom-backup] [--eeprom-dump] [--eeprom-wipe] [-P] [--display-addr byte] [--freq Hz] [--bw Hz] [--txp dBm]
[--trust-key hexbytes] [--version] [port] [--sf factor] [--cr rate] [--eeprom-backup] [--eeprom-dump]
[--eeprom-wipe] [-P] [--trust-key hexbytes] [--version] [-f]
[-r] [-k] [-S] [-H FIRMWARE_HASH] [--platform platform]
[--product product] [--model model] [--hwrev revision]
[port]
RNode Configuration and firmware utility. This program allows you to change various RNode Configuration and firmware utility. This program allows you to change
settings and startup modes of RNode. It can also install, flash and update the firmware various settings and startup modes of RNode. It can also install, flash and
on supported devices. update the firmware on supported devices.
positional arguments: positional arguments:
port serial port where RNode is attached port serial port where RNode is attached
@ -818,20 +843,26 @@ options:
-i, --info Show device info -i, --info Show device info
-a, --autoinstall Automatic installation on various supported devices -a, --autoinstall Automatic installation on various supported devices
-u, --update Update firmware to the latest version -u, --update Update firmware to the latest version
-U, --force-update Update to specified firmware even if version matches or is older than installed version -U, --force-update Update to specified firmware even if version matches
--fw-version version Use a specific firmware version for update or autoinstall or is older than installed version
--fw-version version Use a specific firmware version for update or
autoinstall
--fw-url url Use an alternate firmware download URL
--nocheck Don&#39;t check for firmware updates online --nocheck Don&#39;t check for firmware updates online
-e, --extract Extract firmware from connected RNode for later use -e, --extract Extract firmware from connected RNode for later use
-E, --use-extracted Use the extracted firmware for autoinstallation or update -E, --use-extracted Use the extracted firmware for autoinstallation or
update
-C, --clear-cache Clear locally cached firmware files -C, --clear-cache Clear locally cached firmware files
--baud-flash baud_flash --baud-flash baud_flash
Set specific baud rate when flashing device. Default is 921600 Set specific baud rate when flashing device. Default
is 921600
-N, --normal Switch device to normal mode -N, --normal Switch device to normal mode
-T, --tnc Switch device to TNC mode -T, --tnc Switch device to TNC mode
-b, --bluetooth-on Turn device bluetooth on -b, --bluetooth-on Turn device bluetooth on
-B, --bluetooth-off Turn device bluetooth off -B, --bluetooth-off Turn device bluetooth off
-p, --bluetooth-pair Put device into bluetooth pairing mode -p, --bluetooth-pair Put device into bluetooth pairing mode
-D i, --display i Set display intensity (0-255) -D i, --display i Set display intensity (0-255)
--display-addr byte Set display address as hex byte (00 - FF)
--freq Hz Frequency in Hz for TNC mode --freq Hz Frequency in Hz for TNC mode
--bw Hz Bandwidth in Hz for TNC mode --bw Hz Bandwidth in Hz for TNC mode
--txp dBm TX power in dBm for TNC mode --txp dBm TX power in dBm for TNC mode
@ -843,12 +874,43 @@ options:
-P, --public Display public part of signing key -P, --public Display public part of signing key
--trust-key hexbytes Public key to trust for device verification --trust-key hexbytes Public key to trust for device verification
--version Print program version and exit --version Print program version and exit
-f, --flash Flash firmware and bootstrap EEPROM
-r, --rom Bootstrap EEPROM without flashing firmware
-k, --key Generate a new signing key and exit
-S, --sign Display public part of signing key
-H FIRMWARE_HASH, --firmware-hash FIRMWARE_HASH
Display installed firmware hash
--platform platform Platform specification for device bootstrap
--product product Product specification for device bootstrap
--model model Model code for device bootstrap
--hwrev revision Hardware revision for device bootstrap
</pre></div> </pre></div>
</div> </div>
<p>For more information on how to create your own RNodes, please read the <a class="reference internal" href="hardware.html#rnode-creating"><span class="std std-ref">Creating RNodes</span></a> <p>For more information on how to create your own RNodes, please read the <a class="reference internal" href="hardware.html#rnode-creating"><span class="std std-ref">Creating RNodes</span></a>
section of this manual.</p> section of this manual.</p>
</section> </section>
</section> </section>
<section id="remote-management">
<h2>Remote Management<a class="headerlink" href="#remote-management" title="Permalink to this heading">#</a></h2>
<p>It is possible to allow remote management of Reticulum
systems using the various built-in utilities, such as
<code class="docutils literal notranslate"><span class="pre">rnstatus</span></code> and <code class="docutils literal notranslate"><span class="pre">rnpath</span></code>. To do so, you will need to set
the <code class="docutils literal notranslate"><span class="pre">enable_remote_management</span></code> directive in the <code class="docutils literal notranslate"><span class="pre">[reticulum]</span></code>
section of the configuration file. You will also need to specify
one or more Reticulum Identity hashes for authenticating the
queries from client programs. For this purpose, you can use
existing identity files, or generate new ones with the rnid utility.</p>
<p>The following is a truncated example of enabling remote management
in the Reticulum configuration file:</p>
<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>[reticulum]
...
enable_remote_management = yes
remote_management_allowed = 9fb6d773498fb3feda407ed8ef2c3229, 2d882c5586e548d79b5af27bca1776dc
...
</pre></div>
</div>
<p>For a complete example configuration, you can run <code class="docutils literal notranslate"><span class="pre">rnsd</span> <span class="pre">--exampleconfig</span></code>.</p>
</section>
<section id="improving-system-configuration"> <section id="improving-system-configuration">
<h2>Improving System Configuration<a class="headerlink" href="#improving-system-configuration" title="Permalink to this heading">#</a></h2> <h2>Improving System Configuration<a class="headerlink" href="#improving-system-configuration" title="Permalink to this heading">#</a></h2>
<p>If you are setting up a system for permanent use with Reticulum, there is a <p>If you are setting up a system for permanent use with Reticulum, there is a
@ -1037,6 +1099,7 @@ systemctl --user enable rnsd.service
<li><a class="reference internal" href="#the-rnodeconf-utility">The rnodeconf Utility</a></li> <li><a class="reference internal" href="#the-rnodeconf-utility">The rnodeconf Utility</a></li>
</ul> </ul>
</li> </li>
<li><a class="reference internal" href="#remote-management">Remote Management</a></li>
<li><a class="reference internal" href="#improving-system-configuration">Improving System Configuration</a><ul> <li><a class="reference internal" href="#improving-system-configuration">Improving System Configuration</a><ul>
<li><a class="reference internal" href="#fixed-serial-port-names">Fixed Serial Port Names</a></li> <li><a class="reference internal" href="#fixed-serial-port-names">Fixed Serial Port Names</a></li>
<li><a class="reference internal" href="#reticulum-as-a-system-service">Reticulum as a System Service</a><ul> <li><a class="reference internal" href="#reticulum-as-a-system-service">Reticulum as a System Service</a><ul>

View File

@ -312,8 +312,9 @@ Filter output to only show some interfaces:
.. code:: text .. code:: text
usage: rnstatus.py [-h] [--config CONFIG] [--version] [-a] [-A] [-s SORT] usage: rnstatus [-h] [--config CONFIG] [--version] [-a] [-A]
[-r] [-j] [-v] [filter] [-l] [-s SORT] [-r] [-j] [-R hash] [-i path]
[-w seconds] [-v] [filter]
Reticulum Network Stack Status Reticulum Network Stack Status
@ -326,9 +327,13 @@ Filter output to only show some interfaces:
--version show program's version number and exit --version show program's version number and exit
-a, --all show all interfaces -a, --all show all interfaces
-A, --announce-stats show announce stats -A, --announce-stats show announce stats
-l, --link-stats show link stats
-s SORT, --sort SORT sort interfaces by [rate, traffic, rx, tx, announces, arx, atx, held] -s SORT, --sort SORT sort interfaces by [rate, traffic, rx, tx, announces, arx, atx, held]
-r, --reverse reverse sorting -r, --reverse reverse sorting
-j, --json output in JSON format -j, --json output in JSON format
-R hash transport identity hash of remote instance to get status from
-i path path to identity used for remote management
-w seconds timeout before giving up on remote queries
-v, --verbose -v, --verbose
@ -452,8 +457,9 @@ Resolve path to a destination:
.. code:: text .. code:: text
usage: rnpath.py [-h] [--config CONFIG] [--version] [-t] [-r] [-d] [-D] usage: rnpath [-h] [--config CONFIG] [--version] [-t] [-m hops]
[-x] [-w seconds] [-v] [destination] [-r] [-d] [-D] [-x] [-w seconds] [-R hash] [-i path]
[-W seconds] [-j] [-v] [destination]
Reticulum Path Discovery Utility Reticulum Path Discovery Utility
@ -465,11 +471,16 @@ Resolve path to a destination:
--config CONFIG path to alternative Reticulum config directory --config CONFIG path to alternative Reticulum config directory
--version show program's version number and exit --version show program's version number and exit
-t, --table show all known paths -t, --table show all known paths
-m hops, --max hops maximum hops to filter path table by
-r, --rates show announce rate info -r, --rates show announce rate info
-d, --drop remove the path to a destination -d, --drop remove the path to a destination
-D, --drop-announces drop all queued announces -D, --drop-announces drop all queued announces
-x, --drop-via drop all paths via specified transport instance -x, --drop-via drop all paths via specified transport instance
-w seconds timeout before giving up -w seconds timeout before giving up
-R hash transport identity hash of remote instance to manage
-i path path to identity used for remote management
-W seconds timeout before giving up on remote queries
-j, --json output in JSON format
-v, --verbose -v, --verbose
@ -524,20 +535,27 @@ these as part of the result as well.
.. code:: text .. code:: text
usage: rnprobe [-h] [--config CONFIG] [--version] [-v] [-s SIZE] usage: rnprobe [-h] [--config CONFIG] [-s SIZE] [-n PROBES]
[-t seconds] [-w seconds] [--version] [-v]
[full_name] [destination_hash] [full_name] [destination_hash]
Reticulum Probe Utility Reticulum Probe Utility
positional arguments: positional arguments:
full_name full destination name in dotted notation full_name full destination name in dotted notation
destination_hash hexadecimal hash of the destination destination_hash hexadecimal hash of the destination
optional arguments: options:
-h, --help show this help message and exit -h, --help show this help message and exit
--config CONFIG path to alternative Reticulum config directory --config CONFIG path to alternative Reticulum config directory
-s SIZE, --size SIZE size of probe packet payload in bytes -s SIZE, --size SIZE size of probe packet payload in bytes
--version show program's version number and exit -n PROBES, --probes PROBES
number of probes to send
-t seconds, --timeout seconds
timeout before giving up
-w seconds, --wait seconds
time between each probe
--version show program's version number and exit
-v, --verbose -v, --verbose
@ -578,8 +596,9 @@ Or fetch a file from the remote system:
.. code:: text .. code:: text
usage: rncp.py [-h] [--config path] [-v] [-q] [-S] [-l] [-f] [-b seconds] usage: rncp [-h] [--config path] [-v] [-q] [-S] [-l] [-F] [-f]
[-a allowed_hash] [-n] [-p] [-w seconds] [--version] [file] [destination] [-j path] [-b seconds] [-a allowed_hash] [-n] [-p]
[-w seconds] [--version] [file] [destination]
Reticulum File Transfer Utility Reticulum File Transfer Utility
@ -594,10 +613,12 @@ Or fetch a file from the remote system:
-q, --quiet decrease verbosity -q, --quiet decrease verbosity
-S, --silent disable transfer progress output -S, --silent disable transfer progress output
-l, --listen listen for incoming transfer requests -l, --listen listen for incoming transfer requests
-F, --allow-fetch allow authenticated clients to fetch files
-f, --fetch fetch file from remote listener instead of sending -f, --fetch fetch file from remote listener instead of sending
-j path, --jail path restrict fetch requests to specified path
-b seconds announce interval, 0 to only announce at startup -b seconds announce interval, 0 to only announce at startup
-a allowed_hash accept from this identity -a allowed_hash allow this identity
-n, --no-auth accept files and fetches from anyone -n, --no-auth accept requests from anyone
-p, --print-identity print identity and destination info and exit -p, --print-identity print identity and destination info and exit
-w seconds sender timeout before giving up -w seconds sender timeout before giving up
--version show program's version number and exit --version show program's version number and exit
@ -685,15 +706,19 @@ to create and provision new :ref:`RNodes<rnode-main>` from any supported hardwar
.. code:: text .. code:: text
usage: rnodeconf.py [-h] [-i] [-a] [-u] [-U] [--fw-version version] [--nocheck] [-e] usage: rnodeconf [-h] [-i] [-a] [-u] [-U] [--fw-version version]
[-E] [-C] [--baud-flash baud_flash] [-N] [-T] [-b] [-B] [-p] [-D i] [--fw-url url] [--nocheck] [-e] [-E] [-C]
[--freq Hz] [--bw Hz] [--txp dBm] [--sf factor] [--cr rate] [--baud-flash baud_flash] [-N] [-T] [-b] [-B] [-p] [-D i]
[--eeprom-backup] [--eeprom-dump] [--eeprom-wipe] [-P] [--display-addr byte] [--freq Hz] [--bw Hz] [--txp dBm]
[--trust-key hexbytes] [--version] [port] [--sf factor] [--cr rate] [--eeprom-backup] [--eeprom-dump]
[--eeprom-wipe] [-P] [--trust-key hexbytes] [--version] [-f]
[-r] [-k] [-S] [-H FIRMWARE_HASH] [--platform platform]
[--product product] [--model model] [--hwrev revision]
[port]
RNode Configuration and firmware utility. This program allows you to change various RNode Configuration and firmware utility. This program allows you to change
settings and startup modes of RNode. It can also install, flash and update the firmware various settings and startup modes of RNode. It can also install, flash and
on supported devices. update the firmware on supported devices.
positional arguments: positional arguments:
port serial port where RNode is attached port serial port where RNode is attached
@ -703,20 +728,26 @@ to create and provision new :ref:`RNodes<rnode-main>` from any supported hardwar
-i, --info Show device info -i, --info Show device info
-a, --autoinstall Automatic installation on various supported devices -a, --autoinstall Automatic installation on various supported devices
-u, --update Update firmware to the latest version -u, --update Update firmware to the latest version
-U, --force-update Update to specified firmware even if version matches or is older than installed version -U, --force-update Update to specified firmware even if version matches
--fw-version version Use a specific firmware version for update or autoinstall or is older than installed version
--fw-version version Use a specific firmware version for update or
autoinstall
--fw-url url Use an alternate firmware download URL
--nocheck Don't check for firmware updates online --nocheck Don't check for firmware updates online
-e, --extract Extract firmware from connected RNode for later use -e, --extract Extract firmware from connected RNode for later use
-E, --use-extracted Use the extracted firmware for autoinstallation or update -E, --use-extracted Use the extracted firmware for autoinstallation or
update
-C, --clear-cache Clear locally cached firmware files -C, --clear-cache Clear locally cached firmware files
--baud-flash baud_flash --baud-flash baud_flash
Set specific baud rate when flashing device. Default is 921600 Set specific baud rate when flashing device. Default
is 921600
-N, --normal Switch device to normal mode -N, --normal Switch device to normal mode
-T, --tnc Switch device to TNC mode -T, --tnc Switch device to TNC mode
-b, --bluetooth-on Turn device bluetooth on -b, --bluetooth-on Turn device bluetooth on
-B, --bluetooth-off Turn device bluetooth off -B, --bluetooth-off Turn device bluetooth off
-p, --bluetooth-pair Put device into bluetooth pairing mode -p, --bluetooth-pair Put device into bluetooth pairing mode
-D i, --display i Set display intensity (0-255) -D i, --display i Set display intensity (0-255)
--display-addr byte Set display address as hex byte (00 - FF)
--freq Hz Frequency in Hz for TNC mode --freq Hz Frequency in Hz for TNC mode
--bw Hz Bandwidth in Hz for TNC mode --bw Hz Bandwidth in Hz for TNC mode
--txp dBm TX power in dBm for TNC mode --txp dBm TX power in dBm for TNC mode
@ -728,10 +759,46 @@ to create and provision new :ref:`RNodes<rnode-main>` from any supported hardwar
-P, --public Display public part of signing key -P, --public Display public part of signing key
--trust-key hexbytes Public key to trust for device verification --trust-key hexbytes Public key to trust for device verification
--version Print program version and exit --version Print program version and exit
-f, --flash Flash firmware and bootstrap EEPROM
-r, --rom Bootstrap EEPROM without flashing firmware
-k, --key Generate a new signing key and exit
-S, --sign Display public part of signing key
-H FIRMWARE_HASH, --firmware-hash FIRMWARE_HASH
Display installed firmware hash
--platform platform Platform specification for device bootstrap
--product product Product specification for device bootstrap
--model model Model code for device bootstrap
--hwrev revision Hardware revision for device bootstrap
For more information on how to create your own RNodes, please read the :ref:`Creating RNodes<rnode-creating>` For more information on how to create your own RNodes, please read the :ref:`Creating RNodes<rnode-creating>`
section of this manual. section of this manual.
Remote Management
-----------------
It is possible to allow remote management of Reticulum
systems using the various built-in utilities, such as
``rnstatus`` and ``rnpath``. To do so, you will need to set
the ``enable_remote_management`` directive in the ``[reticulum]``
section of the configuration file. You will also need to specify
one or more Reticulum Identity hashes for authenticating the
queries from client programs. For this purpose, you can use
existing identity files, or generate new ones with the rnid utility.
The following is a truncated example of enabling remote management
in the Reticulum configuration file:
.. code:: text
[reticulum]
...
enable_remote_management = yes
remote_management_allowed = 9fb6d773498fb3feda407ed8ef2c3229, 2d882c5586e548d79b5af27bca1776dc
...
For a complete example configuration, you can run ``rnsd --exampleconfig``.
Improving System Configuration Improving System Configuration
------------------------------ ------------------------------