Skip to content

Added broader support for external RPKI validation. - #342

Closed
WilhelmZA wants to merge 4 commits into
thatmattlove:mainfrom
WilhelmZA:main
Closed

WilhelmZA wants to merge 4 commits into
thatmattlove:mainfrom
WilhelmZA:main

Conversation

@WilhelmZA

Copy link
Copy Markdown

Description

This update expands the configuration options for external RPKI validation in hyperglass. It introduces new parameters for specifying the RPKI backend type (backend) and the RPKI server URL (rpki_server_url). These parameters allow dynamic switching between different RPKI validation providers, such as Cloudflare and Routinator, and enable custom server endpoint configuration.

The rpki_state function now supports both Cloudflare’s GraphQL API and Routinator’s HTTP API for RPKI validation. The backend is selected based on the provided configuration, and the appropriate query or request is made to retrieve the RPKI validation state for a given prefix and ASN.

Related Issues

N/A

Motivation and Context

Previously, RPKI validation was limited to Cloudflare’s API. This change adds flexibility by allowing users to select their preferred RPKI validation backend and specify custom server URLs. This is particularly useful for deployments that require integration with local Routinator instances or other RPKI validation services, improving adaptability and control over RPKI validation sources.

Tests

  • Manual testing performed on Linux with Python 3.11.
  • Verified correct RPKI state retrieval from both Cloudflare and Routinator backends.
  • Confirmed that configuration changes in structured.py are respected and that the correct backend and server URL are used for lookups.
  • Ensured that caching and error handling continue to function as expected.

Expanded params config for rpki server URL and backend type for query switching and lookup handling.
Initial support for routinator server API endpoint.
@WilhelmZA

Copy link
Copy Markdown
Author

Fixed lint errors as detailed in workflow failures: a308534

@WilhelmZA

Copy link
Copy Markdown
Author

closing this as it is included in #343

@WilhelmZA WilhelmZA closed this Sep 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant