5.0 KiB
5.0 KiB
Changelog
All notable changes to PeerCortex are documented here.
[0.5.0] — 2026-03-26
Added
- RPKI-based ASPA detection via Cloudflare RPKI JSON feed — 1,455+ ASPA objects worldwide, cached and refreshed every 10 minutes
- RFC-compliant ASPA path verification (draft-ietf-sidrops-aspa-verification-14) — upstream/downstream verification, valley detection, AS_SET flagging, per-hop status
- ASPA Readiness Score (0–100) with four dimensions: ROA coverage, ASPA object existence, provider match completeness, path validation rate
- Provider Audit — compares RPKI-declared providers vs BGP-detected providers, highlights missing and extra entries with frequency data
- Network Health Report — 13 automated checks (Bogon, RPKI ROA, Blocklist, IRR, MANRS, BGP Visibility, Reverse DNS, Abuse Contact, Resource Cert, IX Route Servers, BGP Communities, Geolocation, IRR Object) with traffic-light scoring
- RIPE Atlas probe integration — shows total probes, connected/disconnected counts, and anchors per ASN
- Route Views as data source and header navigation link
- bgproutes.io integration — 3,294+ vantage points, RIB queries, ROV and ASPA status
- RPKI-Declared Providers section — green badges showing providers from the actual RPKI ASPA object
- Collapsible lists — "Show X more..." for Detected Upstream Providers (limit 10), Missing/Extra in Provider Audit (limit 5)
- Numerical ASN sorting across all badge lists and tables
- WHOIS Details endpoint and dashboard card
- Network Topology endpoint via CAIDA AS-Relationships
- Peering Partner Finder —
/api/peers/findendpoint - Prefix Detail View —
/api/prefix/detailendpoint - IX Detail View —
/api/ix/detailendpoint - Recent Lookups with localStorage persistence and quick-click badges
- Network Compare — side-by-side comparison of two ASNs (common IXPs, shared upstreams, overlapping facilities)
- Copy button on Recommended ASPA Object code block
- Demo animation (SVG) in README
Changed
- ASPA detection switched from broken RIPE DB
aut-numremarks search to Cloudflare RPKI JSON feed (rpki.cloudflare.com/rpki.json) - Upstream providers now resolved with AS names via RIPE Stat AS Overview API
- Version bumped to 0.5.0
- Dashboard footer updated with all data sources including Cloudflare RPKI and Route Views
- Server User-Agent updated to PeerCortex/0.5.0
Fixed
- Critical: ASPA objects not detected — networks with valid ASPA (e.g., AS8283 Coloclue, AS6830 Liberty Global) were incorrectly shown as "Not Found" because the old code searched RIPE DB remarks instead of RPKI repositories
- SyntaxError in frontend — CSS routing styles were embedded as a multiline JS string (single quotes don't allow newlines), moved to proper
<style>block - Double ASN display — provider badges showed "AS1031 AS1031" when AS name wasn't available, now shows clean single ASN with resolved name
- Empty brackets in ASPA template — provider names showed "()" when not resolved, now omitted or fetched via RIPE Stat
- Port conflict on startup — multiple PM2 instances caused EADDRINUSE, resolved with proper process cleanup
- RPKI per-prefix timeout — limited batch size to 10 prefixes with 8s fetch timeout to prevent hanging on large ASNs
[0.4.0] — 2026-03-25
Added
- Initial public release
- Web dashboard with Tokyo Night dark theme
- PeeringDB API v2 integration (network profile, IX presence, facilities)
- RIPE Stat Data API integration (prefixes, neighbours, visibility, routing status)
- bgp.he.net scraping for supplementary BGP data
- Per-prefix RPKI validation via RIPE Stat
- AS neighbour resolution with names
- IPv4/IPv6 route propagation bars with RIS peer visibility
- Prefix size distribution badges
- MCP Server skeleton with 34 tool definitions
- Docker support
- Cloudflare Tunnel deployment on Erik server
- Live demo at peercortex.org
Infrastructure
- Node.js single-file server (server.js) — zero dependencies beyond Node.js built-ins
- PM2 process management on Erik (217.154.82.179)
- Cloudflare Tunnel via
eo-pulsetunnel - Domains: peercortex.org, www.peercortex.org, peercortex.context-x.org
Data Sources
| Source | API | Usage |
|---|---|---|
| PeeringDB | REST API v2 | Network profiles, IX connections, facilities |
| RIPE Stat | Data API | Prefixes, neighbours, visibility, routing status, abuse contacts |
| RIPE Atlas | REST API v2 | Probe and anchor detection per ASN |
| Route Views | Via RIPE Stat | BGP path data, AS relationships |
| bgp.he.net | HTML scraping | Supplementary BGP data |
| bgproutes.io | REST API v1 | 3,294+ vantage points, RIB data, ROV/ASPA status |
| Cloudflare RPKI | JSON feed | 1,455+ ASPA objects, ROA validation |
| RIPE DB | REST API | IRR objects, WHOIS data |