Title: VPP CGNAT commit failure and runtime errors with DPDK (driver ice) on custom build
Environment
VyOS: custom build with VPP enabled
Kernel boot params:
nosmt mitigations=off isolcpus=0-23 nohz_full=0-23 rcu_nocbs=0-23 rcu_nocb_poll audit=0 \
intel_idle.max_cstate=0 processor.max_cstate=0 intel_pstate=disable \
intel_iommu=on iommu=pt modules-load=vfio,vfio_iommu_type1,vfio_pci
NIC: Intel (driver ice)
RAM: 64GB (hugepages configured)
Configuration
interfaces {
ethernet eth0 {
address 172.29.40.30/30
hw-id 80:30:e0:3b:61:18
vrf mgmt
}
ethernet eth4 {
hw-id b4:96:91:b3:ae:96
mtu 1500
}
ethernet eth5 {
hw-id b4:96:91:b3:ae:97
mtu 1500
}
loopback lo { }
}
protocols {
static {
route 0.0.0.0/0 {
next-hop 206.0.9.21{ }
}
route 100.99.0.0/24 {
next-hop 172.29.49.1 { }
}
}
}
vrf {
name mgmt {
protocols {
static {
route 0.0.0.0/0 {
next-hop 172.29.40.29 { }
}
}
}
table 100
}
}
system {
host-name CGNAT
option { reboot-on-upgrade-failure 5 }
sysctl {
parameter net.core.rmem_default { value 134217728 }
parameter net.core.rmem_max { value 536870912 }
parameter net.core.wmem_default { value 134217728 }
parameter net.core.wmem_max { value 536870912 }
}
}
vpp {
interfaces {
bonding bond0 {
kernel-interface vpptun10
member {
interface eth4
interface eth5
}
mode 802.3ad
}
}
kernel-interfaces {
vpptun10 {
vif 144 { address 172.29.49.2/30 }
vif 145 { address 206.0.9.22/30 }
}
}
nat {
cgnat {
interface {
inside vpptun10.144
outside vpptun10.145
}
rule 10 {
inside-prefix 100.99.0.0/24
outside-prefix 206.0.15.248/29
}
}
}
settings {
cpu {
corelist-workers 2-20
main-core 1
}
interface eth4 { driver dpdk }
interface eth5 { driver dpdk }
}
}Steps to reproduce
Boot system with the kernel parameters above.
Apply the configuration shown.
Run commit.
Expected behavior
Commit should succeed.
VPP should start with CGNAT enabled.
Interfaces should initialize with MTU and bonding as configured.
Actual behavior
Commit hangs or crashes with repeated CRITICAL:VyOS StdErr spam in vyos-configd.
VPP logs show:
set interface mtu: unknown input
rte_eth_dev_set_mtu failed (rv -16)
Secondary MAC Addresses not supported for interface index 0
clib_c11_violation: s1 NULL / s2 NULL
Additional info
Logs:
journalctl -u vyos-configd -n 200
journalctl -u vpp -n 200
show repeated crashes on commit.
Problem persists across reboots.
vyos@vyos:~$ show ver Version: VyOS 1.5-rolling-202508230455 Release train: current Release flavor: generic Built by: [email protected] Built on: Sat 23 Aug 2025 04:55 UTC Build UUID: 2f9818cc-6532-4aab-8e79-38bc0810b838 Build commit ID: 9d533529aacd33 Architecture: x86_64 Boot via: installed image System type: bare metal Secure Boot: disabled Hardware vendor: HPE Hardware model: ProLiant DL360 Gen10 Hardware S/N: xxxx Hardware UUID: xxxx-xxxx-xx-xxxx-xxxx