mirror of
https://github.com/rtbrick/bngblaster.git
synced 2024-05-06 15:54:57 +00:00
github pages update
This commit is contained in:
@@ -78,7 +78,7 @@ DHCPv6
|
||||
IPoE Commands
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
The control socket command ``session-info session-id <id>`` provides
|
||||
The :ref:`command <api>` ``session-info session-id <id>`` provides
|
||||
detailed information for IPoE sessions.
|
||||
|
||||
``$ sudo bngblaster-cli run.sock session-info session-id 1 | jq .``
|
||||
|
||||
@@ -325,7 +325,7 @@ is possible to send also CSURQ requests to the LAC.
|
||||
L2TP Commands
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
The control socket command ``session-info l2tp-tunnels`` provides
|
||||
The :ref:`command <api>` ``session-info l2tp-tunnels`` provides
|
||||
detailed information about L2TP tunnels.
|
||||
|
||||
``$ sudo bngblaster-cli run.sock l2tp-tunnels``
|
||||
@@ -357,7 +357,7 @@ detailed information about L2TP tunnels.
|
||||
]
|
||||
}
|
||||
|
||||
The ``l2tp-sessions`` command returns all L2TP sessions.
|
||||
The ``l2tp-sessions`` :ref:`command <api>` returns all L2TP sessions.
|
||||
|
||||
``$ sudo bngblaster-cli run.sock l2tp-sessions``
|
||||
|
||||
|
||||
@@ -101,8 +101,8 @@ allows to search for the missing packets in the corresponding capture files.
|
||||
Manual Join/Leave Testing
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
It is possible to join and leave multicast groups manually using the <<Control Socket>> as
|
||||
shown in the example below.
|
||||
It is possible to join and leave multicast groups manually using the :ref:`command <api>`
|
||||
``igmp-join``.
|
||||
|
||||
``$ sudo bngblaster-cli run.sock igmp-join session-id 1 group 232.1.1.1 source1 202.11.23.101 source2 202.11.23.102 source3 202.11.23.103``
|
||||
|
||||
@@ -183,7 +183,7 @@ sending leave and the last multicast packet received for this group. Multicast p
|
||||
received for the leaved group after first packet of joined group is received are counted
|
||||
as overlap.
|
||||
|
||||
The following configuration shows an example of the `igmp` section
|
||||
The following configuration shows an example of the ``igmp`` section
|
||||
for a typical zapping test.
|
||||
|
||||
.. code-block:: json
|
||||
@@ -205,13 +205,12 @@ for a typical zapping test.
|
||||
}
|
||||
}
|
||||
|
||||
.. include:: ../configuration/igmp.rst
|
||||
|
||||
Multicast Limitations
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The BNG Blaster IGMP implementation supports up to 3 sources per group record
|
||||
and 8 group records per session.
|
||||
|
||||
The IGMP protocol stops working if IPCP has closed also if session IPCP renegotiates.
|
||||
The whole session needs to be disconnected to restart IGMP.
|
||||
|
||||
The check for overlapping multicast traffic is supported for zapping tests only.
|
||||
|
||||
@@ -125,7 +125,6 @@ PPP IP6CP (IPv6)
|
||||
^^^^^^^^^^^^^^^^
|
||||
.. include:: ../configuration/ppp_ip6cp.rst
|
||||
|
||||
|
||||
LCP Vendor Extension
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -144,7 +143,7 @@ The value from request is stored in the session as ``connection-status-message``
|
||||
PPPoE Commands
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
The control socket command ``session-info session-id <id>`` provides
|
||||
The :ref:`command <api>` ``session-info session-id <id>`` provides
|
||||
detailed information for PPPoE sessions.
|
||||
|
||||
``$ sudo bngblaster-cli run.sock session-info session-id 1 | jq .``
|
||||
|
||||
@@ -41,8 +41,6 @@ Verification
|
||||
The final report includes detailed information
|
||||
for session traffic.
|
||||
|
||||
*Example report output for 100 sessions:*
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
Session Traffic:
|
||||
|
||||
@@ -103,7 +103,7 @@ The configured ``raw-update-file`` under the BGP session is loaded
|
||||
during Blaster startup phase and send as soon as the session is
|
||||
established.
|
||||
|
||||
The ``bgp-raw-update`` command allows to send further updates during
|
||||
The ``bgp-raw-update`` :ref:`command <api>` allows to send further updates during
|
||||
the session lifetime.
|
||||
|
||||
``$ sudo bngblaster-cli run.sock bgp-raw-update file update1.bgp``
|
||||
|
||||
@@ -168,7 +168,7 @@ LSP entries in the ISIS database.
|
||||
The type ``self`` is used for the self originated LSP describing the own
|
||||
BNG Blaster ISIS instance. LSP entries of type ``adjacency`` are learned
|
||||
via ISIS adjacencies. The type ``external`` is used for those LSP entries
|
||||
learned via MRT files or injected via ``isis-lsp-update`` command.
|
||||
learned via MRT files or injected via ``isis-lsp-update`` :ref:`command <api>`.
|
||||
|
||||
``$ sudo bngblaster-cli run.sock isis-database instance 1 level 1``
|
||||
|
||||
@@ -255,7 +255,7 @@ the ISIS common header starting with ``0x83``.
|
||||
|
||||
Those files can be loaded at startup via configuration option
|
||||
``"isis": { "external": { "mrt-file": "<file>" } }`` or alternative
|
||||
via ``isis-load-mrt`` command.
|
||||
via ``isis-load-mrt`` :ref:`command <api>`.
|
||||
|
||||
``$ sudo bngblaster-cli run.sock isis-load-mrt file test.mrt instance 1``
|
||||
|
||||
@@ -263,9 +263,9 @@ LSP Update Command
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
It is also possible to inject external LSP's using the ``isis-lsp-update``
|
||||
command.
|
||||
:ref:`command <api>`.
|
||||
|
||||
The command expects a list of hex encoded PDU's including
|
||||
The :ref:`command <api>` expects a list of hex encoded PDU's including
|
||||
the ISIS common header starting with ``0x83``,
|
||||
|
||||
``$ cat command.json | jq .``
|
||||
@@ -286,15 +286,63 @@ the ISIS common header starting with ``0x83``,
|
||||
LSPGEN
|
||||
~~~~~~
|
||||
|
||||
The BNG Blaster includes a tool called ```lspgen`` which is able to generate
|
||||
link state packets and topologies for export as MRT and PCAP files or directly
|
||||
injected via BNG Blaster LSP update command.
|
||||
The BNG Blaster includes a tool called ``lspgen`` which is able to generate
|
||||
link state packets and topologies for export as MRT and PCAP files. This tool
|
||||
is also able to inject LSP's directly using the ``isis-lsp-update``
|
||||
:ref:`command <api>`.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
$ lspgen --help
|
||||
|
||||
____ __ ____ _ __ ,/
|
||||
/ __ \ / /_ / __ ) _____ (_)_____ / /__ ,'/
|
||||
/ /_/ // __// __ |/ ___// // ___// //_/ ,' /
|
||||
/ _, _// /_ / /_/ // / / // /__ / ,< ,' /_____,
|
||||
/_/ |_| \__//_____//_/ /_/ \___//_/|_| .'____ ,'
|
||||
__ _____ ____ ______ / ,'
|
||||
/ / / ___// __ \/ ____/__ ____ / ,'
|
||||
/ / \__ \/ /_/ / / __/ _ \/ __ \ /,'
|
||||
/ /______/ / ____/ /_/ / __/ / / / /
|
||||
/_____/____/_/ \____/\___/_/ /_/
|
||||
|
||||
Usage: lspgen [OPTIONS]
|
||||
|
||||
-v --version
|
||||
-a --area <args>
|
||||
-K --authentication-key <args>
|
||||
-T --authentication-type none|simple|md5
|
||||
-r --read-config-file <args>
|
||||
-w --write-config-file <args>
|
||||
-C --connector <args>
|
||||
-S --control-socket <args>
|
||||
-l --ipv4-link-prefix <args>
|
||||
-L --ipv6-link-prefix <args>
|
||||
-n --ipv4-node-prefix <args>
|
||||
-N --ipv6-node-prefix <args>
|
||||
-x --ipv4-external-prefix <args>
|
||||
-X --ipv6-external-prefix <args>
|
||||
-M --lsp-lifetime <args>
|
||||
-z --no-ipv4
|
||||
-Z --no-ipv6
|
||||
-e --external-count <args>
|
||||
-g --graphviz-file <args>
|
||||
-h --help
|
||||
-m --mrt-file <args>
|
||||
-c --node-count <args>
|
||||
-p --pcap-file <args>
|
||||
-f --stream-file <args>
|
||||
-s --seed <args>
|
||||
-q --sequence <args>
|
||||
-V --level <args>
|
||||
-t --log normal|debug|lsp|lsdb|timer|timer-detail|ctrl|error
|
||||
|
||||
|
||||
LSP Update via Scapy
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The following example shows how to generate LSP's via Scapy
|
||||
and inject them using the ``isis-lsp-update`` command.
|
||||
and inject them using the ``isis-lsp-update`` :ref:`command <api>`.
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
MPLS
|
||||
----
|
||||
|
||||
The BNG Blaster is able to send and receive traffic with
|
||||
up to two MPLS labels.
|
||||
@@ -284,7 +284,7 @@ statically as shown in the example below.</p>
|
||||
</section>
|
||||
<section id="ipoe-commands">
|
||||
<h2>IPoE Commands<a class="headerlink" href="#ipoe-commands" title="Permalink to this headline"></a></h2>
|
||||
<p>The control socket command <code class="docutils literal notranslate"><span class="pre">session-info</span> <span class="pre">session-id</span> <span class="pre"><id></span></code> provides
|
||||
<p>The <a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a> <code class="docutils literal notranslate"><span class="pre">session-info</span> <span class="pre">session-id</span> <span class="pre"><id></span></code> provides
|
||||
detailed information for IPoE sessions.</p>
|
||||
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">session-info</span> <span class="pre">session-id</span> <span class="pre">1</span> <span class="pre">|</span> <span class="pre">jq</span> <span class="pre">.</span></code></p>
|
||||
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
||||
|
||||
@@ -477,7 +477,7 @@ is possible to send also CSURQ requests to the LAC.</p>
|
||||
</section>
|
||||
<section id="l2tp-commands">
|
||||
<h2>L2TP Commands<a class="headerlink" href="#l2tp-commands" title="Permalink to this headline"></a></h2>
|
||||
<p>The control socket command <code class="docutils literal notranslate"><span class="pre">session-info</span> <span class="pre">l2tp-tunnels</span></code> provides
|
||||
<p>The <a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a> <code class="docutils literal notranslate"><span class="pre">session-info</span> <span class="pre">l2tp-tunnels</span></code> provides
|
||||
detailed information about L2TP tunnels.</p>
|
||||
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">l2tp-tunnels</span></code></p>
|
||||
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
||||
@@ -506,7 +506,7 @@ detailed information about L2TP tunnels.</p>
|
||||
<span class="p">}</span><span class="w"></span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>The <code class="docutils literal notranslate"><span class="pre">l2tp-sessions</span></code> command returns all L2TP sessions.</p>
|
||||
<p>The <code class="docutils literal notranslate"><span class="pre">l2tp-sessions</span></code> <a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a> returns all L2TP sessions.</p>
|
||||
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">l2tp-sessions</span></code></p>
|
||||
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ok"</span><span class="p">,</span><span class="w"></span>
|
||||
|
||||
@@ -183,8 +183,8 @@ BNG Blaster instance.</p>
|
||||
</section>
|
||||
<section id="manual-join-leave-testing">
|
||||
<h2>Manual Join/Leave Testing<a class="headerlink" href="#manual-join-leave-testing" title="Permalink to this headline"></a></h2>
|
||||
<p>It is possible to join and leave multicast groups manually using the <<Control Socket>> as
|
||||
shown in the example below.</p>
|
||||
<p>It is possible to join and leave multicast groups manually using the <a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a>
|
||||
<code class="docutils literal notranslate"><span class="pre">igmp-join</span></code>.</p>
|
||||
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">igmp-join</span> <span class="pre">session-id</span> <span class="pre">1</span> <span class="pre">group</span> <span class="pre">232.1.1.1</span> <span class="pre">source1</span> <span class="pre">202.11.23.101</span> <span class="pre">source2</span> <span class="pre">202.11.23.102</span> <span class="pre">source3</span> <span class="pre">202.11.23.103</span></code></p>
|
||||
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ok"</span><span class="w"></span>
|
||||
@@ -253,7 +253,7 @@ first multicast packet of the requested group. The leave delay is the time betwe
|
||||
sending leave and the last multicast packet received for this group. Multicast packets
|
||||
received for the leaved group after first packet of joined group is received are counted
|
||||
as overlap.</p>
|
||||
<p>The following configuration shows an example of the <cite>igmp</cite> section
|
||||
<p>The following configuration shows an example of the <code class="docutils literal notranslate"><span class="pre">igmp</span></code> section
|
||||
for a typical zapping test.</p>
|
||||
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"igmp"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
|
||||
@@ -273,13 +273,100 @@ for a typical zapping test.</p>
|
||||
<span class="p">}</span><span class="w"></span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"> </span><span class="nt">"igmp"</span><span class="p">:</span><span class="w"> </span><span class="p">{}</span><span class="w"> </span><span class="p">}</span><span class="w"></span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<table class="colwidths-given docutils align-default">
|
||||
<colgroup>
|
||||
<col style="width: 25%" />
|
||||
<col style="width: 50%" />
|
||||
<col style="width: 25%" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr class="row-odd"><th class="head"><p>Attribute</p></th>
|
||||
<th class="head"><p>Description</p></th>
|
||||
<th class="head"><p>Default</p></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="row-even"><td><p><cite>autostart</cite></p></td>
|
||||
<td><p>Automatically join after session is established</p></td>
|
||||
<td><p>true</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><cite>version</cite></p></td>
|
||||
<td><p>IGMP protocol version (1, 2 or 3)</p></td>
|
||||
<td><p>3</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><cite>combined-leave-join</cite></p></td>
|
||||
<td><p>Combine leave and join records within a single IGMPv3 report</p></td>
|
||||
<td><p>true</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><cite>start-delay</cite></p></td>
|
||||
<td><p>Delay between session established and initial IGMP join in seconds</p></td>
|
||||
<td><p>1</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><cite>group</cite></p></td>
|
||||
<td><p>Multicast group base address (e.g. 239.0.0.1)</p></td>
|
||||
<td><p>0.0.0.0 (disabled)</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><cite>group-iter</cite></p></td>
|
||||
<td><p>Multicast group iterator</p></td>
|
||||
<td><p>0.0.0.1</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><cite>group-count</cite></p></td>
|
||||
<td><p>Multicast group count</p></td>
|
||||
<td><p>1</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><cite>source</cite></p></td>
|
||||
<td><p>Multicast source address (e.g. 1.1.1.1)</p></td>
|
||||
<td><p>0.0.0.0 (ASM)</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><cite>zapping-interval</cite></p></td>
|
||||
<td><p>IGMP channel zapping interval in seconds</p></td>
|
||||
<td><p>0 (disabled)</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><cite>zapping-count</cite></p></td>
|
||||
<td><p>Define the amount of channel changes before starting view duration</p></td>
|
||||
<td><p>0 (disabled)</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><cite>view-duration</cite></p></td>
|
||||
<td><p>Define the view duration in seconds</p></td>
|
||||
<td><p>0 (disabled)</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><cite>send-multicast-traffic</cite></p></td>
|
||||
<td><p>Generate multicast traffic</p></td>
|
||||
<td><p>false</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><cite>multicast-traffic-length</cite></p></td>
|
||||
<td><p>Multicast traffic IP length</p></td>
|
||||
<td><p>76</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><cite>multicast-traffic-tos</cite></p></td>
|
||||
<td><p>Multicast traffic TOS priority</p></td>
|
||||
<td><p>0</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><cite>network-interface</cite></p></td>
|
||||
<td><p>Multicast traffic source interface</p></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>Per default join and leave requests are send using dedicated reports.
|
||||
The option <code class="docutils literal notranslate"><span class="pre">combined-leave-join</span></code> allows the combination of leave and
|
||||
join records within a single IGMPv3 report using multiple group records.
|
||||
This option is applicable to IGMP version 3 only!</p>
|
||||
<p>If <code class="docutils literal notranslate"><span class="pre">send-multicast-traffic</span></code> is true, the BNG Blaster generates multicast
|
||||
traffic on the network interface based on the specified group and source
|
||||
attributes mentioned before. This traffic includes some special signatures
|
||||
for faster processing and more detailed analysis.</p>
|
||||
<p>If group is set to 293.0.0.1 with group-iter of 0.0.0.2, source 1.1.1.1
|
||||
and group-count 3 the result are the following three groups (S.G)
|
||||
1.1.1.1,239.0.0.1, 1.1.1.1,239.0.0.3 and 1.1.1.1,239.0.0.5.</p>
|
||||
</section>
|
||||
<section id="multicast-limitations">
|
||||
<h2>Multicast Limitations<a class="headerlink" href="#multicast-limitations" title="Permalink to this headline"></a></h2>
|
||||
<p>The BNG Blaster IGMP implementation supports up to 3 sources per group record
|
||||
and 8 group records per session.</p>
|
||||
<p>The IGMP protocol stops working if IPCP has closed also if session IPCP renegotiates.
|
||||
The whole session needs to be disconnected to restart IGMP.</p>
|
||||
<p>The check for overlapping multicast traffic is supported for zapping tests only.</p>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
@@ -454,7 +454,7 @@ The value from request is stored in the session as <code class="docutils literal
|
||||
</section>
|
||||
<section id="pppoe-commands">
|
||||
<h2>PPPoE Commands<a class="headerlink" href="#pppoe-commands" title="Permalink to this headline"></a></h2>
|
||||
<p>The control socket command <code class="docutils literal notranslate"><span class="pre">session-info</span> <span class="pre">session-id</span> <span class="pre"><id></span></code> provides
|
||||
<p>The <a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a> <code class="docutils literal notranslate"><span class="pre">session-info</span> <span class="pre">session-id</span> <span class="pre"><id></span></code> provides
|
||||
detailed information for PPPoE sessions.</p>
|
||||
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">session-info</span> <span class="pre">session-id</span> <span class="pre">1</span> <span class="pre">|</span> <span class="pre">jq</span> <span class="pre">.</span></code></p>
|
||||
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
||||
|
||||
@@ -243,7 +243,6 @@ option in the corresponding access configuration.</p>
|
||||
<h2>Verification<a class="headerlink" href="#verification" title="Permalink to this headline"></a></h2>
|
||||
<p>The final report includes detailed information
|
||||
for session traffic.</p>
|
||||
<p><em>Example report output for 100 sessions:</em></p>
|
||||
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>Session Traffic:
|
||||
Config:
|
||||
IPv4 PPS: 1
|
||||
|
||||
@@ -243,7 +243,7 @@ from PCAP or MRT files.</p>
|
||||
<p>The configured <code class="docutils literal notranslate"><span class="pre">raw-update-file</span></code> under the BGP session is loaded
|
||||
during Blaster startup phase and send as soon as the session is
|
||||
established.</p>
|
||||
<p>The <code class="docutils literal notranslate"><span class="pre">bgp-raw-update</span></code> command allows to send further updates during
|
||||
<p>The <code class="docutils literal notranslate"><span class="pre">bgp-raw-update</span></code> <a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a> allows to send further updates during
|
||||
the session lifetime.</p>
|
||||
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">bgp-raw-update</span> <span class="pre">file</span> <span class="pre">update1.bgp</span></code></p>
|
||||
<p>This allows in example to load a full table after session has
|
||||
|
||||
+54
-8
@@ -412,7 +412,7 @@ LSP entries in the ISIS database.</p>
|
||||
<p>The type <code class="docutils literal notranslate"><span class="pre">self</span></code> is used for the self originated LSP describing the own
|
||||
BNG Blaster ISIS instance. LSP entries of type <code class="docutils literal notranslate"><span class="pre">adjacency</span></code> are learned
|
||||
via ISIS adjacencies. The type <code class="docutils literal notranslate"><span class="pre">external</span></code> is used for those LSP entries
|
||||
learned via MRT files or injected via <code class="docutils literal notranslate"><span class="pre">isis-lsp-update</span></code> command.</p>
|
||||
learned via MRT files or injected via <code class="docutils literal notranslate"><span class="pre">isis-lsp-update</span></code> <a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a>.</p>
|
||||
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">isis-database</span> <span class="pre">instance</span> <span class="pre">1</span> <span class="pre">level</span> <span class="pre">1</span></code></p>
|
||||
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ok"</span><span class="p">,</span><span class="w"></span>
|
||||
@@ -490,14 +490,14 @@ no support for route leaking between levels.</p>
|
||||
the ISIS common header starting with <code class="docutils literal notranslate"><span class="pre">0x83</span></code>.</p>
|
||||
<p>Those files can be loaded at startup via configuration option
|
||||
<code class="docutils literal notranslate"><span class="pre">"isis":</span> <span class="pre">{</span> <span class="pre">"external":</span> <span class="pre">{</span> <span class="pre">"mrt-file":</span> <span class="pre">"<file>"</span> <span class="pre">}</span> <span class="pre">}</span></code> or alternative
|
||||
via <code class="docutils literal notranslate"><span class="pre">isis-load-mrt</span></code> command.</p>
|
||||
via <code class="docutils literal notranslate"><span class="pre">isis-load-mrt</span></code> <a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a>.</p>
|
||||
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">isis-load-mrt</span> <span class="pre">file</span> <span class="pre">test.mrt</span> <span class="pre">instance</span> <span class="pre">1</span></code></p>
|
||||
</section>
|
||||
<section id="lsp-update-command">
|
||||
<h2>LSP Update Command<a class="headerlink" href="#lsp-update-command" title="Permalink to this headline"></a></h2>
|
||||
<p>It is also possible to inject external LSP’s using the <code class="docutils literal notranslate"><span class="pre">isis-lsp-update</span></code>
|
||||
command.</p>
|
||||
<p>The command expects a list of hex encoded PDU’s including
|
||||
<a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a>.</p>
|
||||
<p>The <a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a> expects a list of hex encoded PDU’s including
|
||||
the ISIS common header starting with <code class="docutils literal notranslate"><span class="pre">0x83</span></code>,</p>
|
||||
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">cat</span> <span class="pre">command.json</span> <span class="pre">|</span> <span class="pre">jq</span> <span class="pre">.</span></code></p>
|
||||
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
||||
@@ -515,14 +515,60 @@ the ISIS common header starting with <code class="docutils literal notranslate">
|
||||
</section>
|
||||
<section id="lspgen">
|
||||
<h2>LSPGEN<a class="headerlink" href="#lspgen" title="Permalink to this headline"></a></h2>
|
||||
<p>The BNG Blaster includes a tool called <code class="docutils literal notranslate"><span class="pre">`lspgen</span></code> which is able to generate
|
||||
link state packets and topologies for export as MRT and PCAP files or directly
|
||||
injected via BNG Blaster LSP update command.</p>
|
||||
<p>The BNG Blaster includes a tool called <code class="docutils literal notranslate"><span class="pre">lspgen</span></code> which is able to generate
|
||||
link state packets and topologies for export as MRT and PCAP files. This tool
|
||||
is also able to inject LSP’s directly using the <code class="docutils literal notranslate"><span class="pre">isis-lsp-update</span></code>
|
||||
<a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a>.</p>
|
||||
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>$ lspgen --help
|
||||
|
||||
____ __ ____ _ __ ,/
|
||||
/ __ \ / /_ / __ ) _____ (_)_____ / /__ ,'/
|
||||
/ /_/ // __// __ |/ ___// // ___// //_/ ,' /
|
||||
/ _, _// /_ / /_/ // / / // /__ / ,< ,' /_____,
|
||||
/_/ |_| \__//_____//_/ /_/ \___//_/|_| .'____ ,'
|
||||
__ _____ ____ ______ / ,'
|
||||
/ / / ___// __ \/ ____/__ ____ / ,'
|
||||
/ / \__ \/ /_/ / / __/ _ \/ __ \ /,'
|
||||
/ /______/ / ____/ /_/ / __/ / / / /
|
||||
/_____/____/_/ \____/\___/_/ /_/
|
||||
|
||||
Usage: lspgen [OPTIONS]
|
||||
|
||||
-v --version
|
||||
-a --area <args>
|
||||
-K --authentication-key <args>
|
||||
-T --authentication-type none|simple|md5
|
||||
-r --read-config-file <args>
|
||||
-w --write-config-file <args>
|
||||
-C --connector <args>
|
||||
-S --control-socket <args>
|
||||
-l --ipv4-link-prefix <args>
|
||||
-L --ipv6-link-prefix <args>
|
||||
-n --ipv4-node-prefix <args>
|
||||
-N --ipv6-node-prefix <args>
|
||||
-x --ipv4-external-prefix <args>
|
||||
-X --ipv6-external-prefix <args>
|
||||
-M --lsp-lifetime <args>
|
||||
-z --no-ipv4
|
||||
-Z --no-ipv6
|
||||
-e --external-count <args>
|
||||
-g --graphviz-file <args>
|
||||
-h --help
|
||||
-m --mrt-file <args>
|
||||
-c --node-count <args>
|
||||
-p --pcap-file <args>
|
||||
-f --stream-file <args>
|
||||
-s --seed <args>
|
||||
-q --sequence <args>
|
||||
-V --level <args>
|
||||
-t --log normal|debug|lsp|lsdb|timer|timer-detail|ctrl|error
|
||||
</pre></div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="lsp-update-via-scapy">
|
||||
<h2>LSP Update via Scapy<a class="headerlink" href="#lsp-update-via-scapy" title="Permalink to this headline"></a></h2>
|
||||
<p>The following example shows how to generate LSP’s via Scapy
|
||||
and inject them using the <code class="docutils literal notranslate"><span class="pre">isis-lsp-update</span></code> command.</p>
|
||||
and inject them using the <code class="docutils literal notranslate"><span class="pre">isis-lsp-update</span></code> <a class="reference internal" href="../api/index.html#api"><span class="std std-ref">command</span></a>.</p>
|
||||
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">sys</span>
|
||||
<span class="kn">import</span> <span class="nn">socket</span>
|
||||
<span class="kn">import</span> <span class="nn">os</span>
|
||||
|
||||
@@ -86,6 +86,8 @@
|
||||
|
||||
<section id="mpls">
|
||||
<h1>MPLS<a class="headerlink" href="#mpls" title="Permalink to this headline"></a></h1>
|
||||
<p>The BNG Blaster is able to send and receive traffic with
|
||||
up to two MPLS labels.</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user