Updated documentation

This commit is contained in:
Mark Qvist 2022-02-22 21:39:16 +01:00
parent 257bd95da8
commit 07a65609b4
6 changed files with 85 additions and 1 deletions

View File

@ -6,6 +6,7 @@ The best way to get started with the Reticulum Network Stack depends on what
you want to do. This guide will outline sensible starting paths for different you want to do. This guide will outline sensible starting paths for different
scenarios. scenarios.
Try Using a Reticulum-based Program Try Using a Reticulum-based Program
============================================= =============================================
If you simply want to try using a program built with Reticulum, you can take If you simply want to try using a program built with Reticulum, you can take
@ -29,6 +30,10 @@ You can install Nomad Network via pip:
# ... and run # ... and run
nomadnet nomadnet
**Please Note**: If this is the very first time you use pip to install a program
on your system, you might need to reboot your system for your program to become
available. If you get a "command not found" error or similar when running the
program, reboot your system and try again.
Using the Included Utilities Using the Included Utilities
@ -44,6 +49,7 @@ network status and connectivity.
To learn more about these utility programs, have a look at the To learn more about these utility programs, have a look at the
:ref:`Using Reticulum on Your System<using-main>` chapter of this manual. :ref:`Using Reticulum on Your System<using-main>` chapter of this manual.
Creating a Network With Reticulum Creating a Network With Reticulum
============================================= =============================================
To create a network, you will need to specify one or more *interfaces* for To create a network, you will need to specify one or more *interfaces* for

View File

@ -191,6 +191,19 @@ configured, other Reticulum peers can connect to it with a TCP Client interface.
*Please Note!* If you use the ``device`` option, you will need the Python module *Please Note!* If you use the ``device`` option, you will need the Python module
``netifaces`` installed on your system. You can install it with ``pip3 install netifaces``. ``netifaces`` installed on your system. You can install it with ``pip3 install netifaces``.
**Caution!** The TCP interfaces support tunneling over I2P, but to do so reliably,
you should use the i2p_tunneled option:
.. code::
[[TCP Server on I2P]]
type = TCPServerInterface
interface_enabled = yes
outgoing = yes
listen_ip = 127.0.0.1
listen_port = 5001
i2p_tunneled = yes
.. _interfaces-tcpc: .. _interfaces-tcpc:
TCP Client Interface TCP Client Interface
@ -236,6 +249,19 @@ never enable ``kiss_framing``, since this will disable internal reliability and
recovery mechanisms that greatly improves performance over unreliable and recovery mechanisms that greatly improves performance over unreliable and
intermittent TCP links. intermittent TCP links.
**Caution!** The TCP interfaces support tunneling over I2P, but to do so reliably,
you should use the i2p_tunneled option:
.. code::
[[TCP Client over I2P]]
type = TCPClientInterface
interface_enabled = yes
outgoing = yes
target_host = 127.0.0.1
target_port = 5001
i2p_tunneled = yes
.. _interfaces-rnode: .. _interfaces-rnode:

View File

@ -63,6 +63,10 @@ for the messaging and information-sharing protocol
<span class="n">nomadnet</span> <span class="n">nomadnet</span>
</pre></div> </pre></div>
</div> </div>
<p><strong>Please Note</strong>: If this is the very first time you use pip to install a program
on your system, you might need to reboot your system for your program to become
available. If you get a “command not found” error or similar when running the
program, reboot your system and try again.</p>
</div> </div>
<div class="section" id="using-the-included-utilities"> <div class="section" id="using-the-included-utilities">
<h2>Using the Included Utilities<a class="headerlink" href="#using-the-included-utilities" title="Permalink to this headline"></a></h2> <h2>Using the Included Utilities<a class="headerlink" href="#using-the-included-utilities" title="Permalink to this headline"></a></h2>

View File

@ -204,6 +204,17 @@ configured, other Reticulum peers can connect to it with a TCP Client interface.
</div> </div>
<p><em>Please Note!</em> If you use the <code class="docutils literal notranslate"><span class="pre">device</span></code> option, you will need the Python module <p><em>Please Note!</em> If you use the <code class="docutils literal notranslate"><span class="pre">device</span></code> option, you will need the Python module
<code class="docutils literal notranslate"><span class="pre">netifaces</span></code> installed on your system. You can install it with <code class="docutils literal notranslate"><span class="pre">pip3</span> <span class="pre">install</span> <span class="pre">netifaces</span></code>.</p> <code class="docutils literal notranslate"><span class="pre">netifaces</span></code> installed on your system. You can install it with <code class="docutils literal notranslate"><span class="pre">pip3</span> <span class="pre">install</span> <span class="pre">netifaces</span></code>.</p>
<p><strong>Caution!</strong> The TCP interfaces support tunneling over I2P, but to do so reliably,
you should use the i2p_tunneled option:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">[[</span><span class="n">TCP</span> <span class="n">Server</span> <span class="n">on</span> <span class="n">I2P</span><span class="p">]]</span>
<span class="nb">type</span> <span class="o">=</span> <span class="n">TCPServerInterface</span>
<span class="n">interface_enabled</span> <span class="o">=</span> <span class="n">yes</span>
<span class="n">outgoing</span> <span class="o">=</span> <span class="n">yes</span>
<span class="n">listen_ip</span> <span class="o">=</span> <span class="mf">127.0</span><span class="o">.</span><span class="mf">0.1</span>
<span class="n">listen_port</span> <span class="o">=</span> <span class="mi">5001</span>
<span class="n">i2p_tunneled</span> <span class="o">=</span> <span class="n">yes</span>
</pre></div>
</div>
</div> </div>
<div class="section" id="tcp-client-interface"> <div class="section" id="tcp-client-interface">
<span id="interfaces-tcpc"></span><h2>TCP Client Interface<a class="headerlink" href="#tcp-client-interface" title="Permalink to this headline"></a></h2> <span id="interfaces-tcpc"></span><h2>TCP Client Interface<a class="headerlink" href="#tcp-client-interface" title="Permalink to this headline"></a></h2>
@ -242,6 +253,17 @@ and programs like soundmodems and similar over TCP. When using the
never enable <code class="docutils literal notranslate"><span class="pre">kiss_framing</span></code>, since this will disable internal reliability and never enable <code class="docutils literal notranslate"><span class="pre">kiss_framing</span></code>, since this will disable internal reliability and
recovery mechanisms that greatly improves performance over unreliable and recovery mechanisms that greatly improves performance over unreliable and
intermittent TCP links.</p> intermittent TCP links.</p>
<p><strong>Caution!</strong> The TCP interfaces support tunneling over I2P, but to do so reliably,
you should use the i2p_tunneled option:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">[[</span><span class="n">TCP</span> <span class="n">Client</span> <span class="n">over</span> <span class="n">I2P</span><span class="p">]]</span>
<span class="nb">type</span> <span class="o">=</span> <span class="n">TCPClientInterface</span>
<span class="n">interface_enabled</span> <span class="o">=</span> <span class="n">yes</span>
<span class="n">outgoing</span> <span class="o">=</span> <span class="n">yes</span>
<span class="n">target_host</span> <span class="o">=</span> <span class="mf">127.0</span><span class="o">.</span><span class="mf">0.1</span>
<span class="n">target_port</span> <span class="o">=</span> <span class="mi">5001</span>
<span class="n">i2p_tunneled</span> <span class="o">=</span> <span class="n">yes</span>
</pre></div>
</div>
</div> </div>
<div class="section" id="rnode-lora-interface"> <div class="section" id="rnode-lora-interface">
<span id="interfaces-rnode"></span><h2>RNode LoRa Interface<a class="headerlink" href="#rnode-lora-interface" title="Permalink to this headline"></a></h2> <span id="interfaces-rnode"></span><h2>RNode LoRa Interface<a class="headerlink" href="#rnode-lora-interface" title="Permalink to this headline"></a></h2>

File diff suppressed because one or more lines are too long

View File

@ -191,6 +191,19 @@ configured, other Reticulum peers can connect to it with a TCP Client interface.
*Please Note!* If you use the ``device`` option, you will need the Python module *Please Note!* If you use the ``device`` option, you will need the Python module
``netifaces`` installed on your system. You can install it with ``pip3 install netifaces``. ``netifaces`` installed on your system. You can install it with ``pip3 install netifaces``.
**Caution!** The TCP interfaces support tunneling over I2P, but to do so reliably,
you should use the i2p_tunneled option:
.. code::
[[TCP Server on I2P]]
type = TCPServerInterface
interface_enabled = yes
outgoing = yes
listen_ip = 127.0.0.1
listen_port = 5001
i2p_tunneled = yes
.. _interfaces-tcpc: .. _interfaces-tcpc:
TCP Client Interface TCP Client Interface
@ -236,6 +249,19 @@ never enable ``kiss_framing``, since this will disable internal reliability and
recovery mechanisms that greatly improves performance over unreliable and recovery mechanisms that greatly improves performance over unreliable and
intermittent TCP links. intermittent TCP links.
**Caution!** The TCP interfaces support tunneling over I2P, but to do so reliably,
you should use the i2p_tunneled option:
.. code::
[[TCP Client over I2P]]
type = TCPClientInterface
interface_enabled = yes
outgoing = yes
target_host = 127.0.0.1
target_port = 5001
i2p_tunneled = yes
.. _interfaces-rnode: .. _interfaces-rnode: