| Age | Commit message (Collapse) | Author |
|
When there are multiple serial consoles defined; but either none or the
last used the 'kernel' CLI option to disply Kernel messages, the GRUB
code was called multiple times.
By moving the call to the GRUB helpers outside the for loop we gain a single
execution of the code path, not that it matters performance wise - but messing
with the bootloader should be reduced to a minimum.
|
|
serial: T8375: use boot activation script to define a serial console on the CLI
|
|
config-sync: T7784: Add command to diff configuration with secondary node
|
|
vyos-netlinkd: T8486: fix high-cpu utilisation due to excessive CLI calls
|
|
After rewriting the op-mode handlind code and introducing virtualTagNodes for
op-mode, also all <command> statements will be executed by a runner. Executing
"bash -c ''" code within that runner lacks the proper environment.
This can be verified by adding "env" into the bash -c '' executions string.
Solve this issue by moving the hypervisor detection code to show_sensors.py.
|
|
strace: Process 16362 attached
[pid 16362] execve("/bin/cli-shell-api", ["/bin/cli-shell-api", "--show-active-only", "showConfig", "interfaces"], ...) = 0
[pid 16362] +++ exited with 0 +++
--- SIGCHLD ...
strace: Process 16363 attached
[pid 16363] execve("/bin/cli-shell-api", ["/bin/cli-shell-api", "--show-active-only", "showConfig", "interfaces"], ...) = 0
[pid 16363] +++ exited with 0 +++
--- SIGCHLD ...
This would appear to be due to vyos-netlinkd calling op_mode_config_dict() more
than is necessary: it can be called only when it may be applicable (this patch).
Co-Authored-by: John Estabrook <jestabro@vyos.io>
|
|
T8448: add an option to enable SNMP traps in VRRP
|
|
T8459: Fix cron GeoIP update remove unexpected force option
|
|
Allow to configure Keepalived VRRP traps
- set high-availability vrrp snmp trap
|
|
remote: T4732: add VRF option for commit-archive
|
|
Remove unexpected `--force` option for the GeoIP update cron task
$ /usr/libexec/vyos/geoip-update.py --force
usage: geoip-update.py [-h] [--init]
geoip-update.py: error: unrecognized arguments: --force
|
|
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.
|
|
Clearly indicate during startup what happens. When we see "system" on the CLI,
infact we ran the activation scripts, thus the rename.
|
|
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.
|
|
T8292: Fix ndp-proxy verify key mismatch for prefix rules
|
|
vpp: T8452: fix typo in variable name
|
|
Store the PROGRAM output in a temporary .BY_BUS ENV variable, then
reference it via %E{.BY_BUS} in the SYMLINK+= assignments. This
collapses the three duplicated PROGRAM pipelines into a single
invocation and removes the mixed usage of $result and %c.
No functional change: tested on MosChip MCS7840 (2x 4-port chips,
8 ports total), FTDI FT4232H, and Sierra EM7455 -- all symlinks
identical before and after, verified with udevadm test.
Reduces duplication; refactor suggested by
@copilot-pull-request-reviewer on PR #5113.
|
|
firewall: T8281: Normalize network prefixes in rule configuration
|
|
firewall: T8282: Normalize invalid network-group names during migration
|
|
Rename `id_from_persisten_conf` to `id_from_persistent_conf`.
|
|
Multi-port USB serial adapters (e.g., MosChip MCS7840) where all ports
share the same USB ID_PATH create identical symlink names in
/dev/serial/by-bus/, causing only the last-enumerated port to be
accessible.
Split the existing catch-all rule for devices with .ID_PORT into two
cases:
- Port 0: keeps the base symlink name (backward compatible)
- Port 1+: appends pN suffix (e.g., usb0b1.4.1p1.0p1)
Devices where each port has a unique ID_PATH (e.g., FTDI FT4232H) and
single-port devices are unaffected.
|
|
Add new CLI option to make transfers to the commit-archive working using a
dedicated (e.g. management) VRF.
set system config-management commit-archive vrf MGMT
All transfers using vyos.remote module will now run through the VRF defined on
the CLI.
|
|
Convert non-canonical IPv4 and IPv6 prefixes in 'source/destination address'
fields to proper network addresses (e.g. 10.10.10.1/30 -> 10.10.10.0/30).
This prevents invalid configurations and ensures consistent prefix handling.
|
|
vpp: T8438: Add bidirectional interface-in-use validation
|
|
nat64: T8456: add constraint for translation port range
|
|
Replace unsupported characters (e.g. `,`, `+`) with `_` when migrating
from 1.3.x and handle name collisions safely to prevent commit failures.
|
|
NAT64 requires dedicated transport address space for translation, similar to
exclusive port ownership during socket binding. If a local process and Jool
translation both use the same transport tuple (for example, 192.0.2.1:5000),
traffic conflicts can occur.
Jool does not prevent pool4 from overlapping with other port allocations, so
avoiding conflicts is an operator responsibility.
In addition to service ports already in use, account for Linux ephemeral
range (net.ipv4.ip_local_port_range), which defaults to 32768-60999. This
default is why, when pool4 is empty, Jool uses 61001-65535 on the node's
primary global addresses.
One can adjust the ephemeral range via sysctl, and Jools translation range via
pool4 add/remove.
vyos@vyos:~$ sysctl net.ipv4.ip_local_port_range
net.ipv4.ip_local_port_range = 32768 60999
VyOS now uses verify() in NAT64 to check that the supplied tranlation port
range does not overlap with the Kernels ephemeral port range.
|
|
|
|
|
|
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.
|
|
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).
|
|
* Add warning when defining `offload-target` without setting action to `offload`
|
|
vpp: T8419: Disallow cross-membership between VPP and kernel bonding/bridge interfaces
|
|
Fix typos and mistakes
No functional changes
|
|
interfaces
|
|
|
|
vpp: T8416: Prevent interfaces from being assigned to xconnect and bridge/bonding at the same time
|
|
bridge/bonding at the same time
|
|
Fix AttributeError in `_is_device_allowed` by using
iface parameter for `persist_config` lookup.
|
|
T8379: PBR commit fail with traceback if non-existing VRF added
|
|
T8410: Fix typos and mistakes for operational and configuration commands
|
|
configuration option
Prevents attachments of unsupported NICs when the allow-unsupported-nics option is removed.
|
|
protocol 'all'
Updated the migration script to ensure that when migrating firewall rules,
if a `port-group` exists, the protocol will be set to 'tcp_udp' only
when its previous value is 'all'.
|
|
T8405: fix noipv6 emitted when dhcpv6-options configured without ipv6 node
|
|
Fix typos and mistakes in the commands and comments
No functional changes
|
|
vpp: T8355: Set MTU for vpp interfaces
|
|
T8188: Preserve static IPv4 addresses flushed by dhclient
|
|
login: T8415: show Warning() if default password is used when adding user
|