Skip to main content

Internet Health & Failover

SPR can continuously monitor the health of each WAN uplink, keep a longitudinal history of latency, packet loss, and jitter, record outages, run per-uplink speed tests, and automatically route traffic around an uplink that goes bad.

Find this feature under Network → Internet Health in the menu, at /admin/wan.

Monitoring is off by default

Internet Health does nothing until you turn it on. While monitoring is off, SPR sends no probes and runs no speed tests. When you first open the page you will see a Monitoring is off card explaining exactly what will happen once you enable it.

To turn it on, either press Enable Monitoring on that card, or open the settings (gear icon) and switch Monitoring on. Once enabled, SPR sends small ICMP pings outward from every WAN uplink to the configured probe targets to measure latency, packet loss, and outages.

What it measures

While monitoring is enabled, SPR probes each enabled uplink on a short interval and keeps:

  • Live metrics per uplink: current latency, jitter, and loss, shown on each uplink card.
  • History at two time scales: one sample per minute (kept for 24 hours) and one per hour (kept for 30 days). The performance chart lets you switch between Latency and Loss and between the 1h, 24h, and 30d ranges.
  • Outage history: whenever an uplink is marked down, SPR records the start time, cause, and duration, and closes the entry out when the uplink recovers. The Outage History table lists recent outages and a per-uplink 24h uptime bar shows availability.

The summary tiles at the top show overall Internet status (Healthy, Degraded, or Down), how many WANs are active, 24-hour availability, and average latency.

Configuration

Open the settings dialog with the gear icon. The options are:

  • Monitoring — the master switch. Probes and speed tests only run outward when this is on.
  • Failover — "Route around unhealthy uplinks automatically." When on, an uplink that fails is temporarily removed from the outbound set (see How failover works). This switch is only available when Monitoring is on.
  • Probe targets — a comma-separated list of IPv4 addresses to ping (default 1.1.1.1, 8.8.8.8). SPR probes all of them; an uplink counts as reachable if any one target answers. Only valid IPv4 addresses are kept.
  • Speed test server — the download URL used for speed tests (default is a Cloudflare speed endpoint). It must be an explicit http:// or https:// URL, so you always know which server your uplinks are contacting.

Beyond the dialog, the failure and recovery thresholds control how quickly SPR reacts. An uplink is declared down after a run of consecutive failed probes (default 4) and recovered after a run of consecutive successful probes (default 3). Combined with the probe interval, these set how long an uplink must be misbehaving before failover triggers or clears.

If you turn Monitoring or Failover off, any uplink that was being routed around is immediately restored.

Health tab vs Speed Test tab

The Internet Health page has two tabs:

  • Health — the monitoring dashboard described above: status tiles, per-uplink cards, the latency/loss chart, and outage history.
  • Speed Test — a dedicated view for running and reviewing download speed tests.

You can also run a speed test straight from an uplink card with the Test button. Each test downloads from the configured speed test server, bound to that specific uplink, and records the measured download throughput and timestamp. Speed tests only run when you explicitly start one, and only while Monitoring is enabled.

Each uplink card shows the interface name and its gateway. Clicking the interface name (or its chevron) takes you to Link Settings at /admin/uplink, where you configure the uplink itself — DHCP or static IP, wireless uplink settings, and so on. See Link Management for details.

How failover works

SPR load-balances outbound traffic across all healthy uplinks. Each uplink has its own routing table, and a stateless hash of the connection's source and destination addresses picks which uplink (via an fwmark) a given connection uses, so a connection consistently sticks to one uplink.

When Failover is enabled and monitoring marks an uplink as down, SPR removes that uplink from the outbound set and rebuilds the load-balancing rules across the remaining healthy uplinks — but only if at least one other uplink is still alive, so it never cuts off your last working connection. When the uplink's probes recover, it is added back and traffic rebalances across it again.

This health-driven failover builds on the multi-uplink load balancing described in Link Management.