HomeVyOS Platform

interfaces: T6592: moving an interface between VRF instances failed

Description

interfaces: T6592: moving an interface between VRF instances failed

To reproduce:

set vrf name mgmt table '150'
set vrf name no-mgmt table '151'
set interfaces ethernet eth2 vrf 'mgmt'
commit

set interfaces ethernet eth2 vrf no-mgmt
commit

This resulted in an error while interacting with nftables:
[Errno 1] failed to run command: nft add element inet vrf_zones ct_iface_map { "eth2" : 151 }

The reason is that the old mapping entry still exists and was not removed.

This commit adds a new utility function get_vrf_tableid() and compares the
current and new VRF table IDs assigned to an interface. If the IDs do not
match, the nftables ct_iface_map entry is removed before the new entry is added.

Details

Provenance
c-poAuthored on Jul 20 2024, 8:35 AM
Parents
rVYOSONEX35644bc5a166: Merge pull request #3828 from HollyGurza/T6578
Branches
Loading...
Tags
Loading...

Event Timeline