Releases: pierky/arouteserver
v1.20.1
New: add support for OpenBGPD 7.8, also added to the integration testing suite.
v1.20.0
-
Deprecation: support for overly old OpenBGPD versions (< 7.0) is removed.
See GitHub PR #117.
-
New: add support for BIRD 2.0.11, also added to the integration testing suite.
-
New: mapping of 32bit ASNs to 16bit private ASNs for announcement control standard BGP communities.
A new feature is added to allow 32bit ASN clients to be mapped to 16bit ASNs in the standard BGP communities used for announcement control. This feature allows clients to use the 16bit mapped ASN as the
peer_as
value for standard BGP communities like do not announce to $PEER. In those communities, the 32bit ASN will be represented by the 16bit value which is mapped to it.For details on how to configure this feature, see the documentation, "BGP Communities" section.
See also GitHub issue #101.
-
New: add support for RFC9234 Route Leak Prevention and Detection Using Roles.
A new configuration option is available in general.yml to enable RFC9234 roles (supported by BIRD >= 2.0.11 and OpenBGPD >= 7.5, even though discouraged until 7.8 will be out).
When that's set, BGP sessions on the route server are configured to announce the route-server role and routes received from clients and tagged with the OTC (Only To Customer) attribute are dropped.This option can be enabled in backward compatibility mode in the general.yml file, and can also be tuned on a client-by-client basis via the clients.yml file.
Details can be found in the documentation page of general.yml.
-
New: anchors in HTML pages.
The route server policy textual representation HTML files generated via the
html
command now have anchors at the various headers and sub-headers, so when referring other parties to the policy they can be pointed directly to the relevant section.See also GitHub issue #119.
-
Fix: minor issues with the HTML pages.
Wrong URL in some links and a misleading reference to a wrong mailing list post about private ASNs.
See also GitHub issue #119.
Please note: starting with the next release, the default target version used to build BIRD configurations (when the --target-version
argument is not given) will be the latest from the 2.x
major version; until now it was 1.6.8. Operators will need to use the --target-version 1.6.8
command line argument to build BIRD 1.x compatible configurations.
v1.19.0
-
Deprecation: the ARIN Whois OriginAS feature (config knob
use_arin_bulk_whois_data
, documented in Use ARIN Whois database to accept routes) is being deprecated.Per Recommended Draft Policy ARIN-2021-8, the "Autonomous System Originations" field is going to be removed from the ARIN database. Consequentially, this feature that is based on that is going to be deprecated as well and will be dropped in future releases of ARouteServer.
Operators that will run ARouteServer with
use_arin_bulk_whois_data.enabled
set toTrue
will see a warning message being logged, about the deprecation.The publicly available intermediate data relay which was running on the NLNOG infrastructure already removed the source file, which was used to fetch those records. So, operators willing to support this feature will need to provide their own version of the file.
See also GitHub issue #116
v1.18.0
No new functionalities nor bug fixes here, just a change in the releases of Python which are supported and tested.
-
Tests are no longer performed for Python 3.6 (EoL).
-
Tests for Python 3.10 and 3.11 are introduced: 3.11 is the release used to perform the integration tests.
-
Docker images are built on top of Python 3.11 and PyPy 3.9.
v1.17.1
v1.17.0
-
New: add support for BIRD 2.0.10, also added to the integration testing suite.
-
New: add support for OpenBGPD 7.5, also added to the integration testing suite (portable edition only).
-
New (OpenBGPD): add support for ADD-PATH (on version 7.5 or above).
-
Improvement: abort the configuration building process as soon as one enricher fails.
This shorten the user feedback in case of errors that unavoidably would make the final configuration broken and not usable.
-
Fix: remove
RGNET
from the list of default IRR sources.To remove it from existing deployments, or to add it back, users can edit the arouteserver.yml file,
bgpq3_sources
section.See also GitHub issue #111.
v1.16.1
-
New: add support for OpenBGPD 7.4, also added to the integration testing suite (portable edition only).
-
Fix: pin down
urllib3
version to avoid issues on upgrade.See also GitHub issue #110.
-
Fix: the playground Docker image was not building anymore.
Go and AliceLG birdwatcher versions have been bumped to the latest available.
v1.16.0
-
Improvement: use bulk queries to get clients' records from PeeringDB.
Clients' details (such as IRR records and max-prefix limits) are now retrieved from PeeringDB using bulk API queries, where multiple ASNs are checked at once.
This speeds up the configuration building process and reduces the number of queries to PeeringDB, reducing the risk of hitting the API rate limit.
See also GitHub issue #107
v1.15.1
-
Fix: update the requirements.
The min. version of Jinja2 reported in the requirements file was not enough to satisfy the needs of the templates.
See also GitHub issue #106.
-
Fix: allow setting PeeringDB API key to mitigate anonymous API throttling mechanism.
ARouteServer can now be instructed to use an API key to perform authentication against the PeeringDB API server. This can be done by setting the environment variable
SECRET_PEERINGDB_API_KEY
or by storing the same key inside one of the following well-known files:~/.arouteserver/peeringdb_api.key
,~/.peeringdb_api.key
.This should mitigate the effects of the anonymous API throttling mechanism introduced on PeeringDB.
See also GitHub issue #107.
-
Improvement: retry on PeeringDB API failure or rate-limit.
In case of failure or rate-limit of the PeeringDB API the tool now retries the same query multiple times.
See also GitHub issue #107.
v1.15.0
-
New: add support for OpenBGPD 7.3, also added to the integration testing suite (portable edition only).
-
New:
md
command, to build a textual representation in Markdown format.This command works like the
html
command and can be used to build a textual representation of the route server's configuration policy in Markdown format.For more details see the Textual representation section of the documentation.
-
New: add
custom_options
to the clients definition file.This new section can be used to add BGP-speaker-specific arbitrary lines of configuration to the file generated by ARouteServer.
For more details see the Client custom options section of the documentation.
See also GitHub PR #104.
-
Improvement (BIRD): skip NEXT_HOP check for IPv6 link-local clients.
Due to a limitation of BIRD, it is not possible to verify the NEXT_HOP attribute of routes announced by IPv6 clients configured using link-local addresses.
The configurations generated using this release skip that check (upon operator's approval if such clients are present).See also GitHub PR #104.
-
Fix: detect infeasible extended BGP communities when a 32bit ASN is used for the route server.
When the route server uses a 32bit ASN, certain extended BGP communities may end being configured to match multiple 32bit values, which is not possible because the way they are encoded.
This release detects similar situations in advance and aborts the configuration building process.
See also GitHub PR #104.