diff --git a/migration/PPPOE-HA.md b/migration/PPPOE-HA.md index bf88756..08e02d6 100644 --- a/migration/PPPOE-HA.md +++ b/migration/PPPOE-HA.md @@ -224,7 +224,7 @@ HE updates from vyos001: 0 HE updates from vyos002: 0 ``` -Full log: `migration/drill-evidence/wan-drill-2026-09-06-ipv6.log`. +Full log: `migration/drill-evidence/wan-drill-2026-09-06-ipv6.txt`. **Zero HE API calls across a full takeover and failback.** This is the invariant the design rests on and it now has evidence: the 10 gig lease follows the cloned diff --git a/migration/drill-evidence/wan-drill-2026-09-06-ipv6.txt b/migration/drill-evidence/wan-drill-2026-09-06-ipv6.txt new file mode 100644 index 0000000..6b4912e --- /dev/null +++ b/migration/drill-evidence/wan-drill-2026-09-06-ipv6.txt @@ -0,0 +1,38 @@ +LOG=/tmp/claude-1000/-home-michal-developer-michalzxc-claude-lab/d66e2cbb-c178-46d7-a628-0ecb17b48a09/scratchpad/wan-drill-150954.log +15:09:54 === pre-flight === +15:09:54 holder now : 10.0.1.252 +15:09:54 10.0.1.252 WAN : bond0.53=87.192.101.48 pppoe0=90.251.142.103 +15:09:55 10.0.1.253 WAN : +15:09:55 internet : UP via 10.0.1.252 +15:09:56 10.0.1.252 tun0 src : 87.192.101.48 +15:09:56 10.0.1.253 tun0 src : 87.192.101.48 +15:09:56 IPv6 : UP via 10.0.1.252 +15:09:56 === arming auto-abort on 10.0.1.253 === + watchdog armed (pid 1014868): stand down after 150s holding the VIP with no WAN +15:09:56 === DRILL: force-faulting 10.0.1.252 === +15:10:03 t+7s holder=10.0.1.252 vyos002_wan=[] v6=down +15:10:09 t+13s holder=10.0.1.252 vyos002_wan=[] v6=down +15:10:15 t+19s holder=10.0.1.253 vyos002_wan=[] v6=down +15:10:21 t+25s holder=10.0.1.253 vyos002_wan=[] v6=down +15:10:33 t+37s holder=10.0.1.253 vyos002_wan=[bond0.53=87.192.101.48 ] v6=up +15:10:33 *** TAKEOVER OK: 10.0.1.253 held the VIP and reached the internet in 37s *** +15:10:33 *** IPv6 followed in 37s (v4 37s, gap 0s) *** +15:10:33 === failing back to 10.0.1.252 === +15:10:46 t+13s holder=10.0.1.253 vyos001_wan=[] v6=down +15:10:53 t+20s holder=10.0.1.253 vyos001_wan=[] v6=down +15:10:59 t+26s holder=10.0.1.252 vyos001_wan=[] v6=down +15:11:04 t+31s holder=10.0.1.252 vyos001_wan=[bond0.53=87.192.101.48 ] v6=down +15:11:11 t+38s holder=10.0.1.252 vyos001_wan=[bond0.53=87.192.101.48 ] v6=down +15:11:17 t+44s holder=10.0.1.252 vyos001_wan=[bond0.53=87.192.101.48 ] v6=up +15:11:17 *** FAILBACK OK in 32s *** +15:11:17 *** IPv6 back in 44s *** +15:11:17 === IPv6 invariants === +15:11:17 tun0 src : 87.192.101.48 -> 87.192.101.48 +15:11:17 OK: tunnel source unchanged across the drill +15:11:18 HE updates from 10.0.1.252 since 2026-09-06 15:09:54: 0 +15:11:18 HE updates from 10.0.1.253 since 2026-09-06 15:09:54: 0 +15:11:18 --- cleanup (always runs) --- +15:11:39 final holder : 10.0.1.252 +15:11:40 final WAN : 10.0.1.252 [bond0.53=87.192.101.48 pppoe0=90.251.152.236 ] 10.0.1.253 [] +15:11:40 final internet: UP via 10.0.1.252 +15:11:40 log: /tmp/claude-1000/-home-michal-developer-michalzxc-claude-lab/d66e2cbb-c178-46d7-a628-0ecb17b48a09/scratchpad/wan-drill-150954.log