docs(drill): the audit is complete — boxes are not isolated from each other #36

Merged
dan-claude-bot merged 1 commit from drill/run10-results into main 2026-07-14 11:28:10 +00:00
dan-claude-bot commented 2026-07-14 01:25:44 +00:00 (Migrated from github.com)

Run 10, on a doctor-clean host: 48/49, every #15 probe answered. RUNS.md now leads with the answer table.

🔴 A3 — the probe the whole exercise existed for

FAIL  BOX A REACHES BOX B (10.87.0.183) — sibling isolation does NOT hold [tcp: refused]

refused = A's SYN arrived at B, and B answered with a RST. Boxes reach each other.

#12 reasoned from the code that the 10.0.0.0/8 egress drop covered box-to-box traffic "belt and braces". It doesn't: two boxes on one bridge share an L2 segment, so their traffic is switched, never routed, and never meets that rule. Nine runs failed to fire this probe — every failure a different bug, in the drill or the host — and when it finally fired it overturned the premise it was written to confirm.

The tool's contract, from the README: "a box reaches the public internet and nothing else." It also reaches every other box on the host.

#16 has been reframed and retitled accordingly: it is a fix, not a formalization.

Also settled

  • ipv4_filtering breaks the box — and this time the verdict is sound, because it was measured on a baseline that had already passed the egress check. (Run 7's identical-looking FAIL was a broken box lying, and is void — that gate is what makes the difference.)
  • dns.mode=none is viable — closes the enumeration leak, egress survives, no outage window. Retracting the design veto I posted against it on the strength of one bad run.
  • @internal is unsupported on bridge ACLs.

🤖 Generated with Claude Code

Run 10, on a doctor-clean host: **48/49, every #15 probe answered.** `RUNS.md` now leads with the answer table. ## 🔴 A3 — the probe the whole exercise existed for ``` FAIL BOX A REACHES BOX B (10.87.0.183) — sibling isolation does NOT hold [tcp: refused] ``` `refused` = A's SYN **arrived** at B, and B answered with a RST. **Boxes reach each other.** #12 reasoned from the code that the `10.0.0.0/8` egress drop covered box-to-box traffic "belt and braces". It doesn't: two boxes on one bridge share an **L2 segment**, so their traffic is *switched*, never routed, and never meets that rule. Nine runs failed to fire this probe — every failure a different bug, in the drill or the host — and when it finally fired it **overturned the premise it was written to confirm**. The tool's contract, from the README: *"a box reaches the public internet and nothing else."* It also reaches every other box on the host. #16 has been reframed and retitled accordingly: it is a **fix**, not a formalization. ## Also settled - **`ipv4_filtering` breaks the box** — and this time the verdict is sound, because it was measured on a baseline that had *already passed* the egress check. (Run 7's identical-looking FAIL was a broken box lying, and is void — that gate is what makes the difference.) - **`dns.mode=none` is viable** — closes the enumeration leak, egress survives, no outage window. **Retracting** the design veto I posted against it on the strength of one bad run. - **`@internal` is unsupported** on bridge ACLs. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: heavy-duty/box#36
No description provided.