Skip to content

IOS-XR configure VRF on Physical- and Subinterfaces#377

Draft
sven-rosenzweig wants to merge 2 commits into
mainfrom
iosxr/set_vrf_conf_on_interface
Draft

IOS-XR configure VRF on Physical- and Subinterfaces#377
sven-rosenzweig wants to merge 2 commits into
mainfrom
iosxr/set_vrf_conf_on_interface

Conversation

@sven-rosenzweig
Copy link
Copy Markdown
Contributor

No description provided.

Due to IOS-XR MTU inheritance behavior for subinterfaces and bundle
members, the following rules are sufficient for our use case:

- Physical interface:
  Configure L2 MTU and, if an IP address is present, configure L3 MTU.
- Bundle interface:
  Configure only the L2 MTU.
- Bundle member interface (physical):
  Do not configure MTU settings directly.
  L2 MTU is inherited from the bundle interface, and L3 MTU is
  configured on the corresponding subinterface.
- Subinterface (physical or bundle):
  Configure only the L3 MTU, using a default value of 1500 bytes.

In this commit, we assume a default L3 MTU of 1500 bytes.
Cisco IOS-XR automatically adds:
- 4 bytes for 802.1Q encapsulation
- 8 bytes for 802.1ad (Q-in-Q) encapsulation

This allows subinterfaces to operate correctly with the default L3 MTU.

Official Cisco documentation:
https://www.cisco.com/c/de_de/support/docs/ios-nx-os-software/ios-xr-software/116350-trouble-ios-xr-mtu-00.html

Signed-off-by: Sven Rosenzweig <sven.rosenzweig@sap.com>
Signed-off-by: Sven Rosenzweig <sven.rosenzweig@sap.com>
@sven-rosenzweig sven-rosenzweig force-pushed the iosxr/set_vrf_conf_on_interface branch from ed6a6ce to 0d9f1c6 Compare June 1, 2026 14:49
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 1, 2026

Merging this branch will increase overall coverage

Impacted Packages Coverage Δ 🤖
github.com/ironcore-dev/network-operator/internal/provider/cisco/iosxr 40.94% (+1.02%) 👍

Coverage by file

Changed files (no unit tests)

Changed File Coverage Δ Total Covered Missed 🤖
github.com/ironcore-dev/network-operator/internal/provider/cisco/iosxr/intf.go 64.71% (ø) 68 44 24
github.com/ironcore-dev/network-operator/internal/provider/cisco/iosxr/provider.go 29.01% (+1.68%) 162 (+1) 47 (+3) 115 (-2) 👍

Please note that the "Total", "Covered", and "Missed" counts above refer to code statements instead of lines of code. The value in brackets refers to the test coverage of that file in the old version of the code.

Changed unit test files

  • github.com/ironcore-dev/network-operator/internal/provider/cisco/iosxr/intf_test.go
  • github.com/ironcore-dev/network-operator/internal/provider/cisco/iosxr/provider_test.go

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant