docs: standard linux bridges now support vlans

Update domain XML and network XML documentation to describe how
standard linux bridges support the VLAN configuration.

Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Reviewed-by: Laine Stump <laine@redhat.com>
This commit is contained in:
Leigh Brown 2025-01-08 13:31:30 +00:00 committed by Laine Stump
parent d51179fa82
commit f35bddae90
2 changed files with 40 additions and 38 deletions

View File

@ -6047,28 +6047,29 @@ VLAN tags to apply to the guest's network traffic :since:`Since 0.10.0`.
Network connections that support guest-transparent VLAN tagging include Network connections that support guest-transparent VLAN tagging include
``type='bridge'`` interfaces connected to an Open vSwitch bridge, SRIOV ``type='bridge'`` interfaces connected to an Open vSwitch bridge, SRIOV
Virtual Functions (VF) used via ``type='hostdev'`` (direct device assignment) Virtual Functions (VF) used via ``type='hostdev'`` (direct device assignment),
and, :since:`since 1.3.5`, SRIOV VFs used via ``type='direct'`` with :since:`since 1.3.5`, SRIOV VFs used via ``type='direct'`` with
``mode='passthrough'`` (macvtap "passthru" mode). All other ``mode='passthrough'`` (macvtap "passthru" mode) and, :since:`since 11.0.0`
connection types, including standard linux bridges and libvirt's own virtual standard linux bridges. Other connection types, including libvirt's own virtual
networks, **do not** support it. 802.1Qbh (vn-link) and 802.1Qbg (VEPA) switches networks, **do not** support it. 802.1Qbh (vn-link) and 802.1Qbg (VEPA) switches
provide their own way (outside of libvirt) to tag guest traffic onto a specific provide their own way (outside of libvirt) to tag guest traffic onto a specific
VLAN. Each tag is given in a separate ``<tag>`` subelement of ``<vlan>`` (for VLAN. Each tag is given in a separate ``<tag>`` subelement of ``<vlan>`` (for
example: ``<tag id='42'/>``). For VLAN trunking of multiple tags (which is example: ``<tag id='42'/>``). For VLAN trunking of multiple tags (which is
supported only on Open vSwitch connections), multiple ``<tag>`` subelements can supported on Open vSwitch connections and standard linux bridges), multiple
be specified, which implies that the user wants to do VLAN trunking on the ``<tag>`` subelements can be specified, which implies that the user wants to do
interface for all the specified tags. In the case that VLAN trunking of a single VLAN trunking on the interface for all the specified tags. In the case that VLAN
tag is desired, the optional attribute ``trunk='yes'`` can be added to the trunking of a single tag is desired, the optional attribute ``trunk='yes'`` can
toplevel ``<vlan>`` element to differentiate trunking of a single tag from be added to the toplevel ``<vlan>`` element to differentiate trunking of a
normal tagging. single tag from normal tagging.
For network connections using Open vSwitch it is also possible to configure For network connections using Open vSwitch and standard linux bridges it is also
'native-tagged' and 'native-untagged' VLAN modes :since:`Since 1.1.0`. This is possible to configure 'native-tagged' and 'native-untagged' VLAN modes
done with the optional ``nativeMode`` attribute on the ``<tag>`` subelement: :since:`Since 1.1.0`. This is done with the optional ``nativeMode`` attribute on
``nativeMode`` may be set to 'tagged' or 'untagged'. The ``id`` attribute of the the ``<tag>`` subelement: ``nativeMode`` may be set to 'tagged' or 'untagged'.
``<tag>`` subelement containing ``nativeMode`` sets which VLAN is considered to The ``id`` attribute of the ``<tag>`` subelement containing ``nativeMode`` sets
be the "native" VLAN for this interface, and the ``nativeMode`` attribute which VLAN is considered to be the "native" VLAN for this interface, and the
determines whether or not traffic for that VLAN will be tagged. ``nativeMode`` attribute determines whether or not traffic for that VLAN will be
tagged.
Isolating guests' network traffic from each other Isolating guests' network traffic from each other

View File

@ -520,28 +520,29 @@ VLAN tags to apply to the guest's network traffic :since:`Since 0.10.0`.
Network connections that support guest-transparent VLAN tagging include Network connections that support guest-transparent VLAN tagging include
``type='bridge'`` interfaces connected to an Open vSwitch bridge, SRIOV ``type='bridge'`` interfaces connected to an Open vSwitch bridge, SRIOV
Virtual Functions (VF) used via ``type='hostdev'`` (direct device assignment) Virtual Functions (VF) used via ``type='hostdev'`` (direct device assignment),
and, :since:`since 1.3.5`, SRIOV VFs used via ``type='direct'`` with :since:`since 1.3.5`, SRIOV VFs used via ``type='direct'`` with
``mode='passthrough'`` (macvtap "passthru" mode). All other ``mode='passthrough'`` (macvtap "passthru" mode) and, :since:`since 11.0.0`,
connection types, including standard linux bridges and libvirt's own virtual standard linux bridges. All other connection types, including libvirt's own
networks, **do not** support it. 802.1Qbh (vn-link) and 802.1Qbg (VEPA) switches virtual networks, **do not** support it. 802.1Qbh (vn-link) and 802.1Qbg (VEPA)
provide their own way (outside of libvirt) to tag guest traffic onto a specific switches provide their own way (outside of libvirt) to tag guest traffic onto a
VLAN. Each tag is given in a separate ``<tag>`` subelement of ``<vlan>`` (for specific VLAN. Each tag is given in a separate ``<tag>`` subelement of
example: ``<tag id='42'/>``). For VLAN trunking of multiple tags (which is ``<vlan>`` (for example: ``<tag id='42'/>``). For VLAN trunking of multiple
supported only on Open vSwitch connections), multiple ``<tag>`` subelements can tags (which is supported on Open vSwitch connections and standard linux
be specified, which implies that the user wants to do VLAN trunking on the bridges), multiple ``<tag>`` subelements can be specified, which implies that
interface for all the specified tags. In the case that VLAN trunking of a single the user wants to do VLAN trunking on the interface for all the specified tags.
tag is desired, the optional attribute ``trunk='yes'`` can be added to the In the case that VLAN trunking of a single tag is desired, the optional
toplevel ``<vlan>`` element to differentiate trunking of a single tag from attribute ``trunk='yes'`` can be added to the toplevel ``<vlan>`` element to
normal tagging. differentiate trunking of a single tag from normal tagging.
For network connections using Open vSwitch it is also possible to configure For network connections using Open vSwitch :since:`since 1.1.10` and standard
'native-tagged' and 'native-untagged' VLAN modes :since:`Since 1.1.0`. This is linux bridges :since:`since 11.0.0` it is also possible to configure
done with the optional ``nativeMode`` attribute on the ``<tag>`` subelement: 'native-tagged' and 'native-untagged' VLAN modes. This is done with the optional
``nativeMode`` may be set to 'tagged' or 'untagged'. The ``id`` attribute of the ``nativeMode`` attribute on the ``<tag>`` subelement: ``nativeMode`` may be set
``<tag>`` subelement containing ``nativeMode`` sets which VLAN is considered to to 'tagged' or 'untagged'. The ``id`` attribute of the ``<tag>`` subelement
be the "native" VLAN for this interface, and the ``nativeMode`` attribute containing ``nativeMode`` sets which VLAN is considered to be the "native" VLAN
determines whether or not traffic for that VLAN will be tagged. for this interface, and the ``nativeMode`` attribute determines whether or not
traffic for that VLAN will be tagged.
``<vlan>`` elements can also be specified in a ``<portgroup>`` element, as well ``<vlan>`` elements can also be specified in a ``<portgroup>`` element, as well
as directly in a domain's ``<interface>`` element. In the case that a vlan tag as directly in a domain's ``<interface>`` element. In the case that a vlan tag