Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
pierky committed May 20, 2023
2 parents cd9a9c5 + 7a7de3e commit 3ed613a
Show file tree
Hide file tree
Showing 482 changed files with 218,654 additions and 1,892 deletions.
7 changes: 4 additions & 3 deletions .github/workflows/cicd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,9 @@ jobs:
echo "$DOCKER_PASSWORD" | docker login --username "$DOCKER_USERNAME" --password-stdin
docker pull pierky/bird:1.6.8
docker pull pierky/bird:2.13
docker pull pierky/openbgpd:7.7
docker pull pierky/bird:3.0-alpha2
docker pull pierky/openbgpd:7.8
docker pull pierky/openbgpd:8.0
docker pull pierky/exabgp:4.2.7
docker pull nlnetlabs/routinator:v0.8.3
env:
Expand Down Expand Up @@ -224,7 +225,7 @@ jobs:
-e ROUTER_ID=192.0.2.124 \
-e LOCAL_PREFIXES=192.0.2.0/24,2001:db8::/32 \
-e DAEMON=openbgpd \
-e VERSION=7.8 \
-e VERSION=8.0 \
-e SECRET_PEERINGDB_API_KEY="${SECRET_PEERINGDB_API_KEY}" \
pierky/arouteserver:${{ matrix.docker-image.target_image }}
env:
Expand All @@ -236,7 +237,7 @@ jobs:
-t \
--rm \
-v ~/arouteserver_configs/openbgpd.cfg:/etc/bgpd/bgpd.conf \
pierky/openbgpd:7.8 \
pierky/openbgpd:8.0 \
bgpd \
-f /etc/bgpd/bgpd.conf \
-d \
Expand Down
2 changes: 1 addition & 1 deletion README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ How it works

#. `Jinja2`_ built-in templates are used to render the final route server's configuration file.

Currently, **BIRD** (>= 1.6.3 up to 1.6.8), **BIRD v2** (starting from 2.0.7) and **OpenBGPD** (OpenBSD >= 7.0 also OpenBGPD Portable >= 7.0) are supported, with almost `feature parity <https://arouteserver.readthedocs.io/en/latest/SUPPORTED_SPEAKERS.html#supported-features>`__ between them.
Currently, **BIRD** (>= 1.6.3 up to 1.6.8), **BIRD v2** (starting from 2.0.7), **BIRD v3** (only for testing, still in pre-release/alpha) and **OpenBGPD** (OpenBSD >= 7.0 also OpenBGPD Portable >= 7.0) are supported, with almost `feature parity <https://arouteserver.readthedocs.io/en/latest/SUPPORTED_SPEAKERS.html#supported-features>`__ between them.

**Validation** and testing of the configurations generated with this tool are performed using the built-in **live tests** framework: `Docker`_ instances are used to simulate several scenarios and to validate the behaviour of the route server after configuring it with ARouteServer. More details on the `Live tests <https://arouteserver.readthedocs.io/en/latest/LIVETESTS.html>`__ section.

Expand Down
6 changes: 3 additions & 3 deletions config.d/general.yml
Original file line number Diff line number Diff line change
Expand Up @@ -576,12 +576,12 @@ cfg:
# Can be one of the following options:
# - 'rtr': ROAs are loaded from an external RTR source.
# rtrllib (https://github.com/rtrlib/bird-rtrlib-cli) can be
# used for BIRD 1.6.x; in BIRD v2 and OpenBGPD there is
# used for BIRD 1.6.x; in BIRD v2, v3 and OpenBGPD there is
# built-in support for the RTR protocol.
# The name of the table where send the ROAs to is 'RPKI' for
# BIRD 1.6.x and 'RPKI4' and 'RPKI6' for BIRD v2.
# BIRD 1.6.x and 'RPKI4' and 'RPKI6' for BIRD v2 and v3.
# When the built-in implementation is used for OpenBGPD
# or BIRD v2, an external file 'rpki_rtr_config.local' must be
# or BIRD v2/v3, an external file 'rpki_rtr_config.local' must be
# found within the same directory where the main configuration
# file is stored (/etc/bird or /etc/bgpd usually) and must
# contain the configuration of the RTR sessions specific for
Expand Down
4 changes: 2 additions & 2 deletions docs/CONFIG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -291,12 +291,12 @@ A couple of methods can be used to acquire RPKI data (ROAs):

- BIRD 1.6.x: the `rtrlib <http://rpki.realmv6.org/>`_ suite: `rtrlib <https://github.com/rtrlib>`__ and `bird-rtrlib-cli <https://github.com/rtrlib/bird-rtrlib-cli>`__.

- BIRD v2: the `built-in RTR protocol <https://bird.network.cz/?get_doc&v=20&f=bird-6.html#ss6.13>`_ implementation.
- BIRD v2/v3: the `built-in RTR protocol <https://bird.network.cz/?get_doc&v=20&f=bird-6.html#ss6.13>`_ implementation.

- OpenBGPD >= 6.9: the `built-in RTR protocol <https://man.openbsd.org/bgpd.conf#rtr>`_ implementation.

One or more trusted local validating caches should be used to get and validate ROAs before pushing them to BIRD or OpenBGPD. Extensive information on RPKI and how to setup validating caches can be found on `https://rpki.readthedocs.io/ <https://rpki.readthedocs.io/>`__.
For BIRD v2 and OpenBGPD, an example of how to configure the RTR protocol and use it with ARouteServer can be found in the ``examples/rpki_rtr`` directory (`also on GitHub <https://github.com/pierky/arouteserver/tree/master/examples/rpki_rtr>`_).
For BIRD v2/v3 and OpenBGPD, an example of how to configure the RTR protocol and use it with ARouteServer can be found in the ``examples/rpki_rtr`` directory (`also on GitHub <https://github.com/pierky/arouteserver/tree/master/examples/rpki_rtr>`_).

The configuration of ROAs source can be done within the ``rpki_roas`` section of the ``general.yml`` file.

Expand Down
12 changes: 6 additions & 6 deletions docs/EXAMPLES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ A list of BGP communities is also automatically built.
limitations
Which BGP daemon will be used? [bird/openbgpd] bird
Which version? [1.6.3/1.6.4/1.6.6/1.6.7/1.6.8/2.0.7/2.0.7+b962967e/2.0.8/2.0.9/2.0.10/2.0.11/2.13] 2.13
Which version? [1.6.3/1.6.4/1.6.6/1.6.7/1.6.8/2.0.7/2.0.7+b962967e/2.0.8/2.0.9/2.0.10/2.0.11/2.13/3.0] 2.13
Router server's ASN
===================
Expand Down Expand Up @@ -174,18 +174,18 @@ The files reported within this directory were generated using the ``ixf-member-e

https://github.com/pierky/arouteserver/blob/master/examples/ixf-member-export

BIRD v2 and OpenBGPD RPKI RTR configuration
-------------------------------------------
BIRD v2/v3 and OpenBGPD RPKI RTR configuration
----------------------------------------------

This is an example of how to use BIRD v2 or OpenBGPD with an external source for RPKI ROAs based on the RTR protocol.
This is an example of how to use BIRD v2/v3 or OpenBGPD with an external source for RPKI ROAs based on the RTR protocol.

BIRD v2 and OpenBGPD (starting with release 6.9) have built-in support for the RTR protocol, that allows to connect the BGP daemon directly to a local cache (a "validator").
BIRD v2/v3 and OpenBGPD (starting with release 6.9) have built-in support for the RTR protocol, that allows to connect the BGP daemon directly to a local cache (a "validator").

To configure the daemons with ARouteServer in order to fetch ROAs using RTR, the ``rpki_roas.source`` option must be set to ``rtr`` and a local *rpki_rtr_config.local* file must be placed inside the same directory where the main configuration file is created (*/etc/bird* or */etc/bgpd* by default, or a custom one set using the ``--local-files-dir`` command line argument of ARouteServer).

The *rpki_rtr_config.local* file is expected to contain the snippet of BIRD or OpenBGPD config needed to setup one or more RTR sessions:

- BIRD v2: https://bird.network.cz/?get_doc&v=20&f=bird-6.html#ss6.13
- BIRD v2/v3: https://bird.network.cz/?get_doc&v=20&f=bird-6.html#ss6.13

**Please note:** the names of the tables where ROAs will be injected into must be ``RPKI4`` and ``RPKI6``.

Expand Down
2 changes: 1 addition & 1 deletion docs/FEATURES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ How it works

#. `Jinja2`_ built-in templates are used to render the final route server's configuration file.

Currently, **BIRD** (>= 1.6.3 up to 1.6.8), **BIRD v2** (starting from 2.0.7) and **OpenBGPD** (OpenBSD >= 7.0 also OpenBGPD Portable >= 7.0) are supported, with almost `feature parity <https://arouteserver.readthedocs.io/en/latest/SUPPORTED_SPEAKERS.html#supported-features>`__ between them.
Currently, **BIRD** (>= 1.6.3 up to 1.6.8), **BIRD v2** (starting from 2.0.7), **BIRD v3** (only for testing, still in pre-release/alpha) and **OpenBGPD** (OpenBSD >= 7.0 also OpenBGPD Portable >= 7.0) are supported, with almost `feature parity <https://arouteserver.readthedocs.io/en/latest/SUPPORTED_SPEAKERS.html#supported-features>`__ between them.

**Validation** and testing of the configurations generated with this tool are performed using the built-in **live tests** framework: `Docker`_ instances are used to simulate several scenarios and to validate the behaviour of the route server after configuring it with ARouteServer. More details on the `Live tests <https://arouteserver.readthedocs.io/en/latest/LIVETESTS.html>`__ section.

Expand Down
6 changes: 3 additions & 3 deletions docs/GENERAL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1043,12 +1043,12 @@ when **filtering.irrdb.use_rpki_roas_as_route_objects** or

- **rtr**: ROAs are loaded from an external RTR source.
rtrllib (https://github.com/rtrlib/bird-rtrlib-cli) can be
used for BIRD 1.6.x; in BIRD v2 and OpenBGPD there is
used for BIRD 1.6.x; in BIRD v2, v3 and OpenBGPD there is
built-in support for the RTR protocol.
The name of the table where send the ROAs to is **RPKI** for
BIRD 1.6.x and **RPKI4** and **RPKI6** for BIRD v2.
BIRD 1.6.x and **RPKI4** and **RPKI6** for BIRD v2 and v3.
When the built-in implementation is used for OpenBGPD
or BIRD v2, an external file **rpki_rtr_config.local** must be
or BIRD v2/v3, an external file **rpki_rtr_config.local** must be
found within the same directory where the main configuration
file is stored (/etc/bird or /etc/bgpd usually) and must
contain the configuration of the RTR sessions specific for
Expand Down
2 changes: 1 addition & 1 deletion docs/SUPPORTED_SPEAKERS.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Legend:

- N/A = feature not available in the BGP speaker.

.. warning:: **Please note**: support for BIRD v2 is in very early stages: before moving any production platform to instances of BIRD v2 configured with this tool, please review the configurations carefully and run some simulations.
.. warning:: **Please note**: support for BIRD v3 is in very early stages, and BIRD v3 itself is only in alpha version, testing release only.

.. include:: SUPPORTED_SPEAKERS_FEATURES.txt

Expand Down
Loading

0 comments on commit 3ed613a

Please sign in to comment.