Index · Directives · Python · libudev · gudev systemd 214

Name

systemd.netdev — Virtual Network Device configuration

Synopsis

netdev.netdev

Description

Network setup is performed by systemd-networkd(8).

Virtual Network Device files must have the extension .netdev; other extensions are ignored. Virtual network devices are created as soon as networkd is started.

The .netdev files are read from the files located in the system network directory /usr/lib/systemd/network, the volatile runtime network directory /run/systemd/network and the local administration network directory /etc/systemd/network. All configuration files are collectively sorted and processed in lexical order, regardless of the directories in which they live. However, files with identical filenames replace each other. Files in /etc have the highest priority, files in /run take precedence over files with the same name in /usr/lib. This can be used to override a system-supplied configuration file with a local file if needed; a symlink in /etc with the same name as a configuration file in /usr/lib, pointing to /dev/null, disables the configuration file entirely.

A virtual network device is only created if the "[Match]" section matches the current environment, or if the section is empty. The following keys are accepted:

Host=

Matches against the hostname or machine ID of the host. See "ConditionHost=" in systemd.unit(5) for details.

Virtualization=

Checks whether the system is executed in a virtualized environment and optionally test whether it is a specific implementation. See "ConditionVirtualization=" in systemd.unit(5) for details.

KernelCommandLine=

Checks whether a specific kernel command line option is set (or if prefixed with the exclamation mark unset). See "ConditionKernelCommandLine=" in systemd.unit(5) for details.

Architecture=

Checks whether the system is running on a specific architecture. See "ConditionArchitecture=" in systemd.unit(5) for details.

The "[NetDev]" section accepts the following keys:

Name=

The interface name used when creating the netdev. This option is compulsory.

Kind=

The netdev kind. Currently, "bridge", "bond", "vlan" and "macvlan" are supported. This option is compulsory.

The "[VLAN]" section only applies for netdevs of kind "vlan", and accepts the following key:

Id=

The VLAN ID to use. An integer in the range 0–4094. This option is compulsory.

The "[MACVLAN]" section only applies for netdevs of kind "macvlan", and accepts the following key:

Mode=

The MACVLAN mode to use. The supported options are "private", "vepa", "bridge" and "passthru".

Example

Example 1. /etc/systemd/network/bridge.netdev

[NetDev]
Name=bridge0
Kind=bridge

Example 2. /etc/systemd/network/vlan1.netdev

[Match]
Virtualization=no

[NetDev]
Name=vlan1
Kind=vlan

[VLAN]
Id=1

See Also

systemd(1), systemd-networkd(8), systemd.network(5)