Skip to content

Commit

Permalink
Prep 0.11.0 rc1 (#14)
Browse files Browse the repository at this point in the history
* Update version in development

* Describe ROA comments (#863)

* Add information about ROA object for roas list.

* Add section on v0.11.0 API changes in upgrade.

* Fix link

* Language!

* Fix style

* style

* Remove extra 'the'

* Show 'comment' for roa configuration in delta error.

* Show configured ROA json fields.

* Update documentation for publication server stats CLI/API
  • Loading branch information
Tim Bruijnzeels committed Sep 20, 2022
1 parent 235808f commit 93d1c25
Show file tree
Hide file tree
Showing 4 changed files with 224 additions and 47 deletions.
162 changes: 143 additions & 19 deletions source/cli.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1331,6 +1331,18 @@ Krill lets users create Route Origin Authorisations (ROAs), the signed objects
that state which Autonomous System (AS) is authorised to originate one of your
prefixes, along with the maximum prefix length it may have.

Note that we use a Krill specific notation for desscribing ROAs.

.. code-block::
<prefix>[-max-length] => <ASN> [# optional comment]
Examples:
185.49.140.0/22 => 65501
185.49.140.0/22 => 65501 # with comment
185.49.140.0/22-22 => 65501 # with explicit max length equal to prefix length
185.49.140.0/22-24 => 65501 # with max length allowing more specifics
.. Important:: Krill CAs let operators configure which authorizations they want
to have on ROA **objects**. But it's Krill that will figure out which objects
to create for this. I.e. users just configure their intent to authorise an
Expand All @@ -1341,6 +1353,8 @@ prefixes, along with the maximum prefix length it may have.
and purposes this difference is an implementation detail that Krill, by design,
abstracts away from the operator.



.. parsed-literal::
USAGE:
Expand All @@ -1356,7 +1370,7 @@ prefixes, along with the maximum prefix length it may have.
krillc roas list
----------------

Show current authorizations.
Show current configured ROAs.

.. parsed-literal::
Expand All @@ -1366,16 +1380,103 @@ Show current authorizations.
OPTIONS:
-c, --ca <name> The name of the CA you wish to control. Or set env: KRILL_CLI_MY_CA
Example:

You can list ROAs in the following way:
The text output shows all your current ROA configurations:

.. code-block:: bash
$ krillc roas list
192.0.2.0/24 => 64496
2001:db8::/32-48 => 64496
185.49.140.0/22-22 => 65501
2a04:b900::/29-29 => 65503 # my v6 router
185.49.140.0/22-22 => 65502 # my secondary!!
The JSON response also includes information about the ROA objects that
were issued for each of your configurations. Typically, you will have
exactly one ROA object issued for each configuration. However, you may
have more than one ROA object in case your CA holds the same prefix under
more than one parent organisation - this should be extremely rare but
this can happen in theory. You may have 0 ROA objects in case you added
a ROA *configuration*, but you no longer hold the prefix on your CA
certificate(s).

Because of this the JSON response includes an array of ROA objects rather
than a single object:

.. code-block:: json
[
{
"asn": 65502,
"prefix": "185.49.140.0/22",
"max_length": 22,
"comment": "my secondary!!",
"roa_objects": [
{
"authorizations": [
"185.49.140.0/22-22 => 65502"
],
"validity": {
"not_before": "2022-09-09T11:12:07.726607Z",
"not_after": "2023-09-08T11:17:07.726609Z"
},
"serial": "128656053576697823461520414002914294079408872181",
"uri": "rsync://localhost/repo/ca/0/3138352e34392e3134302e302f32322d3232203d3e203635353032.roa",
"base64": "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",
"hash": "a5eb7f117a920f938cfee05294284e8107b0f2b4eb33306b44c0e0a4321f0730"
}
]
},
{
"asn": 65501,
"prefix": "185.49.140.0/22",
"max_length": 22,
"comment": null,
"roa_objects": [
{
"authorizations": [
"185.49.140.0/22-22 => 65501"
],
"validity": {
"not_before": "2022-09-09T11:12:07.804941Z",
"not_after": "2023-09-08T11:17:07.804943Z"
},
"serial": "383786375903727552044603555364114288366864376546",
"uri": "rsync://localhost/repo/ca/0/3138352e34392e3134302e302f32322d3232203d3e203635353031.roa",
"base64": "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",
"hash": "b84e4a840bfa171c22836be8b9918a1a85da1f1578fa168a4cf598f73adf9d01"
}
]
},
{
"asn": 65503,
"prefix": "2a04:b900::/29",
"max_length": 29,
"comment": "my v6 router",
"roa_objects": [
{
"authorizations": [
"2a04:b900::/29-29 => 65503"
],
"validity": {
"not_before": "2022-09-09T11:12:07.764079Z",
"not_after": "2023-09-08T11:17:07.764081Z"
},
"serial": "725767789577338305707073298821075818220425658157",
"uri": "rsync://localhost/repo/ca/0/326130343a623930303a3a2f32392d3239203d3e203635353033.roa",
"base64": "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",
"hash": "f35bd38a7cdec57faa9df7a76bb5b98c61b09385f25cd89b43e33973e70e0560"
}
]
}
]
.. Important:: Krill always uses an explicit max length for stored ROA configurations.
You can leave out the max length when submitting a new ROA configuration, but
Krill will then convert it to use an explicit max length equal to the prefix
length internally. The reason behind this is that Krill wants to avoid duplicate
equivalent entries in its configuration. The ROA *objects* generated by Krill
will only use an explicit max length if it is indeed more specific than the
prefix length.


.. _cmd_krillc_roas_update:
Expand All @@ -1396,7 +1497,7 @@ Example CLI usage to add a ROA:

.. code-block:: text
$ krillc roas update --ca newca --add "192.168.0.0/16 => 64496"
$ krillc roas update --add '2a04:b900::/29 => 65503 # my v6 router'
This will submit the following JSON to the API:
Expand All @@ -1413,29 +1514,43 @@ This will submit the following JSON to the API:
{
"added": [
{
"asn": 64496,
"prefix": "192.168.0.0/16"
"asn": 65503,
"prefix": "2a04:b900::/29",
"comment": "my v6 router"
}
],
"removed": []
}
NOTE: if you want to leave out the comment in the API update
you can either set its value to `null` or leave the json field
out altogether in which case it will default to `null`.

.. Important:: ROA configurations can only be added if they are
not yet present. Re-adding the same configuration will
result in an error. That said, if an


* Remove a single ROA

Example CLI usage to remove a ROA:

.. code-block:: text
$ krillc roas update --ca newca --remove "192.168.0.0/16 => 64496"
$ krillc roas update --remove '2a04:b900::/29 => 65503'
.. Important:: The # style comments are not allowed when
removing ROAs and will result in an error if included
here.


This will submit the following JSON to the API:

.. code-block:: text
$ krillc roas update --ca newca --remove "192.168.0.0/16 => 64496" --api
$ krillc roas update --remove '2a04:b900::/29 => 65503' --api
POST:
https://localhost:3000/api/v1/cas/newca/routes
https://localhost:3000/api/v1/cas/ca/routes
Headers:
content-type: application/json
Authorization: Bearer secret
Expand All @@ -1444,16 +1559,20 @@ This will submit the following JSON to the API:
"added": [],
"removed": [
{
"asn": 64496,
"prefix": "192.168.0.0/16"
"asn": 65503,
"prefix": "2a04:b900::/29"
}
]
}
* Update multiple ROAs

You can also update multiple ROAs as a single delta. The CLI can do deltas if you provide
it with a file using the following format:
You can also update multiple ROAs as a single delta. You can either
use multiple `--add` and/or `--remove` arguments, or you can use
`--delta` and refer to a file with all updates using the following
format:

.. code-block:: text
Expand Down Expand Up @@ -1537,7 +1656,8 @@ Example:
{
"asn": 1,
"prefix": "10.0.0.0/20",
"max_length": 24
"max_length": 24,
"comment": null
}
],
"notheld": [
Expand All @@ -1549,13 +1669,15 @@ Example:
"unknowns": [
{
"asn": 1,
"prefix": "192.168.0.0/16"
"prefix": "192.168.0.0/16",
"comment": null
}
],
"invalid_length": [
{
"asn": 1,
"prefix": "10.0.1.0/25"
"prefix": "10.0.1.0/25",
"comment": null
}
]
}
Expand Down Expand Up @@ -1608,6 +1730,8 @@ Example JSON response:
"prefix": "192.168.0.0/16",
"max_length": 16,
"state": "roa_disallowing",
"comment": null,
"roa_objects": [ ... ],
"disallows": [
{
"asn": 64496,
Expand Down
4 changes: 2 additions & 2 deletions source/index.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
.. _doc_krill:

Krill 0.10.3
============
Krill 0.11.0 (in development)
=============================

|docsupdated| |discord| |twitter|

Expand Down
83 changes: 57 additions & 26 deletions source/publication-server.rst
Original file line number Diff line number Diff line change
Expand Up @@ -299,43 +299,74 @@ Repository Stats
""""""""""""""""

You can review Publication Server stats, including the number of files and space
used by publishers.
used by publishers, and the base URIs that were used to initialise the
server.

Example CLI:

.. code-block:: text
$ krillc pubserver server stats
RRDP updated: 2021-04-08T06:40:01.337191+00:00
RRDP session: ec00a09d-45f9-43ff-9e4d-2739f5e05c05
RRDP serial: 29
$ krillc pubserver server stats
Server URIs:
rrdp: https://localhost:3000/rrdp/
rsync: rsync://localhost/repo/
Publisher, Objects, Size, Last Updated
testbed, 2, 3908, 2021-04-08T07:38:25.106777+00:00
ta, 3, 7592, 2021-04-08T07:38:25.557323+00:00
RRDP updated: 2022-09-20T09:50:12.564604+00:00
RRDP session: 0102f89f-3639-40cb-a967-68789c7da891
RRDP serial: 34
Publisher, Objects, Size, Last Updated
ca, 5, 8247, 2022-09-20T09:45:11+00:00
ta, 3, 3663, 2022-09-20T09:45:11+00:00
testbed, 3, 3762, 2022-09-20T09:45:11+00:00
Example JSON response:

.. code-block:: text
$ krillc pubserver server stats --format json
{
"publishers": {
"ta": {
"objects": 3,
"size": 7592,
"last_update": "2021-04-08T07:38:25.557323Z"
},
"testbed": {
"objects": 2,
"size": 3908,
"last_update": "2021-04-08T07:38:25.106777Z"
}
},
"session": "ec00a09d-45f9-43ff-9e4d-2739f5e05c05",
"serial": 29,
"last_update": "2021-04-08T06:40:01.337191Z"
}
$ krillc pubserver server stats --format json
{
"publishers": {
"ca": {
"objects": 5,
"size": 8247,
"manifests": [
{
"uri": "rsync://localhost/repo/ca/0/CC2487CF3A9C774BFAE2DCE4DD8368441C75C720.mft",
"this_update": "2022-09-20T09:45:11Z",
"next_update": "2022-09-21T09:57:11Z"
}
]
},
"ta": {
"objects": 3,
"size": 3663,
"manifests": [
{
"uri": "rsync://localhost/repo/ta/0/0A6EA673F04AAA345D605A38E7710A2D8413B56C.mft",
"this_update": "2022-09-20T09:45:11Z",
"next_update": "2022-09-21T11:50:11Z"
}
]
},
"testbed": {
"objects": 3,
"size": 3762,
"manifests": [
{
"uri": "rsync://localhost/repo/testbed/0/217876AA966B965A6EDFDED43C469B90ED11AC6D.mft",
"this_update": "2022-09-20T09:45:11Z",
"next_update": "2022-09-21T13:39:11Z"
}
]
}
},
"session": "0102f89f-3639-40cb-a967-68789c7da891",
"serial": 34,
"last_update": "2022-09-20T09:50:12.564604Z",
"rsync_base": "rsync://localhost/repo/",
"rrdp_base": "https://localhost:3000/rrdp/"
}
Example API:

Expand Down

0 comments on commit 93d1c25

Please sign in to comment.