fix(doctor): the gateway does not answer ping — by design, so stop asking #43
No reviewers
Labels
No labels
blocked
blocker:ci-red
blocker:conflict
blocker:drill-pending
blocker:unrequested
bug
claimed
documentation
enhancement
epic
merge-next
needs-triage
ready
release
scope:cli
scope:drill
scope:host
scope:installer
scope:templates
scope:tiers
stale
state:addressing
state:bots-reviewing
state:building
state:needs-human
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: heavy-duty/box#43
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/doctor-gateway-ping"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fifth false alarm, caught live on the drill host immediately after #42 let the probe section run to completion for the first time:
A verdict of not fit to drill on a host that resolves DNS through the gateway it just called unreachable.
Why the ping can never succeed
claudebox-firewall.shprotects the host's own sockets from its boxes — that is its job:So "can the box ping the gateway" is a probe whose failure is the designed state. It does not measure routing; it measures the firewall doing its job, and calls that a fault.
The fix
Probe routing the way the README states the contract: a box reaches the public internet.
curl https://1.1.1.1by address — DNS not involved, gateway traversed as a router (FORWARD path, which is open) rather than as a destination (INPUT path, which is closed by design). The DNS-failure branch reuses that one probe's result instead of running the identical curl a second time.With this, the doctor on the live host should finally read clean — fit to drill, with issue #33's pin verified in the same breath:
🤖 Generated with Claude Code