Netmap beta speed-up, Pathbox 1.0.8, CGNAT on multiple edges
July was mostly about bugfixing and performance improvements to the new network map based on feedback from folks using the beta. Real world use helped us take one 300-site beta network from a 2 GB browser tab down to about 70 MB, and we sped up the map view by moving to MapLibre. The first production Pathbox was deployed, and CGNAT now works properly with more than one edge router.
Netmap beta: much faster on big networks Improved
The new network map got a performance pass after beta feedback from the larger networks. Tabs only load when you open them, the Discovered list pages 250 rows at a time with a text filter, and the map layout is only recomputed when something actually moves. On a 300-site network the browser tab went from over 2 GB of memory to around 70 MB.
Also from that feedback round: the infrastructure / client-average toggle is back on pinglogs, the Frequencies tab shows in map view, clicking a customer dot on the map opens their page, hovering an access point filters the map to its customers, and the pinglog previous/next controls no longer apply the timezone offset twice.
Map view on MapLibre Improved
The map view of the network map now renders with MapLibre GL instead of Leaflet, so panning and zooming with a lot of customer dots on screen is much smoother. This will also allow us to more easily roll out an upcoming feature involving RF propagation mapping.
Pathbox 1.0.7 and 1.0.8 Improved
Two releases out of the first production Pathbox deployment. A memory leak in the latency counters and another in the bridge counters (public IPs on the upstream side) are fixed, rsvpd reconnects to MQTT properly and restarts itself if it can't, and a restart bug that stacked VPP feature arcs (which multiplied NetFlow counts) is gone.
Table sizes are configurable now, with defaults that fit the recommended hardware, the path limit per gateway went from 256 to 1024, and Pathbox re-applies its config on its own after a VPP restart. The deb builds are reproducible too, so a rebuilt package is byte-identical to the published one.
CGNAT with more than one edge router Fixed
If you run CGNAT on two or more edge routers, each router now only gets the NAT rules for its own private subnets. Before this, every edge received every pool's rules. New private subnets that overlap an existing pool are rejected when you save (a private IP can only be behind one edge), and long rule pushes are split to stay under RouterOS's 4096-character line limit.
NetFlow accounting also drains every exporting router now when they're spread across several pingboxes, fixing a bug affecting some large networks with many pingboxes.
Smaller fixes Fixed
Changing a device's class or deleting it clears its old frequency records, and the Frequencies tab hides stale entries. Bandwidth graphs on the network map filter out the occasional impossible spike (over 1 Tbit) that a counter reset produced.