mirror of
https://github.com/rtbrick/bngblaster.git
synced 2024-05-06 15:54:57 +00:00
update github pages
This commit is contained in:
committed by
Christian Giese
parent
de07ac33b8
commit
23913a1a9e
@@ -51,13 +51,12 @@ upstream direction (from U to A10-NSP interface). Those headers allow the wholes
|
||||
the actual U interface for traffic received on the A10-NSP interface. This functionality is referred to
|
||||
as the intermediate agent functionality.
|
||||
|
||||
|
||||
The BNG Blaster A10NSP interface emulates such a layer two provider interface. This interface type accepts
|
||||
all PPPoE sessions received to verify forwarding and PPPoE header enrichment.
|
||||
all DHCPv4 and PPPoE sessions received to verify forwarding and header enrichment.
|
||||
|
||||
.. note::
|
||||
It is also planned to emulate a lightweight DHCPv4 and DHCPv6 server
|
||||
to verify IPoE forwarding and header enrichment.
|
||||
It is also planned to emulate a lightweight DHCPv6 server
|
||||
to verify IPv6 forwarding and header enrichment for IPoE.
|
||||
|
||||
Following a basic PPPoE/A10NSP configuration example which is
|
||||
detailed explained in the configuration section.
|
||||
|
||||
@@ -55,7 +55,7 @@ version with optimization and without debug symbols.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
git clone git@github.com:rtbrick/bngblaster.git
|
||||
git clone https://github.com/rtbrick/bngblaster.git
|
||||
cd bngblaster
|
||||
mkdir build
|
||||
cd build
|
||||
|
||||
@@ -45,7 +45,7 @@ one more :ref:`traffic stream <streams>` bound to the sessions.
|
||||
],
|
||||
"access": [
|
||||
{
|
||||
"__comment__": "PPPoE",
|
||||
"__comment__": "PPPoE Client",
|
||||
"interface": "veth1.2",
|
||||
"type": "pppoe",
|
||||
"outer-vlan-min": 1,
|
||||
@@ -193,6 +193,63 @@ You can also try other :ref:`commands <api>` to get familiar with the API.
|
||||
After the test has stopped, you can also check the final JSON report (``jq . report.json``),
|
||||
log, and PCAP files.
|
||||
|
||||
DHCP
|
||||
----
|
||||
|
||||
Let's repeat all the steps from the PPPoE example before but with the following
|
||||
IPoE DHCP configuration.
|
||||
|
||||
**dhcp.json:**
|
||||
|
||||
.. code-block:: json
|
||||
|
||||
{
|
||||
"interfaces": {
|
||||
"a10nsp": [
|
||||
{
|
||||
"__comment__": "DHCP Server",
|
||||
"interface": "veth1.1"
|
||||
}
|
||||
],
|
||||
"access": [
|
||||
{
|
||||
"__comment__": "DHCP Client",
|
||||
"interface": "veth1.2",
|
||||
"type": "ipoe",
|
||||
"ipv6": false,
|
||||
"outer-vlan-min": 1,
|
||||
"outer-vlan-max": 4000,
|
||||
"inner-vlan": 7,
|
||||
"stream-group-id": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
"access-line": {
|
||||
"agent-remote-id": "DEU.RTBRICK.{session-global}",
|
||||
"agent-circuit-id": "0.0.0.0/0.0.0.0 eth 0:{session-global}"
|
||||
},
|
||||
"dhcp": {
|
||||
"enable": true,
|
||||
"broadcast": false
|
||||
},
|
||||
"session-traffic": {
|
||||
"ipv4-pps": 1
|
||||
},
|
||||
"streams": [
|
||||
{
|
||||
"stream-group-id": 1,
|
||||
"name": "S1",
|
||||
"type": "ipv4",
|
||||
"direction": "both",
|
||||
"priority": 128,
|
||||
"length": 256,
|
||||
"pps": 1,
|
||||
"a10nsp-interface": "veth1.1"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
ISIS
|
||||
----
|
||||
|
||||
|
||||
@@ -128,11 +128,11 @@ upstream direction (from U to A10-NSP interface). Those headers allow the wholes
|
||||
the actual U interface for traffic received on the A10-NSP interface. This functionality is referred to
|
||||
as the intermediate agent functionality.</p>
|
||||
<p>The BNG Blaster A10NSP interface emulates such a layer two provider interface. This interface type accepts
|
||||
all PPPoE sessions received to verify forwarding and PPPoE header enrichment.</p>
|
||||
all DHCPv4 and PPPoE sessions received to verify forwarding and header enrichment.</p>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<p>It is also planned to emulate a lightweight DHCPv4 and DHCPv6 server
|
||||
to verify IPoE forwarding and header enrichment.</p>
|
||||
<p>It is also planned to emulate a lightweight DHCPv6 server
|
||||
to verify IPv6 forwarding and header enrichment for IPoE.</p>
|
||||
</div>
|
||||
<p>Following a basic PPPoE/A10NSP configuration example which is
|
||||
detailed explained in the configuration section.</p>
|
||||
|
||||
+1
-1
@@ -131,7 +131,7 @@ sudo apt install -y cmake \
|
||||
<h3>Build<a class="headerlink" href="#build" title="Permalink to this headline"></a></h3>
|
||||
<p>Per default cmake (<cite>cmake .</cite>) will build the BNG Blaster as release
|
||||
version with optimization and without debug symbols.</p>
|
||||
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>git clone git@github.com:rtbrick/bngblaster.git
|
||||
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>git clone https://github.com/rtbrick/bngblaster.git
|
||||
cd bngblaster
|
||||
mkdir build
|
||||
cd build
|
||||
|
||||
+55
-1
@@ -43,6 +43,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="install.html">Installation</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Quickstart Guide</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#pppoe">PPPoE</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#dhcp">DHCP</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#isis">ISIS</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#bgp">BGP</a></li>
|
||||
</ul>
|
||||
@@ -118,7 +119,7 @@ one more <a class="reference internal" href="streams.html#streams"><span class="
|
||||
<span class="w"> </span><span class="p">],</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"access"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"__comment__"</span><span class="p">:</span><span class="w"> </span><span class="s2">"PPPoE"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"__comment__"</span><span class="p">:</span><span class="w"> </span><span class="s2">"PPPoE Client"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"interface"</span><span class="p">:</span><span class="w"> </span><span class="s2">"veth1.2"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"pppoe"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"outer-vlan-min"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"></span>
|
||||
@@ -254,6 +255,59 @@ directory from where you started the BNG Blaster and enter the following command
|
||||
<p>After the test has stopped, you can also check the final JSON report (<code class="docutils literal notranslate"><span class="pre">jq</span> <span class="pre">.</span> <span class="pre">report.json</span></code>),
|
||||
log, and PCAP files.</p>
|
||||
</section>
|
||||
<section id="dhcp">
|
||||
<h2>DHCP<a class="headerlink" href="#dhcp" title="Permalink to this headline"></a></h2>
|
||||
<p>Let’s repeat all the steps from the PPPoE example before but with the following
|
||||
IPoE DHCP configuration.</p>
|
||||
<p><strong>dhcp.json:</strong></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">"interfaces"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"a10nsp"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"__comment__"</span><span class="p">:</span><span class="w"> </span><span class="s2">"DHCP Server"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"interface"</span><span class="p">:</span><span class="w"> </span><span class="s2">"veth1.1"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">}</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">],</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"access"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"__comment__"</span><span class="p">:</span><span class="w"> </span><span class="s2">"DHCP Client"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"interface"</span><span class="p">:</span><span class="w"> </span><span class="s2">"veth1.2"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ipoe"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"ipv6"</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"outer-vlan-min"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"outer-vlan-max"</span><span class="p">:</span><span class="w"> </span><span class="mi">4000</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"inner-vlan"</span><span class="p">:</span><span class="w"> </span><span class="mi">7</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"stream-group-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">}</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">]</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"access-line"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"agent-remote-id"</span><span class="p">:</span><span class="w"> </span><span class="s2">"DEU.RTBRICK.{session-global}"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"agent-circuit-id"</span><span class="p">:</span><span class="w"> </span><span class="s2">"0.0.0.0/0.0.0.0 eth 0:{session-global}"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"dhcp"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"enable"</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"broadcast"</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"session-traffic"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"ipv4-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"streams"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"stream-group-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"S1"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ipv4"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"both"</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"priority"</span><span class="p">:</span><span class="w"> </span><span class="mi">128</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"length"</span><span class="p">:</span><span class="w"> </span><span class="mi">256</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"a10nsp-interface"</span><span class="p">:</span><span class="w"> </span><span class="s2">"veth1.1"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">}</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">]</span><span class="w"></span>
|
||||
<span class="p">}</span><span class="w"></span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="isis">
|
||||
<h2>ISIS<a class="headerlink" href="#isis" title="Permalink to this headline"></a></h2>
|
||||
<p>In the following example, we create two <a class="reference internal" href="routing/isis.html#isis"><span class="std std-ref">ISIS</span></a> nodes (R1 and R2) with an emulated
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user