headscale/hscontrol/templates
Kristoffer Dalby b113655b71 all: implement PingRequest for node connectivity checking
Implement tailcfg.PingRequest support so the control server can verify
whether a connected node is still reachable. This is the foundation for
faster offline detection (currently ~16min due to Go HTTP/2 TCP retransmit
behavior) and future C2N communication.

The server sends a PingRequest via MapResponse with a unique callback
URL. The Tailscale client responds with a HEAD request to that URL,
proving connectivity. Round-trip latency is measured.

Wire PingRequest through the Change → Batcher → MapResponse pipeline,
add a ping tracker on State for correlating requests with responses,
add ResolveNode for looking up nodes by ID/IP/hostname, and expose a
/debug/ping page (elem-go form UI) and /machine/ping-response endpoint.

Updates #2902
Updates #2129
2026-04-15 10:53:35 +01:00
..
apple.go hscontrol/templates: refactor to use CSS classes and embedded files 2025-11-12 08:28:12 -06:00
auth_error.go templates: add error box component and error page template 2026-04-13 17:23:47 +01:00
auth_success.go templates: generalise auth templates for web and OIDC 2026-02-25 21:28:05 +01:00
auth_web.go templates: generalise auth templates for web and OIDC 2026-02-25 21:28:05 +01:00
design.go assets: fix logo alignment and error icon centering 2026-04-13 17:23:47 +01:00
general.go templates: use CSS variables in all shared components 2026-04-13 17:23:47 +01:00
ping.go all: implement PingRequest for node connectivity checking 2026-04-15 10:53:35 +01:00
register_confirm.go templates: use table layout for registration confirm details 2026-04-13 17:23:47 +01:00
windows.go hscontrol/templates: refactor to use CSS classes and embedded files 2025-11-12 08:28:12 -06:00