Skip to content

Releases: kernelkit/infix

Infix v26.08.1

Choose a tag to compare

@github-actions github-actions released this 04 Sep 12:20
v26.08.1
8e0275c

Changes

  • Upgrade Linux kernel to 6.18.49 (LTS)

Fixes

  • Drop meta version namespace prefix in generated factory-, failure-, and test-config. This prevents migrate scripts from running on a file that's already in the correct syntax.

Tip

Try Infix in GNS3! See the blog post for details https://www.kernelkit.org/posts/infix-in-gns3/

Infix v26.08.1-rc1

Infix v26.08.1-rc1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 04 Sep 06:14
v26.08.1-rc1
8e0275c

Changes

  • Upgrade Linux kernel to 6.18.49 (LTS)

Fixes

  • Drop meta version namespace prefix in generated factory-, failure-, and test-config. This prevents migrate scripts from running on a file that's already in the correct syntax.

Tip

Try Infix in GNS3! See the blog post for details https://www.kernelkit.org/posts/infix-in-gns3/

Infix v26.08.0

Choose a tag to compare

@github-actions github-actions released this 01 Sep 16:42
v26.08.0
0733ee5

Changes

  • Upgrade Linux kernel to 6.18.48 (LTS)
  • Upgrade Buildroot to 2025.02.17 (LTS)
  • Upgrade mdns-alias to v1.3: fixes crash on hostname change while disconnected from Avahi, treats entry group failures and CNAME collisions as transient (retried instead of exiting), and quieter logs by default
  • Add support for firewall address-set (ipset): named sets of IP addresses and networks, usable as zone sources for per-IP access control, issue #1189
  • Build RPi64 SD card images in release builds
  • Include .pkg files in release builds
  • The statd service now logs at notice level by default, like other services, and supports -v <level> to adjust verbosity at runtime
  • Hardware sensors are now children of the component they measure, so the CPU temperature belongs to the CPU component, and VPD components are named after the board they sit on, vpd-cpu, vpd-product
  • Services can now bind to addresses not yet assigned to an interface, e.g., a floating virtual IP address managed by a routing daemon, issue #1022
  • Wi-Fi interfaces in station mode now show the BSSID of the connected access point in their operational status
  • All Infix build options have been renamed to use a common IX_ prefix, e.g., INFIX_IMAGE_ID is now IX_IMAGE_ID. External trees and saved defconfigs referencing the old names must be updated, issue #1305
  • Add LED support to Acer Connect Vero W6M

Added

  • Add NanoPi R2S Plus support (on-board 32 GB eMMC), including U-Boot device tree selection so the eMMC is enabled when present
  • Add Microchip EV23X71A (Laguna) support: LAN969x switch with 24 GbE copper ports, four SFP+ cages, and a management port, booting Infix from eMMC with the usual A/B slots

Fixes

  • Fix annoying "cannot deselect all services" or reset to YANG default in the web interface's firewall configuration page

  • Fix sporadic slow response, or timeouts, when reading device status while mDNS neighbors are being discovered, e.g., after an mDNS restart. Updates to the neighbor table are now batched, and politely retried when other users or services keep the system busy, logged as:

      statd[3558]: mdns: operational datastore busy, retrying ...
    
  • Fix missing CPU temperature in show system and the web interface on SparX-5, LAN969x, and x86 boards

  • Fix status LED never leaving the boot-in-progress blink pattern: the conditions driving it were never signaled. The console now also shows a critical error banner when the system falls back to the failure config

  • Fix port LEDs on systems with multiple switch chips

  • Fix web interface not starting on fresh installs on several boards: the factory config was missing the entry for the self-signed HTTPS certificate generated on first boot

  • Fix invalid LLDP operational data when a remote device is heard on more than one of its ports, causing NETCONF/RESTCONF clients to reject the entire neighbor list

  • Fix Wi-Fi radios advertising unsupported bands, only 2.4/5/6 GHz are supported, and a race at radio setup that could remove the wrong interface

Tip

Try Infix in GNS3! See the blog post for details https://www.kernelkit.org/posts/infix-in-gns3/

Infix v26.08.0-rc2

Infix v26.08.0-rc2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 01 Sep 14:43
v26.08.0-rc2
0733ee5

Changes

  • Upgrade Linux kernel to 6.18.48 (LTS)
  • Upgrade Buildroot to 2025.02.17 (LTS)
  • Upgrade mdns-alias to v1.3: fixes crash on hostname change while disconnected from Avahi, treats entry group failures and CNAME collisions as transient (retried instead of exiting), and quieter logs by default
  • Add support for firewall address-set (ipset): named sets of IP addresses and networks, usable as zone sources for per-IP access control, issue #1189
  • Build RPi64 SD card images in release builds
  • Include .pkg files in release builds
  • The statd service now logs at notice level by default, like other services, and supports -v <level> to adjust verbosity at runtime
  • Hardware sensors are now children of the component they measure, so the CPU temperature belongs to the CPU component, and VPD components are named after the board they sit on, vpd-cpu, vpd-product
  • Services can now bind to addresses not yet assigned to an interface, e.g., a floating virtual IP address managed by a routing daemon, issue #1022
  • Wi-Fi interfaces in station mode now show the BSSID of the connected access point in their operational status
  • All Infix build options have been renamed to use a common IX_ prefix, e.g., INFIX_IMAGE_ID is now IX_IMAGE_ID. External trees and saved defconfigs referencing the old names must be updated, issue #1305
  • Add LED support to Acer Connect Vero W6M

Added

  • Add NanoPi R2S Plus support (on-board 32 GB eMMC), including U-Boot device tree selection so the eMMC is enabled when present
  • Add Microchip EV23X71A (Laguna) support: LAN969x switch with 24 GbE copper ports, four SFP+ cages, and a management port, booting Infix from eMMC with the usual A/B slots

Fixes

  • Fix annoying "cannot deselect all services" or reset to YANG default in the web interface's firewall configuration page

  • Fix sporadic slow response, or timeouts, when reading device status while mDNS neighbors are being discovered, e.g., after an mDNS restart. Updates to the neighbor table are now batched, and politely retried when other users or services keep the system busy, logged as:

      statd[3558]: mdns: operational datastore busy, retrying ...
    
  • Fix missing CPU temperature in show system and the web interface on SparX-5, LAN969x, and x86 boards

  • Fix status LED never leaving the boot-in-progress blink pattern: the conditions driving it were never signaled. The console now also shows a critical error banner when the system falls back to the failure config

  • Fix port LEDs on systems with multiple switch chips

  • Fix web interface not starting on fresh installs on several boards: the factory config was missing the entry for the self-signed HTTPS certificate generated on first boot

  • Fix invalid LLDP operational data when a remote device is heard on more than one of its ports, causing NETCONF/RESTCONF clients to reject the entire neighbor list

  • Fix Wi-Fi radios advertising unsupported bands, only 2.4/5/6 GHz are supported, and a race at radio setup that could remove the wrong interface

Tip

Try Infix in GNS3! See the blog post for details https://www.kernelkit.org/posts/infix-in-gns3/

Infix v26.08.0-rc1

Infix v26.08.0-rc1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 26 Aug 09:51
v26.08.0-rc1
d1cb279

Changes

  • Upgrade Linux kernel to 6.18.46 (LTS)
  • Upgrade Buildroot to 2025.02.17 (LTS)
  • Upgrade mdns-alias to v1.3: fixes crash on hostname change while disconnected from Avahi, treats entry group failures and CNAME collisions as transient (retried instead of exiting), and quieter logs by default
  • Add support for firewall address-set (ipset): named sets of IP addresses and networks, usable as zone sources for per-IP access control, issue #1189
  • Build RPi64 SD card images in release builds
  • Include .pkg files in release builds
  • The statd service now logs at notice level by default, like other services, and supports -v <level> to adjust verbosity at runtime
  • Hardware sensors are now children of the component they measure, so the CPU temperature belongs to the CPU component, and VPD components are named after the board they sit on, vpd-cpu, vpd-product

Added

  • Add NanoPi R2S Plus support (on-board 32 GB eMMC), including U-Boot device tree selection so the eMMC is enabled when present
  • Add Microchip EV23X71A (Laguna) support: LAN969x switch with 24 GbE copper ports, four SFP+ cages, and a management port, booting Infix from eMMC with the usual A/B slots

Fixes

  • Fix annoying "cannot deselect all services" or reset to YANG default in the web interface's firewall configuration page

  • Fix sporadic slow response, or timeouts, when reading device status while mDNS neighbors are being discovered, e.g., after an mDNS restart. Updates to the neighbor table are now batched, and politely retried when other users or services keep the system busy, logged as:

      statd[3558]: mdns: operational datastore busy, retrying ...
    
  • Fix missing CPU temperature in show system and the web interface on SparX-5, LAN969x, and x86 boards

Tip

Try Infix in GNS3! See the blog post for details https://www.kernelkit.org/posts/infix-in-gns3/

Infix v26.06.0

Choose a tag to compare

@github-actions github-actions released this 01 Jul 08:32
v26.06.0
1bb9f77

Note

Noteworthy changes and additions in this release:

🌐 Web Interface: Infix gets its first-ever web interface! Browse live status and a full operational tree, handle common tasks from curated configuration pages, and drop into a YANG tree editor for everything else. A maintenance section covers firmware upgrade, backup & restore, and more.

📶 Wi-Fi Roaming & Mesh: Access points sharing an SSID can hand clients off seamlessly with 802.11k/v/r, form a cable-free 802.11s mesh backhaul, and steer dual-band clients onto the faster 5/6 GHz band.

🗓️ System Scheduling: Reusable time schedules based on ietf-schedule (RFC 9922) let features like scheduled reboot and software update checks run on a recurring, cron-style calendar.

Changes

  • Upgrade Linux kernel to 6.18.37 (LTS)
  • Upgrade Buildroot to 2025.02.15 (LTS)
  • Add basic web interface: static status pages and a tree view of operational status. Curated configuration pages for some common tasks and a YANG tree editor for the rest. Also includes a maintenance section for firmware upgrade, backup & restore, and more
  • Add Wi-Fi roaming for fast, seamless hand-off between access points that share an SSID: 802.11k, 802.11v and 802.11r (over-the-air FT). See the Wi-Fi guide for details
  • Add Wi-Fi 802.11s mesh support, letting access points form a wireless backhaul between each other without cabling
  • Add band steering for dual-band access points, nudging dual-band clients onto the faster 5/6 GHz band
  • Add legacy-rates option to re-enable 802.11b rates on 2.4 GHz for old IoT devices (disabled by default)
  • Add system scheduling based on ietf-schedule (RFC 9922), using the iCalendar recurrence grouping pruned to cron-expressible rules. Schedules are reusable time-specs; features (scheduled-reboot, software/check-update) trigger off them via a schedule reference
  • Configuring multiple BSS (more than one SSID) on a single Wi-Fi radio now requires an explicitly configured MAC address per BSS
  • New operational advertised-pmd-types leaf-list on each Ethernet interface, exposing the link modes currently advertised, to compare against the supported-pmd-types introduced in v26.05.0
  • Release assets no longer ship separate .sha256 checksum files; the download page now publishes a SHA-256 checksum for each asset directly

Fixes

  • Fix #941: a VETH pair can now connect two containers directly, with both ends assigned to containers.
  • Enabling IP masquerading in the firewall no longer enables IP forwarding on all interfaces. This has been an issue ever since the firewall support was introduced in v25.10.0
  • Fix file permission regression in /cfg/startup-config.cfg, causing the default admin user no permission to read or write the file from shell
  • Fix admin url shown for HTTP/HTTPS links in https://network.local browser, used pre-conflict resolution hostname.local, instead of hostname-2.local
  • Fix unreadable per-port temperature sensor names in show hardware on Marvell based switches: each sensor is now named after the front-panel port it serves (e.g. e1, e2) instead of a raw device-tree path. show system also reports a representative SoC temperature on CN913x platforms
  • Fix missing contact and location settings in operational status; the values were configurable but never returned on RESTCONF/NETCONF reads
  • Fix spurious YANG validation warnings, for NTP and WireGuard configuration, emitted on every NETCONF session and schema load

Tip

Try Infix in GNS3! See the blog post for details https://www.kernelkit.org/posts/infix-in-gns3/

Infix v26.06.0-rc1

Infix v26.06.0-rc1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 30 Jun 22:04
v26.06.0-rc1
d83c708

Changes

  • Upgrade Linux kernel to 6.18.37 (LTS)
  • Upgrade Buildroot to 2025.02.15 (LTS)
  • Add basic web interface: static status pages and a tree view of operational status. Curated configuration pages for some common tasks and a YANG tree editor for the rest. Also includes a maintenance section for firmware upgrade, backup & restore, and more
  • Add Wi-Fi roaming for fast, seamless handoff between access points that share an SSID: 802.11k, 802.11v and 802.11r (over-the-air FT). See the Wi-Fi guide for details
  • Add Wi-Fi 802.11s mesh support, letting access points form a wireless backhaul between each other without cabling
  • Add band steering for dual-band access points, nudging dual-band clients onto the faster 5/6 GHz band
  • Add legacy-rates option to re-enable 802.11b rates on 2.4 GHz for old IoT devices (disabled by default)
  • Add system scheduling based on ietf-schedule (RFC 9922), using the iCalendar recurrence grouping pruned to cron-expressible rules. Schedules are reusable time-specs; features (scheduled-reboot, software/check-update) trigger off them via a schedule reference
  • Configuring multiple BSS (more than one SSID) on a single Wi-Fi radio now requires an explicitly configured MAC address per BSS
  • New operational advertised-pmd-types leaf-list on each Ethernet interface, exposing the link modes currently advertised, to compare against the supported-pmd-types introduced in v26.05.0
  • Release assets no longer ship separate .sha256 checksum files; the download page now publishes a SHA-256 checksum for each asset directly

Fixes

  • Fix #941: a VETH pair can now connect two containers directly, with both ends assigned to containers.
  • Enabling IP masquerading in the firewall no longer enables IP forwarding on all interfaces. This has been an issue ever since the firewall support was introduced in v25.10.0
  • Fix file permission regression in /cfg/startup-config.cfg, causing the default admin user no permission to read or write the file from shell
  • Fix admin url shown for HTTP/HTTPS links in https://network.local browser, used pre-conflict resolution hostname.local, instead of hostname-2.local
  • Fix unreadable per-port temperature sensor names in show hardware on Marvell based switches: each sensor is now named after the front-panel port it serves (e.g. e1, e2) instead of a raw device-tree path. show system also reports a representative SoC temperature on CN913x platforms
  • Fix missing contact and location settings in operational status; the values were configurable but never returned on RESTCONF/NETCONF reads
  • Fix spurious YANG validation warnings, for NTP and WireGuard configuration, emitted on every NETCONF session and schema load

Tip

Try Infix in GNS3! Download the appliance from the GNS3 Marketplace to test Infix in a virtual network environment without hardware.

Infix v26.05.0

Choose a tag to compare

@github-actions github-actions released this 29 May 13:25
v26.05.0
9a2f143

Changes

  • Upgrade Linux kernel to 6.18.33 (LTS)
  • Upgrade Buildroot to 2025.02.14 (LTS)
  • Upgrade FRR to 10.5.4
  • Add support for Acer Connect Vero W6m, a low-cost COTS home router, based on the same hardware as Banana Pi BPI-R3, but with a Wi-Fi 6E (6 GHz band) chip.
  • Add configurable channel-width in Wi-Fi configuration.
  • Upgrade ieee802-ethernet-interface YANG model to revision 2025-09-10 (IEEE Std 802.3.2-2025), adding the standard phy-type and pmd-type operational leaves. Speed is now exposed via ietf-interfaces:speed (bps, RFC 8343); the now obsolete eth:speed is no longer returned
  • Rework show interface summary output as layered protocol rows. When a port has link, a physical-medium row (e.g. 1000baseT, 10GbaseLR) appears above the ethernet row. VLAN, GRE, VXLAN and WiFi interfaces likewise get one row per protocol layer, with type-specific data on each (vid:, remote:, vni:, station ssid:, etc.), issue #530
  • Add support for configurable auto-negotiation for Ethernet ports. A new advertised-pmd-types leaf-list replaces the fixed speed idiom for pinned link modes, issue #805. See the Ethernet Interfaces section in the User Guide for details. Existing configurations using fixed speed are migrated automatically on upgrade
  • Add support for configurable MDI/MDI-X pinout on Ethernet ports. Needed on some PHYs where Auto-MDIX stops working once auto-negotiation is disabled
  • New operational supported-pmd-types leaf-list on each Ethernet interface, exposing the set of PMD types currently supported
  • New CLI command show operational, and optional XPath filtering for this and any of the other datastores, using [path /path/to/subtree]
  • CLI show commands now surface human-friendly error messages instead of a raw Python exceptions, e.g., Interface "w" not found

Fixes

  • Fix #1493: container with a physical interface not properly removed when switching to a configuration without containers
  • Fix #1506: add documentation on how to configure VLAN interfaces, including stacked (Q-in-Q) VLAN interfaces, in a dedicated vlan.md
  • Handle unclean daemon exits better, e.g., dbus-daemon crashing and leaving a stale pidfile behind, causing it to refuse to be restarted
  • Fix occasional blank or garbled [ OK ] lines at startup
  • Disallow multicast MAC addresses in custom MAC address configuration
  • Fix broken Wi-Fi 6 GHz band configuration.
  • Fix operational read of /containers failing and thereby aborting all operational get-data, including RESTCONF/NETCONF reads — for containers whose command contains shell metacharacters, e.g. sh -c "... && ..."
  • WireGuard interfaces are now regenerated when a referenced keystore key changes: the asymmetric private-key, and the symmetric preshared-key at both peer-group and per-peer level
  • Fix crash in operational data when a bridge has VLAN ranges configured: the kernel may report ranges (e.g. vlan 1 vlanEnd 3) from bridge vlan global show, which were not expanded, so show interface and other operational reads failed. Ranges are now expanded and listed correctly

Tip

Try Infix in GNS3! Download the appliance from the GNS3 Marketplace to test Infix in a virtual network environment without hardware.

Infix v26.05.0-rc1

Infix v26.05.0-rc1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 29 May 11:35
v26.05.0-rc1
9a2f143

Changes

  • Upgrade Linux kernel to 6.18.33 (LTS)
  • Upgrade Buildroot to 2025.02.14 (LTS)
  • Upgrade FRR to 10.5.4
  • Add support for Acer Connect Vero W6m, a low-cost COTS home router, based on the same hardware as Banana Pi BPI-R3, but with a Wi-Fi 6E (6 GHz band) chip.
  • Add configurable channel-width in Wi-Fi configuration.
  • Upgrade ieee802-ethernet-interface YANG model to revision 2025-09-10 (IEEE Std 802.3.2-2025), adding the standard phy-type and pmd-type operational leaves. Speed is now exposed via ietf-interfaces:speed (bps, RFC 8343); the now obsolete eth:speed is no longer returned
  • Rework show interface summary output as layered protocol rows. When a port has link, a physical-medium row (e.g. 1000baseT, 10GbaseLR) appears above the ethernet row. VLAN, GRE, VXLAN and WiFi interfaces likewise get one row per protocol layer, with type-specific data on each (vid:, remote:, vni:, station ssid:, etc.), issue #530
  • Add support for configurable auto-negotiation for Ethernet ports. A new advertised-pmd-types leaf-list replaces the fixed speed idiom for pinned link modes, issue #805. See the Ethernet Interfaces section in the User Guide for details. Existing configurations using fixed speed are migrated automatically on upgrade
  • Add support for configurable MDI/MDI-X pinout on Ethernet ports. Needed on some PHYs where Auto-MDIX stops working once auto-negotiation is disabled
  • New operational supported-pmd-types leaf-list on each Ethernet interface, exposing the set of PMD types currently supported
  • New CLI command show operational, and optional XPath filtering for this and any of the other datastores, using [path /path/to/subtree]
  • CLI show commands now surface human-friendly error messages instead of a raw Python exceptions, e.g., Interface "w" not found

Fixes

  • Fix #1493: container with a physical interface not properly removed when switching to a configuration without containers
  • Fix #1506: add documentation on how to configure VLAN interfaces, including stacked (Q-in-Q) VLAN interfaces, in a dedicated vlan.md
  • Handle unclean daemon exits better, e.g., dbus-daemon crashing and leaving a stale pidfile behind, causing it to refuse to be restarted
  • Fix occasional blank or garbled [ OK ] lines at startup
  • Disallow multicast MAC addresses in custom MAC address configuration
  • Fix broken Wi-Fi 6 GHz band configuration.
  • Fix operational read of /containers failing and thereby aborting all operational get-data, including RESTCONF/NETCONF reads — for containers whose command contains shell metacharacters, e.g. sh -c "... && ..."
  • WireGuard interfaces are now regenerated when a referenced keystore key changes: the asymmetric private-key, and the symmetric preshared-key at both peer-group and per-peer level
  • Fix crash in operational data when a bridge has VLAN ranges configured: the kernel may report ranges (e.g. vlan 1 vlanEnd 3) from bridge vlan global show, which were not expanded, so show interface and other operational reads failed. Ranges are now expanded and listed correctly

Tip

Try Infix in GNS3! Download the appliance from the GNS3 Marketplace to test Infix in a virtual network environment without hardware.

Infix v26.04.0

Choose a tag to compare

@github-actions github-actions released this 04 May 10:26
v26.04.0
f539da7

Changes

  • Upgrade Linux kernel to 6.18.25 (LTS)
  • Upgrade Buildroot to 2025.02.13 (LTS)
  • Add support for per-bridge multicast router port in operational, issue #395
  • Add support for static ARP (IPv4) and neighbor cache (IPv6) entries per interface, issue #819. Static entries are installed as permanent kernel neighbor table entries that are never evicted by normal ARP/NDP aging
  • Add support for PTP/gPTP (IEEE 1588-2019 / 802.1AS) clock synchronization. Supported clock types: Ordinary Clock, Boundary Clock, and Transparent Clock. See the User Guide for configuration details
  • Add support for Banana Pi BPI-R4, quad-core Cortex-A73 router with 4x 2.5 GbE switching, dual 10 GbE SFP+. Variants BPI-R4-2g5 and BPI-R4P have one SFP+ replaced by a 2.5 GbE RJ45, with optional PoE on the R4P
  • Update Marvell ESPRESSObin board support. Allow booting with stock U-Boot, which only supports ext4 rootfs partitions; to use, apply the ext4 developer snippet before building (make apply-ext4 all)
  • Fix onboard WiFi support on the Banana Pi BPi-R64

Fixes

  • Fix #520: warn in syslog if multicast flooding is disabled
  • Fix #769: document dummy interfaces in user guide
  • Fix #790: document static multicast filters in user guide
  • Fix #1439: changing hostname does not regenerate DHCP client conf until restart
  • Fix #1458: show ntp tracking displaying a truncated Reference ID, e.g., 92.2 instead of 92.246.137.39
  • Fix #1466: show container showing no output for containers whose command line includes environment variables
  • Fix issue with IGMP queries sent with all-zeroes source MAC address
  • Fix missing IGMP query startup burst when assuming IGMP querier role, as defined in RFC3376 §8.6/§8.7
  • Fix Raspberry Pi 4 and Pi 400 display instability after soft reboot. Previously the touchscreen/DSI display required a full power cycle to reinitialise correctly; it now works reliably after reboot. Please note, you need a fairly up-to-date EEPROM version as well
  • Fix BPI-R4 board README showing inverted DIP switch values for eMMC and SPI NAND boot modes, which would prevent the board from booting correctly
  • Fix SAMA7G54 U-Boot build system selection that caused build failures
  • Fix BPI-R3 PCIe devices failing to initialize on boot due to a missing clock definition in the device tree

Tip

Try Infix in GNS3! Download the appliance from the GNS3 Marketplace to test Infix in a virtual network environment without hardware.