PPPOE-HA: record the two failure modes found by running the thing
Some checks failed
CI/CD / lint (push) Failing after 8s
CI/CD / test (push) Failing after 8s
CI/CD / typecheck (push) Failing after 25s
CI/CD / build (push) Has been skipped
CI/CD / publish-rpm (push) Has been skipped
CI/CD / publish-deb (push) Has been skipped

Both were invisible to inspection and only appeared under the hard matrix:
the flap damper tearing down an established session via the lease it stopped
renewing, and a missing peers file being completely silent. The second has a
production edge worth spelling out -- an unsaved commit reverts on reboot and
takes pppoe0 with it, leaving a standby that can never take over while
looking perfectly healthy.
This commit is contained in:
Michal
2026-09-06 00:11:32 +01:00
parent b659e0d47e
commit 4d47b609a2
9 changed files with 192 additions and 124 deletions

View File

@@ -1,17 +1,18 @@
=== hard failover, session-control=replace, 2026-09-05T19:20:56+01:00 ===
master labsim-vyos2 (172.31.1.253) destroyed with virsh destroy -- no PADT sent.
-- survivor took over and dialled --
172.31.1.252 holds_vip=yes wan_up=yes ppp_up=yes ppp_active=yes may_dial=yes role=master
-- AC: exactly one session throughout, from the survivor's MAC --
ppp0 simdsl 198.51.100.121 calling-sid 52:54:00:e5:95:a2 active 00:07:01
-- returning router did NOT dial on boot (the gate) --
ConditionResult=no ActiveState=inactive NRestarts=0 pppoe0 absent may_dial=no
AC session count after its return: 1
-- caveat --
A VM restart recreates its taps, leaving the OVS bond holding stale members
(lacp dead, VLAN 1 unreachable). Re-bonded via ovs_bond_router; the harness
now does this automatically after virsh start.
=== 2026-09-06T00:11:13+01:00 ===
--- AC sessions ---
ifname | username | ip | ip6 | ip6-dp | calling-sid | rate-limit | state | uptime | rx-bytes | tx-bytes
--------+----------+----------------+-----+--------+-------------------+------------+--------+----------+----------+----------
ppp0 | simdsl | 198.51.100.127 | | | 52:54:00:4e:0b:56 | | active | 00:00:30 | 514 B | 204 B
--- 172.31.1.252 ---
--- 172.31.1.253 ---
vip=172.31.1.1 holds_vip=yes wan_disabled=no wan_up=yes ppp_up=yes ppp_active=yes may_dial=yes lease_age=10 dropin=yes role=master
pppoe0 UNKNOWN 198.51.100.127 peer 198.51.100.1/32
default nhid 110 dev pppoe0 proto static metric 20
Sep 05 22:57:40 vyos vrrp-wan[199948]: GUARD: lease stale (81s > 75s; is vrrp-wan-reconcile.timer running?) -- hanging up pppoe0
Sep 05 23:02:41 vyos vrrp-wan[206596]: MASTER: dialling pppoe0
Sep 05 23:06:17 vyos vrrp-wan[213698]: not MASTER: hanging up pppoe0
Sep 05 23:06:18 vyos vrrp-wan[213859]: not MASTER but bond0.53 enabled -> releasing
Sep 05 23:06:23 vyos vrrp-wan[214503]: bond0.53 disable commit took 5s
Sep 05 23:10:43 vyos vrrp-wan[221064]: MASTER: dialling pppoe0
Sep 05 23:10:44 vyos vrrp-wan[221212]: MASTER with bond0.53 disabled -> enabling
Sep 05 23:10:48 vyos vrrp-wan[221995]: bond0.53 enable commit took 4s