Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
pierky committed Apr 26, 2020
2 parents b0b3436 + 8a26582 commit 5eaa6e5
Show file tree
Hide file tree
Showing 148 changed files with 26,648 additions and 240 deletions.
Binary file added .DS_Store
Binary file not shown.
14 changes: 14 additions & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,20 @@ Change log

.. note:: **Upgrade notes**: after upgrading, run the ``arouteserver setup-templates`` command to sync the local templates with those distributed with the new version. More details on the `Upgrading <https://arouteserver.readthedocs.io/en/latest/INSTALLATION.html#upgrading>`__ section of the documentation.

next release
------------

- New feature: ``tag_and_reject`` reject policy for BIRD.

Invalid routes can be tagged with informational BGP communities and then discarded by BIRD.
With this option, alice-lg reject reasons are supported nicely, whilst keeping ``show routes all filtered`` working to keep birdwatcher happy.

Related: `PR #57 on GitHub <https://github.com/pierky/arouteserver/pull/57>`_.

- Improvement: ``clients-from-euroix`` command, option ``--merge-from-custom-file`` to customise the list of clients generated from an Euro-IX JSON file.

More details on how to use this option can be found running ``arouteserver clients-from-euroix --help-merge-from-custom-file``.

v0.24.1
-------

Expand Down
14 changes: 9 additions & 5 deletions config.d/general.yml
Original file line number Diff line number Diff line change
Expand Up @@ -475,6 +475,10 @@ cfg:
# If it is set to 'tag', they are tagged as described above
# (and not propagated anyway to other clients). In this case,
# the 'reject_cause' BGP community must be also set.
# If it is set to 'tag_and_reject', they are tagged as in 'tag'
# but also discarded as in 'reject' mode.
#
# OpenBGPD: only 'reject' and 'tag' modes are allowed.
#
# Can be overwritten on a client-by-client basis.
#
Expand Down Expand Up @@ -1014,8 +1018,8 @@ cfg:
#ext:

# This BGP community is used when the 'reject_policy' option is
# set to 'tag'. It is used to track the code of the reason that
# led the route to be considered as invalid.
# set to 'tag' or 'tag_and_reject'. It is used to track the code
# of the reason that led the route to be considered as invalid.
#
# The following community is scrubbed from inbound routes.
#
Expand All @@ -1027,9 +1031,9 @@ cfg:
#ext:

# This BGP community is used when the 'reject_policy' option is
# set to 'tag'. If configured, it is used to track the ASN
# of the peer that announced the invalid route to the route
# server.
# set to 'tag' or 'tag_and_reject'. If configured, it is used
# to track the ASN of the peer that announced the invalid route
# to the route server.
#
# The following community is scrubbed from inbound routes.
#
Expand Down
2 changes: 2 additions & 0 deletions docs/CONFIG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -482,6 +482,8 @@ The reason that brought the server to reject the route is identified using a num

\* This is not really a reject reason code, it only means that the route must be treated as rejected and must not be propagated to clients.

On BIRD, it's also possible to configure the ``reject_policy`` using the ``tag_and_reject`` value: doing this, the ``reject_reason`` and optionally the ``rejected_route_announced_by`` BGP communities are still attached to the invalid routes, but then they are rejected by BIRD. Since the BIRD-specific ``import keep filtered on`` configuration statement is used, those routes remain available within the BIRD daemon and can be seen using BIRD-specific commands like ``show route filtered all``.

Caveats and limitations
***********************

Expand Down
15 changes: 10 additions & 5 deletions docs/GENERAL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -874,6 +874,11 @@ Reject policy: ``reject_policy``
If it is set to **tag**, they are tagged as described above
(and not propagated anyway to other clients). In this case,
the **reject_cause** BGP community must be also set.
If it is set to **tag_and_reject**, they are tagged as in **tag**
but also discarded as in **reject** mode.


OpenBGPD: only **reject** and **tag** modes are allowed.


Can be overwritten on a client-by-client basis.
Expand Down Expand Up @@ -1562,8 +1567,8 @@ Reject cause

- ``reject_cause``:
This BGP community is used when the **reject_policy** option is
set to **tag**. It is used to track the code of the reason that
led the route to be considered as invalid.
set to **tag** or **tag_and_reject**. It is used to track the code
of the reason that led the route to be considered as invalid.


The following community is scrubbed from inbound routes.
Expand All @@ -1579,9 +1584,9 @@ Reject cause

- ``rejected_route_announced_by``:
This BGP community is used when the **reject_policy** option is
set to **tag**. If configured, it is used to track the ASN
of the peer that announced the invalid route to the route
server.
set to **tag** or **tag_and_reject**. If configured, it is used
to track the ASN of the peer that announced the invalid route
to the route server.


The following community is scrubbed from inbound routes.
Expand Down
3 changes: 3 additions & 0 deletions docs/REJECT_REASON_COMMUNITIES.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
.. DO NOT EDIT: this file is automatically created by ../utils/build_doc

Reject reasons
~~~~~~~~~~~~~~

===== =========================================================
ID Reason
===== =========================================================
Expand Down
Loading

0 comments on commit 5eaa6e5

Please sign in to comment.