pub struct Addresses { /* private fields */ }Expand description
Behaviour 12: addresses move.
The appliance got 10.13.8.101 one re-lay and 10.13.8.99 the next, with
the twin holding the other; the public address changed every single time.
Code that held a literal went stale exactly that way, so the mock shuffles
both pools on every lay and hands them out in the shuffled order. A consumer
that pins an address fails here on the second lay instead of in production
on the second re-lay.
The public pool is RFC 5737 TEST-NET, and nothing else — ever. It was a
list of REAL UpCloud addresses (our estate’s of 2026-09-15, and others), and
one of them had port 22 open on a machine that is not ours: every mock step
that connects to a handed-out address — verify, the ssh to the front, the
re-image’s banner check — went out onto the internet, to a stranger. A
TEST-NET address is not routed, so a mock that connects to one fails
locally instead of reaching someone. TEST_NET is the check, and the
tests hold every address the estate can hand out to it.
The utility pool is RFC 1918 (10.13.8.96–120, 10.13.12.96–120, across
both /22s for option 121, behaviour 29), disjoint from the networks of the
box the rig runs on.