Status page: count rejected announcements, and name AS numbers
The "refused" column counted rejected announcements since the start, not routes, which made two peers that send the same routes look different when one of them re-sends more often. It is now "rejected announcements", with the held routes, the number that compares, beside it as "held now". The page says "rejected" throughout, as the documentation and metrics do. Rows are highlighted under the pointer, and pointing at an AS number shows its holder's name, which the browser asks RIPEstat for. The daemon looks nothing up; the monitoring page says what the browser sends where. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
efb2d81a50
commit
acecc22f48
2 files changed
+78
-17
No files matched your search
@@ -29,8 +29,8 @@ The status page, `/statusz`, displays the following information:
|
||||
|
||||
- The configuration that was read at startup.
|
||||
- Each neighbor, with its session state, address families, role and role
|
||||
confirmation, number of accepted, rejected, and held routes, and last
|
||||
error.
|
||||
confirmation, number of accepted routes, rejected announcements, and held
|
||||
routes, and last error.
|
||||
- The originated routes, and a lookup of received routes.
|
||||
- RPKI validation: the cache, the RTR version, and the age of the data.
|
||||
- Kernel route installation: the number of installed routes, the number of
|
||||
@@ -39,6 +39,11 @@ The status page, `/statusz`, displays the following information:
|
||||
- Rejected routes, by neighbor and by reason.
|
||||
- A live event log.
|
||||
|
||||
To display the name of the holder of an AS number, point to the number. The
|
||||
browser requests the name from [RIPEstat](https://stat.ripe.net/); Ferrix
|
||||
does not send any requests itself. If the browser cannot reach RIPEstat,
|
||||
the page displays "name not available".
|
||||
|
||||
## Route Lookup
|
||||
|
||||
The status page provides a lookup of received routes. The HTTP endpoint
|
||||
@@ -71,12 +76,20 @@ curl -s '127.0.0.1:8080/api/routes/received?address=193.0.0.1&best=true' | jq
|
||||
Ferrix does not store rejected routes in the routing table. For each
|
||||
neighbor, it records the number of rejected routes for each reason, and the
|
||||
200 most recent rejected routes with all the path attributes they were
|
||||
received with. The status page displays this information under "Refused
|
||||
received with. The status page displays this information under "Rejected
|
||||
routes"; to display the attributes of a rejected route, select **show** in
|
||||
its row. The HTTP endpoint `/api/routes/rejected` returns the same
|
||||
information as JSON. To display the records for one neighbor, add
|
||||
`?peer=NAME`.
|
||||
|
||||
The numbers count rejected announcements, not prefixes. When a neighbor
|
||||
announces a route again, for example because an attribute changed, and
|
||||
Ferrix rejects it again, the count increases again. Two neighbors that
|
||||
advertise the same routes can therefore have different counts. The number
|
||||
of routes currently held, because they are RPKI or ASPA invalid or their
|
||||
next hop is unreachable, is displayed in the neighbor table as **held
|
||||
now**.
|
||||
|
||||
```json
|
||||
[{"peer":"transit-a","total":3,"by_reason":{"RPKI invalid":2,"bogon prefix":1},
|
||||
"recent":[{"prefix":"203.0.113.0/24","reason":"RPKI invalid","as_path":[64496,64511]}]}]
|
||||
|
||||
Reference in new issue
Block a user