Skip to content

2.32.1

Choose a tag to compare

@frambudi75 frambudi75 released this 08 Oct 09:46
· 99 commits to main since this release

[2.32.1] - 2026-10-08

Fixed & Enhanced

  • Alcatel OmniSwitch 802.1Q Tagged Trunk VLAN Resolution (cron_switch_poll.php):
    • Integrated native Alcatel Enterprise VLAN Manager MIB vpaTable (.1.3.6.1.4.1.6486.800.1.2.1.3.1.1.2.1.1.3 and .801...) to discover trunk tagged VLANs alongside fallback tables.
    • Added support for Alcatel vlanDescription (.1.3.6.1.4.1.6486.800/801.1.2.1.3.1.1.1.1.1.2) to fetch descriptive VLAN labels.
    • Implemented Phase 1.5 direct registration: all discovered tagged VLANs per interface are committed into switch_port_vlans immediately, even if no active host MACs are currently transmitting across the trunk.
    • Added dynamic traffic tag learning: packets arriving on non-PVID VLANs on trunk interfaces automatically register that VLAN into switch_port_vlans.
  • Compact Tagged VLAN Chips & Interactive Popover (switch-details.php):
    • Replaced bulky paragraphs of stacked VLAN names on trunk interfaces with neat, compact numeric VLAN ID badges (e.g. 10, 20, 231).
    • Added an interactive +N more ▾ toggle button with a sleek glassmorphic popover showing the complete table of VLAN IDs alongside descriptive VLAN names.
    • Included outside-click event listeners to dismiss open popovers seamlessly.
  • Downstream Devices Drawer VLAN Column & Live Filter (switch-details.php):
    • Added a dedicated VLAN badge column to the multi-device expandable drawer accordion on trunk/uplink ports.
    • Enhanced drawer search filtering to evaluate IP, MAC address, hardware vendor, and VLAN ID/Name in real-time.
  • Alcatel Source Learning Disambiguation & Port Normalization (cron_switch_poll.php):
    • Resolved slMacAddressTable index tuple inversion where VLAN IDs (e.g. VLAN 100) were incorrectly mapped as physical port numbers, generating ghost "Port 100" entries.
    • Implemented $fnResolveAlcatelSl heuristic validator to accurately differentiate between VLAN.ifIndex.MAC and ifIndex.VLAN.MAC formats across AOS versions.
    • Extended normalize_port_name() to map slot 1 physical bridge ports (1..64) directly to Alcatel's standard format (1/X) instead of unmapped fallback (Port X).
    • Automatically purges stale unmapped "Port %" records on Alcatel switches to maintain clean interface inventories.
  • False-Positive Loop Detection Fix & Flap Threshold Enforcement (cron_switch_poll.php, includes/loop.helper.php, loop-detective.php):
    • Eliminated critical false alarm where moving a single laptop, phone, or Wi-Fi roaming client (access_suspects) bypassed loop_flap_threshold and marked all switches as loop_detected = 1.
    • Enforced strict flap threshold requirement (>= 3-5 concurrent oscillating MACs on the identical port pair) before triggering an L2 switching loop warning.
    • Restricted end-device root-cause candidate isolation to confirmed high-frequency flapping pairs or active STP quarantine ports only.
    • Eliminated false cross-switch flapping alarms in LoopDetectiveHelper previously triggered by lifetime cumulative TCN counts (> 20).
    • Added automated database auto-cleanup in includes/db.php resetting false loop_detected flags and resolving single-flap entries in ip_conflict_events.