<refsect1>
<title>Description</title>
- <para>Network link configuration is performed by the <literal>net_setup_link</literal>
+ <para>Network link configuration is performed by the <command>net_setup_link</command>
udev builtin.</para>
<para>The link files are read from the files located in the
system network directory <filename>/usr/lib/systemd/network</filename>,
- the volatile runtime network directory <filename>/run/systemd/network</filename>
+ the volatile runtime network directory <filename>/run/systemd/network</filename>,
and the local administration network directory <filename>/etc/systemd/network</filename>.
Link files must have the extension <filename>.link</filename>; other extensions are ignored.
All link files are collectively sorted and processed in lexical order,
<literal>[Link]</literal> section specifying how the device should be
configured. The first (in lexical order) of the link files that matches
a given device is applied.</para>
+ </refsect1>
+
+ <refsect1>
+ <title>[Match] Section Options</title>
<para>A link file is said to match a device if each of the entries in the
<literal>[Match]</literal> section matches, or if the section is empty.
<para>The hardware address.</para>
</listitem>
</varlistentry>
+ <varlistentry>
+ <term><varname>OriginalName=</varname></term>
+ <listitem>
+ <para>The device name, as exposed by the udev
+ property "INTERFACE". May contain shell style
+ globs. This can not be used to match on names
+ that have already been changed from userspace.
+ Caution is adviced when matching on
+ kernel-assigned names, as they are known to
+ be unstable between reboots.</para>
+ </listitem>
+ </varlistentry>
<varlistentry>
<term><varname>Path=</varname></term>
<listitem>
- <para>The persistent path, as exposed by the
- udev property <literal>ID_PATH</literal>. May
- contain shell style globs.</para>
- </listitem>
+ <para>The persistent path, as exposed by the
+ udev property <literal>ID_PATH</literal>. May
+ contain shell style globs.</para>
+ </listitem>
</varlistentry>
<varlistentry>
<term><varname>Driver=</varname></term>
<listitem>
<para>The driver currently bound to the device,
as exposed by the udev property <literal>DRIVER</literal>
- of its parent device, or if that is not set the
+ of its parent device, or if that is not set, the
driver as exposed by <literal>ethtool -i</literal>
of the device itself.</para>
</listitem>
</varlistentry>
</variablelist>
+ </refsect1>
+
+ <refsect1>
+ <title>[Link] Section Options</title>
+
<para>The <literal>[Link]</literal> section accepts the following
keys:</para>
<listitem>
<para>If the hardware has a persistent
MAC address, as most hardware should,
- and this is used by the kernel, nothing
+ and if it is used by the kernel, nothing
is done. Otherwise, a new MAC address
is generated which is guaranteed to be
the same on every boot for the given
be set. <literal>NamePolicy</literal> may be
disabled by specifying
<literal>net.ifnames=0</literal> on the kernel
- commandline. Each of the policies may fail, and
+ command line. Each of the policies may fail, and
the first successful one is used. The name is
not set directly, but is exported to udev as
the property <literal>ID_NET_NAME</literal>,
which is, by default, used by a udev rule to set
- <literal>NAME</literal>. The available policies
- are:</para>
+ <literal>NAME</literal>. If the name has already
+ been set by userspace, no renaming is performed.
+ The available policies are:</para>
<variablelist>
+ <varlistentry>
+ <term><literal>kernel</literal></term>
+ <listitem>
+ <para>If the kernel claims that the name it
+ has set for a device is predictable, then
+ no renaming is performed.
+ </para>
+ </listitem>
+ </varlistentry>
<varlistentry>
<term><literal>database</literal></term>
<listitem>
<para>The name is set based on entries in
the udev's Hardware Database with the key
- <literal>ID_NET_NAME_FROM_DATABASE</literal>
- .</para>
+ <literal>ID_NET_NAME_FROM_DATABASE</literal>.
+ </para>
</listitem>
</varlistentry>
<varlistentry>
<listitem>
<para>The name is set based on information given by
the firmware for on-board devices, as exported by
- the udev property <literal>ID_NET_NAME_ONBOARD</literal>
- .</para>
+ the udev property <literal>ID_NET_NAME_ONBOARD</literal>.
+ </para>
</listitem>
</varlistentry>
<varlistentry>
<listitem>
<para>The name is set based on information given by
the firmware for hot-plug devices, as exported by
- the udev property <literal>ID_NET_NAME_SLOT</literal>
- .</para>
+ the udev property <literal>ID_NET_NAME_SLOT</literal>.
+ </para>
</listitem>
</varlistentry>
<varlistentry>
<varlistentry>
<term><literal>magic</literal></term>
<listitem>
- <para>Wake on receipt of a magic packet
+ <para>Wake on receipt of a magic packet.
</para>
</listitem>
</varlistentry>