Skip to content

Documentation: systemd-networkd bridge configuration for KVM VM networking #911

@ni8towl

Description

@ni8towl

Summary

SEAPATH uses systemd-networkd for network management. This is the correct choice for a deterministic RT platform. However, every generic KVM VM deployment guide (including vendor manuals from ABB and other protection relay vendors) assumes NetworkManager and provides nmcli commands for bridge configuration.

An engineer deploying a KVM VM on SEAPATH and following any of these guides will find that nmcli is not available and will need to translate the bridge configuration to systemd-networkd's .network and .netdev file format — a non-trivial translation for someone unfamiliar with systemd-networkd.

This is a documentation gap, not a bug. SEAPATH would benefit from a "KVM VM Networking on SEAPATH" section in the platform documentation.

Suggested Documentation Content

Creating a VM management bridge

The correct approach requires three files:

# /etc/systemd/network/10-mgmt-bridge.netdev
[NetDev]
Name=mgmt-bridge
Kind=bridge
[Bridge]
STP=false

# /etc/systemd/network/10-mgmt-bridge.network
[Match]
Name=mgmt-bridge
[Network]
LinkLocalAddressing=no

# /etc/systemd/network/00-enp5s0-bridge.network
[Match]
Name=enp5s0
[Network]
Bridge=mgmt-bridge

Important: Match precedence

If a generic .network file with Name=e* already exists (e.g. 00-init-dhcp.network), the interface-specific file takes precedence because specificity of the [Match] section takes precedence over filename ordering — a file matching Name=enp5s0 wins over Name=e* regardless of filename prefix. This should be documented clearly as it is counterintuitive.

Suggested documentation sections

  • SEAPATH uses systemd-networkd — nmcli and netplan commands from generic guides do not apply
  • How to create a VM management bridge using .network and .netdev files
  • The precedence rules for systemd-networkd network file matching
  • How to verify: networkctl status, ip link show master <bridge>

Environment

  • SEAPATH Debian standalone, kernel 6.1.0-41-rt-amd64
  • systemd-networkd active, NetworkManager inactive
  • Discovered during ABB vSSC600 SW v1.5.1 deployment

Reported by @ni8towl

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions