Bound the two tailscale lookups that were missed when the others were
This commit is contained in:
@@ -544,7 +544,10 @@ function vv_network_stats(): array {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Tailscale IP — use `tailscale ip` CLI (interface name varies: tailscale0, tailscale1, etc.)
|
// Tailscale IP — use `tailscale ip` CLI (interface name varies: tailscale0, tailscale1, etc.)
|
||||||
$tsIp = trim(shell_exec('tailscale ip -4 2>/dev/null | head -1') ?: '');
|
// Bounded like every other tailscale lookup in the tree. vv_network_stats() is served by
|
||||||
|
// api/monitor_fast.php, which the Monitor page polls once a second; an unbounded call here
|
||||||
|
// makes a slow tailscale silently drop that live cadence to whatever the CLI takes.
|
||||||
|
$tsIp = trim(shell_exec('timeout 2 tailscale ip -4 2>/dev/null | head -1') ?: '');
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'available' => true,
|
'available' => true,
|
||||||
|
|||||||
@@ -910,8 +910,12 @@ resolve_remote_ip() {
|
|||||||
local attempts=3
|
local attempts=3
|
||||||
|
|
||||||
for ((i=1; i<=attempts; i++)); do
|
for ((i=1; i<=attempts; i++)); do
|
||||||
# Direct lookup — works when MagicDNS short-name resolution is active
|
# Direct lookup — works when MagicDNS short-name resolution is active.
|
||||||
REMOTE_SERVER=$(tailscale ip -4 "$ts_name" 2>/dev/null)
|
# Bounded, because it is not active here: the two hosts sit on separate tailnets, so
|
||||||
|
# this call cannot succeed and blocks ~5s before giving up, while the status fallback
|
||||||
|
# below answers in milliseconds. resolve_tailscale_ip() was bounded for this reason;
|
||||||
|
# this function has the same lookup and was missed.
|
||||||
|
REMOTE_SERVER=$(timeout 2 tailscale ip -4 "$ts_name" 2>/dev/null)
|
||||||
|
|
||||||
# Fallback — parse tailscale status for FQDN entries (e.g. hostname.tailXXXX.ts.net)
|
# Fallback — parse tailscale status for FQDN entries (e.g. hostname.tailXXXX.ts.net)
|
||||||
if [[ -z "$REMOTE_SERVER" ]]; then
|
if [[ -z "$REMOTE_SERVER" ]]; then
|
||||||
|
|||||||
Reference in New Issue
Block a user