Bug 2229166

Summary: Bridge NAD should set "preserveDefaultVlan": false
Product: Container Native Virtualization (CNV) Reporter: Petr Horáček <phoracek>
Component: User ExperienceAssignee: Tal Nisan <tnisan>
Status: NEW --- QA Contact: Guohua Ouyang <gouyang>
Severity: high Docs Contact:
Priority: high    
Version: 4.12.5CC: gouyang, hstastna, mschatzm
Target Milestone: ---Flags: gouyang: needinfo? (mschatzm)
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Petr Horáček 2023-08-04 13:59:27 UTC
Description of problem:
Due to https://bugzilla.redhat.com/show_bug.cgi?id=2179333, any VM connected to a VLAN through a bridge CNI NAD is also connected to the native VLAN 1. This is unintended. We should make sure our users set `"preserveDefaultVlan": false` to prevent this from happening.

Version-Release number of selected component (if applicable):
4.12.5+

How reproducible:
Always

Steps to Reproduce:
1. Create a bridge NAD through the UI

Actual results:
It is created without `"preserveDefaultVlan": false` which causes the issue described above.


Expected results:
The generated NAD contains `"preserveDefaultVlan": false`. Example:
  apiVersion: "k8s.cni.cncf.io/v1"
  kind: NetworkAttachmentDefinition
  metadata:
    name: <bridge-network> 
    annotations:
      k8s.v1.cni.cncf.io/resourceName: bridge.network.kubevirt.io/<bridge-interface> 
  spec:
    config: '{
      "cniVersion": "0.3.1",
      "name": "<bridge-network>", 
      "type": "cnv-bridge", 
      "bridge": "<bridge-interface>", 
      "macspoofchk": true, 
      "vlan": 1,
      "preserveDefaultVlan": false
    }'


Additional info:
This should be changed on all releases starting with 4.12.
The backend bug where this new attribute was introduced: https://bugzilla.redhat.com/show_bug.cgi?id=2179333

Comment 1 Hilda Stastna 2023-08-04 17:31:33 UTC
Creating NADs themselves does not belong to the CNV UI team. Not sure who takes care about the Networking UI,
as I can see creating NADs in the UI is accessible under "Networking", in the main menu, which is not part of our code.

Comment 2 Guohua Ouyang 2023-08-05 00:13:43 UTC
We need to fix it in openshift/console repo: https://github.com/openshift/console,
And backport it to 4.13 and 4.12

cc: Matan

Comment 3 Petr Horáček 2023-08-07 07:25:00 UTC
Hi, thanks for triaging this. I don't know if this UI is part of the KubeVirt plugin, but we have introduced [1] the component and were fixing it in the past [2].

[1] https://github.com/pcbailey/console/commit/369349adb1f9cca37373b5d33d664ce7ffa1e1c4
[2] https://github.com/openshift/console/pull/3201