summaryrefslogtreecommitdiff
path: root/data
AgeCommit message (Collapse)Author
2026-06-25bgp: T9013: Add BMP source-interface supportNataliia Solomko
2026-06-23Merge pull request #5283 from natali-rs1985/T8998Viacheslav Hletenko
openvpn: T8998: fix ccd-exclusive without client-config-dir
2026-06-23Merge pull request #5226 from indrajitr/haproxy-websocketViacheslav Hletenko
haproxy: T8931: Improve WebSocket support for HAProxy
2026-06-20T8990: bgp: fix VPNv4/VPNv6 leaked routes flapping on every commitAlex Kudentsov
VRF route leaking via VPNv4/VPNv6 caused all imported (leaked) routes to be withdrawn and reinstalled on every commit - even commits unrelated to BGP, VRF or routing - briefly blackholing traffic that depends on them. Root cause: the BGP address-family template rendered the route-target using the "route-target vpn ..." alias. FRR accepts that alias on input but its config writer only ever emits the canonical "rt vpn ..." form. frr-reload.py diffs the generated config against FRR's running config line by line and has no normalisation for this, so the route-target lines never matched and were deleted and re-added on every reload. Re-applying the route-target runs FRR's vpn_leak_prechange()/postchange(), a non-atomic withdraw-all then reinstall-all of every leaked route. Emit the canonical "rt vpn" keyword so the rendered config round-trips through frr-reload unchanged. FRR also folds an identical import+export route-target into "both" (an order-sensitive, byte-identical match), so do the same to stay idempotent; reordered or differing lists stay split on both sides. Add test_bgp_33_vpn_route_target_idempotency covering both / identical export+import / asymmetric route-target, reading the generated FRR config (getFRRconfig/vtysh returns FRR's already-canonical form and cannot catch the alias).
2026-06-19openvpn: T8998: fix ccd-exclusive without client-config-dirNataliia Solomko
Emit `client-config-dir` when `reject-unconfigured-clients` is set, even without server client entries, so OpenVPN does not crash-loop.
2026-06-19haproxy: T8931: Add option http-server-close in backend sectionsIndrajit Raychaudhuri
2026-06-19haproxy: T8931: Add timeout.tunnel in default and backend sectionsIndrajit Raychaudhuri
2026-06-18T8881: dns: expose PowerDNS recursor cache tuning options (#5209)mrpops2ko
Add refresh-on-ttl-perc, nothing-below-nxdomain, and minimum-ttl-override under service dns forwarding with recursor template and smoketest coverage. Co-authored-by: Cursor <cursoragent@cursor.com> Co-authored-by: Daniil Baturin <daniil@baturin.org>
2026-06-16T8923: normalize "can not" to "cannot"Christian Breunig
Replace two-word "can not" / "Can not" with "cannot" across comments, ConfigError messages, CLI help text, and op-mode output. Standard SNMP MIB files under mibs/ are left unchanged.
2026-06-09salt: T8973: remove featureChristian Breunig
As salt has been marked deprecated via T8056 and is thus deprecated in VyOS 1.5 and VyOS 1.4 it is time to remove it from the rolling release.
2026-05-28Merge pull request #5169 from jestabro/exclusive-mask-config-syncJohn Estabrook
T8502: Add exclusion mask to config-sync
2026-05-28T8502: add list of global config-sync exclude pathsJohn Estabrook
2026-05-27Merge pull request #5208 from alexandr-san4ez/T8538-currentChristian Breunig
snmp: T8538: Persist engineBoots counter across reboots
2026-05-27ipsec: T8912: Fix log level not respected in system journalOleksandr Kuchmystyi
When setting 'vpn ipsec logging log-level 0', DPD informational messages (log level 1) were still appearing in the system journal. The root cause is that charon-systemd reads both `charon-systemd.conf` and `charon-logging.conf` and applies the higher of the two log levels to the journal. The VyOS only managed `charon-systemd.conf`, leaving `charon-logging.conf` at its default level of 1, which silently overrode the user-configured level. Fix this by rendering `charon-logging.conf` on every commit with syslog backend set to -1 (silent), making `charon-systemd.conf` the sole authoritative source for journal log verbosity. This also eliminates duplicate log entries in the journal that occurred when both backends were active and writing to the same destination.
2026-05-26Merge pull request #5197 from alexandr-san4ez/T7555-currentViacheslav Hletenko
ipsec: T7555: Implement `ikev2-reauth` for site-to-site peers
2026-05-25Merge pull request #5215 from alexk37/T8910-ipoe-idle-timeoutChristian Breunig
T8910: ipoe-server: expose accel-ppp idle-timeout option
2026-05-22snmp: T8538: Persist engineBoots counter across rebootsOleksandr Kuchmystyi
Per RFC 3414 section 2.2 (Replay Protection), the `snmpEngineBoots` counter must be stored in non-volatile storage and incremented on every snmpd restart. VyOS was not persisting this value, causing it to reset to 1 after every reboot. SNMP managers cache the engineBoots value from previous sessions. When VyOS resets the counter to 1 after reboot, managers reject incoming SNMPv3 trap packets as "too old", producing errors such as: ``` usm: Message too old. reboot count invalid ``` This change introduces `/config/snmp/engineboots.count` as a disk-backed persist file and it uses to sync the counter into snmpd's conf before the daemon starts.
2026-05-22T8910: ipoe-server: expose accel-ppp idle-timeout optionAlex Kudentsov
Add a CLI knob to terminate idle IPoE sessions after a configurable timeout: set service ipoe-server idle-timeout <0-86400> Today there is no way to age out stale IPoE sessions: clients that go silent (powered off, link down) leave a session record on the router indefinitely. accel-ppp natively supports idle-timeout in its [ipoe] section but VyOS did not expose it. The option is added as a shared accel-ppp include so it can be reused by other accel-ppp services in follow-up PRs.
2026-05-21openconnect: T7654: OpenConnect Script ExecutionGiga Murphy
2026-05-21ntp: T8601: add local stratum optionanderbak
2026-05-21Merge pull request #5210 from sever-sever/T8822Christian Breunig
T8822: Add BFD strict mode for BGP
2026-05-21T8822: Add BFD strict mode for BGPViacheslav Hletenko
2026-05-20T6933: fix "system option performance" overwrites sysctl parameters from ↵Christian Breunig
firewall (#5206) sysctl values written by firewall global-options are overwritten when using "system option performance" configuration on VyOS CLI. This is caused by a missing dependency fall from system_option.py to the firewall CLI helper script.
2026-05-20ipsec: T7555: Implement `ikev2-reauth` for site-to-site peersOleksandr Kuchmystyi
IKEv2 reauthentication was configurable via CLI but never translated into `swanctl.conf`. Add `reauth_time` to the peer connection template, driven by the `ikev2-reauth` flag on the ike-group and the per-peer override (yes/no/inherit).
2026-05-19high-availability: T7059: Allow disabling persistent connections for ↵Nataliia S.
virtual-server (#5205)
2026-05-13bgp: T8588: Add match source-peer to policy route-map (#5149)Robin Christ
2026-05-13T8600: Add option to change logging verbosity in Kea (#5178)Nataliia S.
2026-05-12frr: T8606: add watchfrr timeout option (#5165)anderbak
Co-authored-by: Christian Breunig <christian@breunig.cc>
2026-05-11bgp: T8607: Add CLI support for BGP update-delay and establish-waitNataliia Solomko
2026-05-05kea: T8763: Fix vendor-encapsulated-options spaceIndrajit Raychaudhuri
Changes: 1. Change option space from 'ubnt' to 'vendor-encapsulated-options-space'. 2. Change option name from 'unifi-controller' to 'ubnt'. 3. Add 'vendor-encapsulated-options' option (in addition to adding unifi controller IP address under the option name 'ubnt') if unifi-controller is configured.
2026-04-30T6750: sr-te: Adding initial Segment Routing Traffic Engineering portion of ↵Cheeze-It
FRR (#4994) * sr-te: T6750: Adding Segment Routing Traffic Engineering portion of FRR --------- Co-authored-by: Cheeze_It <none@none.com> Co-authored-by: Christian Breunig <christian@breunig.cc>
2026-04-27T8293: Add ability to set timeout for high-availability health-checkNataliia Solomko
Setting a timeout allows VRRP health-check scripts to run longer than the set interval. Without timeout, keepalived considers the script as failed after interval seconds. With timeout set higher than interval, the script has more time to complete before being marked as failed and transitioning VRRP to FAULT state.
2026-04-24Merge pull request #5130 from natali-rs1985/T8460Viacheslav Hletenko
vpp: T8460: Use isolated cpus for VPP cpu-cores
2026-04-21vpp: T8460: Use isolated cpus for VPP cpu-coresNataliia Solomko
VPP CPU core assignment now uses kernel-isolated CPUs (from /sys/devices/system/cpu/isolated) with explicit corelist-workers instead of computing offsets from available cores with skip-cores/workers. Added validation that enough CPUs are actually isolated before VPP starts, and that isolate-cpus config only references existing CPU IDs. Moved smoketest for kernel option 'isolate-cpus' to test_vpp.py
2026-04-15T8457: BGP link-state address familyKyrylo Yatsenko
2026-04-14Merge pull request #5092 from c-po/kernel-serial-activationChristian Breunig
serial: T8375: use boot activation script to define a serial console on the CLI
2026-04-14Merge pull request #5124 from sever-sever/T8478John Estabrook
T8478: Fix typo in the firewall template bridge chain name
2026-04-13Merge pull request #5081 from alexandr-san4ez/T7784-currentJohn Estabrook
config-sync: T7784: Add command to diff configuration with secondary node
2026-04-13T8478: Fix typo in the firewall template bridge chain nameViacheslav Hletenko
Internal typo/cosmitic bug, no functional changes
2026-04-10Merge pull request #5108 from sever-sever/T8448Christian Breunig
T8448: add an option to enable SNMP traps in VRRP
2026-04-10T8448: VRRP add configuration for the SNMP trapsViacheslav Hletenko
Allow to configure Keepalived VRRP traps - set high-availability vrrp snmp trap
2026-04-09serial: T8375: use boot activation script to define a serial console on the CLIChristian Breunig
Required during first-boot of a system. We have images form amd64 and arm64 CPUs which also tend to have different serial interfaces (ttyS vs. ttyAMA). The images which are installed have the correct serial setting for GRUB (ttyS0 or ttyAMA0) and the activation script will probe the Kernel command-line. If a serial interface is defined, we will include it in the VyOS CLI configuration.
2026-04-09conntrack-sync: T8189: Add conntrackd FTFW PurgeTimeout settingNataliia Solomko
2026-04-01config-sync: T7784: Add command to diff configuration with secondary nodeOleksandr Kuchmystyi
Add a new operational command to compare configuration between nodes participating in config synchronization. New command: - `show configuration secondary sync [commands] [running|candidate|saved] [config-node-path]`. This allows operators to view configuration differences across secondary peer before applying or syncing changes. Supports: - displaying using raw diff and 'commands' format; - optional section filtering (subtree comparison); - selectable config source (running, candidate, saved).
2026-03-31Merge pull request #5097 from natali-rs1985/T8229Viacheslav Hletenko
T8229: Fix handling of endpoint in Telegraf Loki template
2026-03-30Merge pull request #5089 from robinchrist/T7338-bgp-as-notationChristian Breunig
bgp: T7338: Add support for "parameters as-notation <asdot|asdot+>"
2026-03-30T8229: Fix handling of endpoint in Telegraf Loki templateNataliia Solomko
2026-03-29bgp: T7338: Add support for "parameters as-notation <asdot|asdot+>"Robin Christ
We explicitly omit the "plain" option, as it is the implicit default in FRR We also do not want to add "plain" as VyOS default value and emit it by default as this makes the config a bit ugly (frr puts it in the router line so you get "router bgp <AS> as-notation plain"). Additionally, setting plain as default value and emitting it by default would break pretty much all BGP tests, as they commonly do self.getFRRconfig(f'router bgp {ASN}', stop_section='^exit') and getFRRConfig does a "^<content>$" match, which breaks when you add the "as-notation plain"
2026-03-27T8410: Fix typos and mistakes for comments and messagesViacheslav Hletenko
Fix typos and mistakes No functional changes
2026-03-25Merge pull request #5082 from sever-sever/T8410Christian Breunig
T8410: Fix typos and mistakes for operational and configuration commands