mirror of
https://github.com/systemd/systemd.git
synced 2024-11-23 02:03:37 +08:00
489671d225
Closes #23159.
415 lines
19 KiB
XML
415 lines
19 KiB
XML
<?xml version='1.0'?>
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
|
|
|
<!--
|
|
SPDX-License-Identifier: LGPL-2.1-or-later
|
|
|
|
Copyright © 2014 Vinay Kulkarni
|
|
-->
|
|
|
|
<refentry id="networkd.conf" conditional='ENABLE_NETWORKD'
|
|
xmlns:xi="http://www.w3.org/2001/XInclude">
|
|
<refentryinfo>
|
|
<title>networkd.conf</title>
|
|
<productname>systemd</productname>
|
|
</refentryinfo>
|
|
|
|
<refmeta>
|
|
<refentrytitle>networkd.conf</refentrytitle>
|
|
<manvolnum>5</manvolnum>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>networkd.conf</refname>
|
|
<refname>networkd.conf.d</refname>
|
|
<refpurpose>Global Network configuration files</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<para><simplelist>
|
|
<member><filename>/etc/systemd/networkd.conf</filename></member>
|
|
<member><filename>/run/systemd/networkd.conf</filename></member>
|
|
<member><filename>/usr/local/lib/systemd/networkd.conf</filename></member>
|
|
<member><filename>/usr/lib/systemd/networkd.conf</filename></member>
|
|
<member><filename>/etc/systemd/networkd.conf.d/*.conf</filename></member>
|
|
<member><filename>/run/systemd/networkd.conf.d/*.conf</filename></member>
|
|
<member><filename>/usr/local/lib/systemd/networkd.conf.d/*.conf</filename></member>
|
|
<member><filename>/usr/lib/systemd/networkd.conf.d/*.conf</filename></member>
|
|
</simplelist></para>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
|
|
<para>These configuration files control global network parameters.</para>
|
|
</refsect1>
|
|
|
|
<xi:include href="standard-conf.xml" xpointer="main-conf" />
|
|
|
|
<refsect1>
|
|
<title>[Network] Section Options</title>
|
|
|
|
<para>The following options are available in the [Network] section:</para>
|
|
|
|
<variablelist class='network-directives'>
|
|
<varlistentry>
|
|
<term><varname>SpeedMeter=</varname></term>
|
|
<listitem><para>Takes a boolean. If set to yes, then <command>systemd-networkd</command>
|
|
measures the traffic of each interface, and
|
|
<command>networkctl status <replaceable>INTERFACE</replaceable></command> shows the measured speed.
|
|
Defaults to no.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v244"/></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>SpeedMeterIntervalSec=</varname></term>
|
|
<listitem><para>Specifies the time interval to calculate the traffic speed of each interface.
|
|
If <varname>SpeedMeter=no</varname>, the value is ignored. Defaults to 10sec.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v244"/></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>ManageForeignRoutingPolicyRules=</varname></term>
|
|
<listitem><para>A boolean. When true, <command>systemd-networkd</command> will remove rules
|
|
that are not configured in .network files (except for rules with protocol
|
|
<literal>kernel</literal>). When false, it will not remove any foreign rules, keeping them even
|
|
if they are not configured in a .network file. Defaults to yes.
|
|
</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v249"/></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>ManageForeignRoutes=</varname></term>
|
|
<listitem><para>A boolean. When true, <command>systemd-networkd</command> will remove routes
|
|
that are not configured in .network files (except for routes with protocol
|
|
<literal>kernel</literal>, <literal>dhcp</literal> when <varname>KeepConfiguration=</varname>
|
|
is true or <literal>dhcp</literal>, and <literal>static</literal> when
|
|
<varname>KeepConfiguration=</varname> is true or <literal>static</literal>). When false, it will
|
|
not remove any foreign routes, keeping them even if they are not configured in a .network file.
|
|
Defaults to yes.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v246"/></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>ManageForeignNextHops=</varname></term>
|
|
<listitem><para>A boolean. When true, <command>systemd-networkd</command> will remove nexthops
|
|
that are not configured in .network files (except for routes with protocol
|
|
<literal>kernel</literal>). When false, it will
|
|
not remove any foreign nexthops, keeping them even if they are not configured in a .network file.
|
|
Defaults to yes.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v256"/></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>RouteTable=</varname></term>
|
|
<listitem><para>Defines the route table name. Takes a whitespace-separated list of the pairs of
|
|
route table name and number. The route table name and number in each pair are separated with a
|
|
colon, i.e., <literal><replaceable>name</replaceable>:<replaceable>number</replaceable></literal>.
|
|
The route table name must not be <literal>default</literal>, <literal>main</literal>, or
|
|
<literal>local</literal>, as these route table names are predefined with route table number 253,
|
|
254, and 255, respectively. The route table number must be an integer in the range 1…4294967295,
|
|
except for predefined numbers 253, 254, and 255. This setting can be specified multiple times.
|
|
If an empty string is specified, then the list specified earlier are cleared. Defaults to unset.
|
|
</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v248"/></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>IPv4Forwarding=</varname></term>
|
|
<listitem>
|
|
<para>Configures IPv4 packet forwarding for the system. Takes a boolean value. This controls the
|
|
<filename>net.ipv4.conf.default.forwarding</filename> and
|
|
<filename>net.ipv4.conf.all.forwarding</filename>sysctl options. See
|
|
<ulink url="https://docs.kernel.org/networking/ip-sysctl.html">IP Sysctl</ulink>
|
|
for more details about the sysctl options. Defaults to unset and the sysctl options will not be
|
|
changed.</para>
|
|
|
|
<para>If an interface is configured with a .network file that enables <varname>IPMasquerade=</varname>
|
|
for IPv4 (that is, <literal>ipv4</literal> or <literal>both</literal>), this setting is implied
|
|
unless explicitly specified. See <varname>IPMasquerade=</varname> in
|
|
<citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
|
for more details.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v256"/>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>IPv6Forwarding=</varname></term>
|
|
<listitem>
|
|
<para>Configures IPv6 packet forwarding for the system. Takes a boolean value. This controls the
|
|
<filename>net.ipv6.conf.default.forwarding</filename> and
|
|
<filename>net.ipv6.conf.all.forwarding</filename> sysctl options. See
|
|
<ulink url="https://docs.kernel.org/networking/ip-sysctl.html">IP Sysctl</ulink>
|
|
for more details about the sysctl options. Defaults to unset and the sysctl options will not be
|
|
changed.</para>
|
|
|
|
<para>If an interface is configured with a .network file that enables <varname>IPMasquerade=</varname>
|
|
for IPv6 (that is, <literal>ipv6</literal> or <literal>both</literal>), this setting is implied
|
|
unless explicitly specified. See <varname>IPMasquerade=</varname> in
|
|
<citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
|
for more details.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v256"/>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>IPv6PrivacyExtensions=</varname></term>
|
|
<listitem>
|
|
<para>Specifies the default value for per-network <varname>IPv6PrivacyExtensions=</varname>.
|
|
Takes a boolean or the special values <literal>prefer-public</literal> and
|
|
<literal>kernel</literal>. See for details in
|
|
<citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
|
Defaults to <literal>no</literal>.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v254"/>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>UseDomains=</varname></term>
|
|
<listitem>
|
|
<para>Specifies the network- and protocol-independent default value for the same settings in
|
|
[IPv6AcceptRA], [DHCPv4], and [DHCPv6] sections below. Takes a boolean, or the special value
|
|
<option>route</option>. See the same setting in
|
|
<citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
|
Defaults to <literal>no</literal>.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v256"/>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>[IPv6AcceptRA] Section Options</title>
|
|
|
|
<para>This section configures the default setting of the Neighbor Discovery. The following options are
|
|
available in the [IPv6AcceptRA] section:</para>
|
|
|
|
<variablelist class='network-directives'>
|
|
<varlistentry>
|
|
<term><varname>UseDomains=</varname></term>
|
|
<listitem>
|
|
<para>Specifies the network-independent default value for the same setting in the [IPv6AcceptRA]
|
|
section in
|
|
<citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
|
Takes a boolean, or the special value <option>route</option>. When unspecified, the value specified
|
|
in the [Network] section in
|
|
<citerefentry><refentrytitle>networkd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
|
which defaults to <literal>no</literal>, will be used.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v256"/>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>[IPv6AddressLabel] Section Options</title>
|
|
|
|
<para>An [IPv6AddressLabel] section accepts the following keys. Specify multiple [IPv6AddressLabel]
|
|
sections to configure multiple address labels. IPv6 address labels are used for address selection.
|
|
See <ulink url="https://tools.ietf.org/html/rfc3484">RFC 3484</ulink>. Precedence is managed by
|
|
userspace, and only the label itself is stored in the kernel.</para>
|
|
|
|
<variablelist class='network-directives'>
|
|
<varlistentry>
|
|
<term><varname>Label=</varname></term>
|
|
<listitem>
|
|
<para>The label for the prefix, an unsigned integer in the range 0…4294967294. 0xffffffff is
|
|
reserved. This setting is mandatory.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v257"/>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>Prefix=</varname></term>
|
|
<listitem>
|
|
<para>IPv6 prefix is an address with a prefix length, separated by a slash
|
|
<literal>/</literal> character. This setting is mandatory.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v257"/>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>[DHCPv4] Section Options</title>
|
|
|
|
<para>This section configures the DHCP Unique Identifier (DUID) value used by DHCP protocol. DHCPv4
|
|
client protocol sends IAID and DUID to the DHCP server when acquiring a dynamic IPv4 address if
|
|
<option>ClientIdentifier=duid</option>. IAID and DUID allows a DHCP server to uniquely identify the
|
|
machine and the interface requesting a DHCP IP address. To configure IAID and ClientIdentifier, see
|
|
<citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
|
</para>
|
|
|
|
<para>The following options are understood:</para>
|
|
|
|
<variablelist class='network-directives'>
|
|
<varlistentry>
|
|
<term><varname>DUIDType=</varname></term>
|
|
<listitem><para>Specifies how the DUID should be generated. See
|
|
<ulink url="https://tools.ietf.org/html/rfc3315#section-9">RFC 3315</ulink>
|
|
for a description of all the options.</para>
|
|
|
|
<para>This takes an integer in the range 0…65535, or one of the following string values:
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>vendor</option></term>
|
|
<listitem><para>If <literal>DUIDType=vendor</literal>, then the DUID value will be generated using
|
|
<literal>43793</literal> as the vendor identifier (systemd) and hashed contents of
|
|
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
|
This is the default if <varname>DUIDType=</varname> is not specified.
|
|
</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v230"/></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>uuid</option></term>
|
|
<listitem><para>If <literal>DUIDType=uuid</literal>, and <varname>DUIDRawData=</varname> is not set,
|
|
then the product UUID is used as a DUID value. If a system does not have valid product UUID, then
|
|
an application-specific
|
|
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
|
is used as a DUID value. About the application-specific machine ID, see
|
|
<citerefentry><refentrytitle>sd_id128_get_machine_app_specific</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
|
</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v230"/></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>link-layer-time[:<replaceable>TIME</replaceable>]</option></term>
|
|
<term><option>link-layer</option></term>
|
|
<listitem><para>If <literal>link-layer-time</literal> or <literal>link-layer</literal> is specified,
|
|
then the MAC address of the interface is used as a DUID value. The value <literal>link-layer-time</literal>
|
|
can take additional time value after a colon, e.g. <literal>link-layer-time:2018-01-23 12:34:56 UTC</literal>.
|
|
The default time value is <literal>2000-01-01 00:00:00 UTC</literal>.
|
|
</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v240"/></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
|
|
<para>In all cases, <varname>DUIDRawData=</varname> can be used to override the
|
|
actual DUID value that is used.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v230"/></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>DUIDRawData=</varname></term>
|
|
<listitem><para>Specifies the DHCP DUID value as a single newline-terminated, hexadecimal string, with each
|
|
byte separated by <literal>:</literal>. The DUID that is sent is composed of the DUID type specified by
|
|
<varname>DUIDType=</varname> and the value configured here.</para>
|
|
|
|
<para>The DUID value specified here overrides the DUID that
|
|
<citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
|
generates from the machine ID. To configure DUID per-network, see
|
|
<citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
|
The configured DHCP DUID should conform to the specification in
|
|
<ulink url="http://tools.ietf.org/html/rfc3315#section-9">RFC 3315</ulink>,
|
|
<ulink url="http://tools.ietf.org/html/rfc6355">RFC 6355</ulink>. To configure IAID, see
|
|
<citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum>
|
|
</citerefentry>.</para>
|
|
|
|
<example>
|
|
<title>A <option>DUIDType=vendor</option> with a custom value</title>
|
|
|
|
<programlisting>DUIDType=vendor
|
|
DUIDRawData=00:00:ab:11:f9:2a:c2:77:29:f9:5c:00</programlisting>
|
|
|
|
<para>This specifies a 14 byte DUID, with the type DUID-EN (<literal>00:02</literal>), enterprise number
|
|
43793 (<literal>00:00:ab:11</literal>), and identifier value <literal>f9:2a:c2:77:29:f9:5c:00</literal>.
|
|
</para>
|
|
</example>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v230"/>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>UseDomains=</varname></term>
|
|
<listitem>
|
|
<para>Same as the one in the [IPv6AcceptRA] section, but applied for DHCPv4 protocol.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v256"/>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>[DHCPv6] Section Options</title>
|
|
|
|
<para>This section configures the DHCP Unique Identifier (DUID) value used by DHCPv6 protocol.
|
|
DHCPv6 client protocol sends the DHCP Unique Identifier and the interface Identity Association
|
|
Identifier (IAID) to a DHCPv6 server when acquiring a dynamic IPv6 address. IAID and DUID allows a
|
|
DHCPv6 server to uniquely identify the machine and the interface requesting a DHCP IP address. To
|
|
configure IAID, see
|
|
<citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
|
</para>
|
|
|
|
<para>The following options are understood:</para>
|
|
|
|
<variablelist class='network-directives'>
|
|
<varlistentry>
|
|
<term><varname>DUIDType=</varname></term>
|
|
<term><varname>DUIDRawData=</varname></term>
|
|
<listitem><para>As in the [DHCPv4] section.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v249"/></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>UseDomains=</varname></term>
|
|
<listitem><para>As in the [DHCPv4] section.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v256"/></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>[DHCPServer] Section Options</title>
|
|
|
|
<para>This section configures the default setting of the DHCP server. The following options are available
|
|
in the [DHCPServer] section:</para>
|
|
|
|
<variablelist class='network-directives'>
|
|
<varlistentry>
|
|
<term><varname>UseDomains=</varname></term>
|
|
<listitem>
|
|
<para>Same as the one in the [IPv6AcceptRA] section, but applied for DHCPv4 protocol.</para>
|
|
|
|
<xi:include href="version-info.xml" xpointer="v256"/>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>See Also</title>
|
|
<para><simplelist type="inline">
|
|
<member><citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
|
<member><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></member>
|
|
<member><citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></member>
|
|
<member><citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry></member>
|
|
<member><citerefentry><refentrytitle>sd_id128_get_machine_app_specific</refentrytitle><manvolnum>3</manvolnum></citerefentry></member>
|
|
</simplelist></para>
|
|
</refsect1>
|
|
|
|
</refentry>
|