| Age | Commit message (Collapse) | Author |
|
Previously, VyOS hardcoded the kernel boot log console to either ttyS0 or
tty0, with no post-install CLI method to change it (manual GRUB edits
were required).
This commit adds a new CLI node:
system console device <name> kernel
When set, the selected serial console is used as the kernel boot console.
When removed, the kernel boot console falls back to tty0.
|
|
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.
|
|
For the sake of nice grep lines and refactoring we have an unspoken - unwritten
rule considered as folklore to have imports one per line. This helped in the
past with refactorings.
|
|
vpp: T8438: Add bidirectional interface-in-use validation
|
|
vyos-netlinkd: T8047: replacement of netplugd
|
|
Add bidirectional VPP interface reference validation: prevent assigning an interface used by a VPP feature (NAT/ACL/IPFIX/sFlow, etc.)
as a VPP member (bond/bridge/xconnect) and prevent using a VPP member interface in VPP features.
Block interface deletion when it is still referenced by any VPP feature/member.
Fix VLAN subinterface removal checks broken by the recent VPP config tree restructuring.
|
|
firewall: T8275: Resolve migration issue for 'weekdays' option from 1.3.8
|
|
Fix error parsing for day of week while loading firewall configuration.
|
|
T8229: Fix handling of endpoint in Telegraf Loki template
|
|
vpp: T8419: Disallow cross-membership between VPP and kernel bonding/bridge interfaces
|
|
kea: T8408: Fixes to enable dhcp option 67
|
|
|
|
Fix typos and mistakes
No functional changes
|
|
interfaces
|
|
T8404: pppoe: fix TypeError when ipv6 address node exists without autoconf
|
|
vpp: T8416: Prevent interfaces from being assigned to xconnect and bridge/bonding at the same time
|
|
vpp: T8286: Uninitialized interfaces raise errors when added to VPP
|
|
|
|
bridge/bonding at the same time
|
|
- fix darker linter
|
|
- convert to the simpler kea4_options dict
- add the smoketest
|
|
- update dict literal style
|
|
- Kea overloads the meaning of the boot-file-name option. When used on
its own, it represents the legacy bootp filename option. When option
67 is needed, boot-file-name must be included in an options block.
|
|
Fix typos and mistakes in the commands and comments
No functional changes
|
|
vpp: T8355: Set MTU for vpp interfaces
|
|
|
|
|
|
After commit 6eafdbf1a8 ("configdict: T8358: rename internal representation from
traffic_policy to qos) we uncovered a bug/added a feature in supporting QoS and
redirect on an interface.
The code in VyOS stream 2026.02 is:
if ('mirror' in config or 'redirect' in config) and
dict_search('traffic_policy.in', config) is not None:
and this got changed to:
if 'qos' in config and ('mirror' in config or 'redirect' in config):
in the commit mentioned above. When looking at the code in 2026.02 release
$ git describe --tags
2026.02
$ git grep traffic_policy
python/vyos/configdict.py: dict.update({'traffic_policy': {}})
python/vyos/configdict.py: dict['vif'][vif].update({'traffic_policy': {}})
python/vyos/configdict.py: dict['vif_s'][vif_s].update({'traffic_policy': {}})
python/vyos/configdict.py: dict['vif_s'][vif_s]['vif_c'][vif_c].update({'traffic_policy': {}})
python/vyos/configverify.py: if ('mirror' in config or 'redirect' in config) and dict_search('traffic_policy.in', config) is not None:
python/vyos/ifconfig/interface.py: if not 'traffic_policy' in self.config:
I never see traffic_policy.in set, so the check seems to have never worked in
the past at all.
During the QoS rewrite from 1.3 -> 1.4 CLI traffic-policy was renamed by me to
qos but we kept that synthetic key in the Python code. That is the root cause.
So it should have never worked (CLI wise) but during that bug it started to work
as expected, and even the Python code stated in a comment:
if 'qos' in config and ('mirror' in config or 'redirect' in config):
# XXX: support combination of limiting and redirect/mirror - this is an
# artificial limitation
raise ConfigError('Can not use QoS together with mirror/redirect!')
So we have enabled this feature for a long time by accident already.
|
|
dict_search('ipv6.address', config) returns None when the ipv6 address
node is empty (e.g. after deleting autoconf), causing a TypeError on
the 'in' membership test. Use dict_search('ipv6.address.autoconf', config)
instead, which safely returns None for any missing path segment.
|
|
If we would like to get the CLI config path as a dot delimited string (instead
of whitespace) we can now request it. This is usefull when feeding in the result
of get_config_path() into dict_search().
|
|
|
|
vpp: T8315: Add support for configuring unsupported NICs and update compatible list
|
|
vpp: T8230: Add support for PPPoE on bonding interfaces
|
|
compatible list
Introduce `set vpp settings unsupported nics <pci-id>` and
`set vpp settings unsupported drivers <driver>` to permit VPP activation
on hardware not present in the validated NIC list. Update current compatible list.
|
|
|
|
T8387: fix hardcoded saddr in add-address-to-group
|
|
vpp: T8368: Features nat44 and cgnat should not use the same interfaces
|
|
|
|
|
|
|
|
T8351: VPP add GRE tunnel key configuration
|
|
vpp: T8342: Add verification of members for bond and bridge interfaces
|
|
T8186: netflow: disable IPv6 for netflow protocol version 5
|
|
vpp: T8276: Add verification for virtual interfaces in PPPoE server configuration
|
|
T8357: Allow prefix vpp for show interfaces
|
|
vyos.ifconfig: T8358: clear qdiscs when deleting mirror CLI node
|
|
vpp: T8356: Fix traceback when adding a VPP bridge without members
|
|
|
|
configuration
- Implemented `verify_virtual_interface_exists` function to check for existing interfaces.
- Enhanced error handling for non-existent virtual interfaces in VPP mapping.
- Modified test cases to validate changes regarding PPPoE with subinterfaces.
|
|
|