Tailscale 1.102.1 breaks Funnel public HTTPS on DGX Spark (works after downgrade to 1.98.10)

After a DGX Spark system update upgraded Tailscale from 1.98.10 → 1.102.1, Funnel’s public HTTPS URL stopped working. If you are seeing similar symptoms below, here is the temporary solution.

(The following is summarized by my Grok-4.5)

After a DGX Spark system update upgraded Tailscale from 1.98.10 → 1.102.1, Funnel’s public HTTPS URL stopped working. Access over the Tailnet still worked, and tailscale funnel status still showed Funnel on with the correct local proxy targets.

Public checks fail like this: TCP connects to the Funnel ingress, TLS starts, then the handshake drops (SSL_ERROR_SYSCALL / unexpected EOF). While reproducing, journalctl -u tailscaled shows:

peerapi: ingress: denied; no ingress cap from …

Resetting Funnel did not help. Downgrading fixed it.

This matches a known Tailscale 1.102.1 Funnel regression:

Holding 1.98.10 avoids the auto-updater putting 1.102.1 back until a fixed Tailscale release is available.