Common properties for physical device types

Common properties for physical device types

match (mapping)

This selects a subset of available physical devices by various hardware
properties. The following configuration will then apply to all matching
devices, as soon as they appear. All specified properties must match.

name (scalar)

Current interface name. Globs are supported, and the primary use case
for matching on names, as selecting one fixed name can be more easily
achieved with having no match: at all and just using the ID (see
above).
(NetworkManager: as of v1.14.0)

macaddress (scalar)

Device’s MAC address in the form “XX:XX:XX:XX:XX:XX”. Globs are not
allowed.

driver (scalar or sequence of scalars) – sequence since 0.104

Kernel driver name, corresponding to the DRIVER udev property.
A sequence of globs is supported, any of which must match.
Matching on driver is only supported with networkd.

Examples:

  • all cards on second PCI bus:
match:
  name: enp2*
  • fixed MAC address:
match:
  macaddress: 11:22:33:AA:BB:FF
  • first card of driver ixgbe:
match:
  driver: ixgbe
  name: en*s0
  • first card with a driver matching bcmgenet or smsc*:
match:
  driver: ["bcmgenet", "smsc*"]
  name: en*

set-name (scalar)

When matching on unique properties such as path or MAC, or with additional
assumptions such as “there will only ever be one wifi device”,
match rules can be written so that they only match one device. Then this
property can be used to give that device a more specific/desirable/nicer
name than the default from udev’s ifnames. Any additional device that
satisfies the match rules will then fail to get renamed and keep the
original kernel name (and dmesg will show an error).

wakeonlan (bool)

Enable wake on LAN. Off by default.

Note: This will not work reliably for devices matched by name
only and rendered by networkd, due to interactions with device
renaming in udev. Match devices by MAC when setting wake on LAN.

emit-lldp (bool) – since 0.99

(networkd backend only) Whether to emit LLDP packets. Off by default.

receive-checksum-offload (bool) – since 0.104

(networkd backend only) If set to true, the hardware offload for
checksumming of ingress network packets is enabled. When unset,
the kernel’s default will be used.

transmit-checksum-offload (bool) – since 0.104

(networkd backend only) If set to true, the hardware offload for
checksumming of egress network packets is enabled. When unset,
the kernel’s default will be used.

tcp-segmentation-offload (bool) – since 0.104

(networkd backend only) If set to true, the TCP Segmentation
Offload (TSO) is enabled. When unset, the kernel’s default will
be used.

tcp6-segmentation-offload (bool) – since 0.104

(networkd backend only) If set to true, the TCP6 Segmentation
Offload (tx-tcp6-segmentation) is enabled. When unset, the
kernel’s default will be used.

generic-segmentation-offload (bool) – since 0.104

(networkd backend only) If set to true, the Generic Segmentation
Offload (GSO) is enabled. When unset, the kernel’s default will
be used.

generic-receive-offload (bool) – since 0.104

(networkd backend only) If set to true, the Generic Receive
Offload (GRO) is enabled. When unset, the kernel’s default will
be used.

large-receive-offload (bool) – since 0.104

(networkd backend only) If set to true, the Generic Receive
Offload (GRO) is enabled. When unset, the kernel’s default will
be used.

openvswitch (mapping) – since 0.100

This provides additional configuration for the network device for openvswitch.
If openvswitch is not available on the system, netplan treats the presence of
openvswitch configuration as an error.

Any supported network device that is declared with the openvswitch mapping
(or any bond/bridge that includes an interface with an openvswitch configuration)
will be created in openvswitch instead of the defined renderer.
In the case of a vlan definition declared the same way, netplan will create
a fake VLAN bridge in openvswitch with the requested vlan properties.

external-ids (mapping) – since 0.100

Passed-through directly to OpenVSwitch

other-config (mapping) – since 0.100

Passed-through directly to OpenVSwitch

lacp (scalar) – since 0.100

Valid for bond interfaces. Accepts active, passive or off (the default).

fail-mode (scalar) – since 0.100

Valid for bridge interfaces. Accepts secure or standalone (the default).

mcast-snooping (bool) – since 0.100

Valid for bridge interfaces. False by default.

protocols (sequence of scalars) – since 0.100

Valid for bridge interfaces or the network section. List of protocols to be used when
negotiating a connection with the controller. Accepts OpenFlow10, OpenFlow11,
OpenFlow12, OpenFlow13, OpenFlow14, OpenFlow15 and OpenFlow16.

rstp (bool) – since 0.100

Valid for bridge interfaces. False by default.

controller (mapping) – since 0.100

Valid for bridge interfaces. Specify an external OpenFlow controller.

addresses (sequence of scalars)

Set the list of addresses to use for the controller targets. The
syntax of these addresses is as defined in ovs-vsctl(8). Example:
addresses: [tcp:127.0.0.1:6653, "ssl:[fe80::1234%eth0]:6653"]

connection-mode (scalar)

Set the connection mode for the controller. Supported options are
in-band and out-of-band. The default is in-band.

ports (sequence of sequence of scalars) – since 0.100

OpenvSwitch patch ports. Each port is declared as a pair of names
which can be referenced as interfaces in dependent virtual devices
(bonds, bridges).

Example:

openvswitch:
  ports:
    - [patch0-1, patch1-0]

ssl (mapping) – since 0.100

Valid for global openvswitch settings. Options for configuring SSL
server endpoint for the switch.

ca-cert (scalar)

Path to a file containing the CA certificate to be used.

certificate (scalar)

Path to a file containing the server certificate.

private-key (scalar)

Path to a file containing the private key for the server.