Every CARP VHID event changes WAN state; subsystem/VHID is ignored #4

Closed
opened 2026-10-18 17:14:41 -07:00 by eric · 0 comments
Owner

Severity: Medium · Location: 10-wancarp:345-353, 374

$subsystem is only checked for an @; the VHID and interface in it are never used. With several VHIDs, each one fires its own event, and whichever event arrives last decides the WAN state.

How it fails: if the VHIDs ever disagree (preempt off, or briefly during a transition), the WAN ends up wherever the last event put it, not where the node's overall role says it should be.

Suggested fix:

  • Add an optional $trigger_vhids setting so only chosen VHIDs act, or
  • on each event, compute the node's role from all carp: lines in ifconfig output instead of trusting the single event.
**Severity:** Medium · **Location:** `10-wancarp:345-353`, `374` `$subsystem` is only checked for an `@`; the VHID and interface in it are never used. With several VHIDs, each one fires its own event, and whichever event arrives last decides the WAN state. **How it fails:** if the VHIDs ever disagree (preempt off, or briefly during a transition), the WAN ends up wherever the last event put it, not where the node's overall role says it should be. **Suggested fix:** - Add an optional `$trigger_vhids` setting so only chosen VHIDs act, or - on each event, compute the node's role from all `carp:` lines in `ifconfig` output instead of trusting the single event.
eric closed this issue 2026-10-18 17:24:56 -07:00
Sign in to join this conversation.
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
eric/10-wancarp#4
No description provided.