<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.
<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
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>