1
0
mirror of https://github.com/systemd/systemd synced 2026-03-15 17:44:49 +01:00

Compare commits

..

No commits in common. "4301cb32f2513a0187951d09ebc108a4179a0877" and "893e3ffe7d25b182713998a42dbcd4d200ab6fcf" have entirely different histories.

3 changed files with 350 additions and 369 deletions

View File

@ -1616,25 +1616,86 @@ IPv6Token=prefixstable:2002:da8:1::</programlisting></para>
<varname>DHCP=</varname> setting described above:</para>
<variablelist class='network-directives'>
<!-- DHCP packet contents -->
<varlistentry>
<term><varname>SendHostname=</varname></term>
<term><varname>UseDNS=</varname></term>
<listitem>
<para>When true (the default), the machine's hostname (or the value specified with
<varname>Hostname=</varname> below) will be sent to the DHCP server. Note that the hostname must
consist only of 7-bit ASCII lower-case characters and no spaces or dots, and be formatted as a
valid DNS domain name. Otherwise, the hostname is not sent even if this option is true.</para>
<para>When true (the default), the DNS servers received from the DHCP server will be used.</para>
<para>This corresponds to the <option>nameserver</option>
option in <citerefentry
project='man-pages'><refentrytitle>resolv.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>RoutesToDNS=</varname></term>
<listitem>
<para>When true, the routes to the DNS servers received from the DHCP server will be
configured. When <varname>UseDNS=</varname> is disabled, this setting is ignored.
Defaults to true.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseNTP=</varname></term>
<listitem>
<para>When true (the default), the NTP servers received from the DHCP server will be used by
<filename>systemd-timesyncd.service</filename>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>RoutesToNTP=</varname></term>
<listitem>
<para>When true, the routes to the NTP servers received from the DHCP server will be
configured. When <varname>UseNTP=</varname> is disabled, this setting is ignored.
Defaults to true.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseSIP=</varname></term>
<listitem>
<para>When true (the default), the SIP servers received from the DHCP server will be collected
and made available to client programs.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>Hostname=</varname></term>
<term><varname>UseMTU=</varname></term>
<listitem>
<para>Use this value for the hostname which is sent to the DHCP server, instead of machine's hostname.
Note that the specified hostname must consist only of 7-bit ASCII lower-case characters and
no spaces or dots, and be formatted as a valid DNS domain name.</para>
<para>When true, the interface maximum transmission unit
from the DHCP server will be used on the current link.
If <varname>MTUBytes=</varname> is set, then this setting is ignored.
Defaults to false.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>Anonymize=</varname></term>
<listitem>
<para>Takes a boolean. When true, the options sent to the DHCP server will follow the
<ulink url="https://tools.ietf.org/html/rfc7844">RFC 7844</ulink> (Anonymity Profiles for
DHCP Clients) to minimize disclosure of identifying information. Defaults to false.</para>
<para>This option should only be set to true when <varname>MACAddressPolicy=</varname> is
set to <literal>random</literal> (see
<citerefentry project='man-pages'><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>).
</para>
<para>When true, <varname>SendHostname=</varname>, <varname>ClientIdentifier=</varname>,
<varname>VendorClassIdentifier=</varname>, <varname>UserClass=</varname>,
<varname>RequestOptions=</varname>, <varname>SendOption=</varname>,
<varname>SendVendorOption=</varname>, and <varname>MUDURL=</varname> are ignored.</para>
<para>With this option enabled DHCP requests will mimic those generated by Microsoft
Windows, in order to reduce the ability to fingerprint and recognize installations. This
means DHCP request sizes will grow and lease data will be more comprehensive than normally,
though most of the requested data is not actually used.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>SendHostname=</varname></term>
<listitem>
<para>When true (the default), the machine's hostname will be sent to the DHCP server.
Note that the machine's hostname must consist only of 7-bit ASCII lower-case characters and
no spaces or dots, and be formatted as a valid DNS domain name. Otherwise, the hostname is not
sent even if this is set to true.</para>
</listitem>
</varlistentry>
@ -1654,15 +1715,74 @@ IPv6Token=prefixstable:2002:da8:1::</programlisting></para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseHostname=</varname></term>
<listitem>
<para>When true (the default), the hostname received from
the DHCP server will be set as the transient hostname of the system.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>Hostname=</varname></term>
<listitem>
<para>Use this value for the hostname which is sent to the DHCP server, instead of machine's hostname.
Note that the specified hostname must consist only of 7-bit ASCII lower-case characters and
no spaces or dots, and be formatted as a valid DNS domain name.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseDomains=</varname></term>
<listitem>
<para>Takes a boolean, or the special value <literal>route</literal>. When true, the domain name
received from the DHCP server will be used as DNS search domain over this link, similar to the effect of
the <option>Domains=</option> setting. If set to <literal>route</literal>, the domain name received from
the DHCP server will be used for routing DNS queries only, but not for searching, similar to the effect of
the <option>Domains=</option> setting when the argument is prefixed with <literal>~</literal>. Defaults to
false.</para>
<para>It is recommended to enable this option only on trusted networks, as setting this affects resolution
of all hostnames, in particular of single-label names. It is generally safer to use the supplied domain
only as routing domain, rather than as search domain, in order to not have it affect local resolution of
single-label names.</para>
<para>When set to true, this setting corresponds to the <option>domain</option> option in <citerefentry
project='man-pages'><refentrytitle>resolv.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseRoutes=</varname></term>
<listitem>
<para>When true (the default), the static routes will be requested from the DHCP server and added to the
routing table with a metric of 1024, and a scope of "global", "link" or "host", depending on the route's
destination and gateway. If the destination is on the local host, e.g., 127.x.x.x, or the same as the
link's own address, the scope will be set to "host". Otherwise if the gateway is null (a direct route), a
"link" scope will be used. For anything else, scope defaults to "global".</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseGateway=</varname></term>
<listitem>
<para>When true, the gateway will be requested from the DHCP server and added to the routing table with a
metric of 1024, and a scope of "link". When unset, the value specified with <option>UseRoutes=</option>
is used.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseTimezone=</varname></term>
<listitem><para>When true, the timezone received from the
DHCP server will be set as timezone of the local
system. Defaults to <literal>no</literal>.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>ClientIdentifier=</varname></term>
<listitem>
<para>The DHCPv4 client identifier to use. Takes one of <option>mac</option>,
<option>duid</option> or <option>duid-only</option>. If set to <option>mac</option>, the
MAC address of the link is used. If set to <option>duid</option>, an RFC4361-compliant Client
ID, which is the combination of IAID and DUID (see below), is used. If set to
<option>duid-only</option>, only DUID is used, this may not be RFC compliant, but some setups
may require to use this. Defaults to <option>duid</option>.</para>
<para>The DHCPv4 client identifier to use. Takes one of <literal>mac</literal>, <literal>duid</literal> or <literal>duid-only</literal>.
If set to <literal>mac</literal>, the MAC address of the link is used.
If set to <literal>duid</literal>, an RFC4361-compliant Client ID, which is the combination of IAID and DUID (see below), is used.
If set to <literal>duid-only</literal>, only DUID is used, this may not be RFC compliant, but some setups may require to use this.
Defaults to <literal>duid</literal>.</para>
</listitem>
</varlistentry>
@ -1677,18 +1797,28 @@ IPv6Token=prefixstable:2002:da8:1::</programlisting></para>
<varlistentry>
<term><varname>UserClass=</varname></term>
<listitem>
<para>A DHCPv4 client can use UserClass option to identify the type or category of user or
applications it represents. The information contained in this option is a string that represents
the user class of which the client is a member. Each class sets an identifying string of
information to be used by the DHCP service to classify clients. Takes a whitespace-separated list
of strings.</para>
<para>A DHCPv4 client can use UserClass option to identify the type or category of user or applications
it represents. The information contained in this option is a string that represents the user class of which
the client is a member. Each class sets an identifying string of information to be used by the DHCP
service to classify clients. Takes a whitespace-separated list of strings.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>MaxAttempts=</varname></term>
<listitem>
<para>Specifies how many times the DHCPv4 client configuration should be attempted. Takes a
number or <literal>infinity</literal>. Defaults to <literal>infinity</literal>. Note that the
time between retries is increased exponentially, up to approximately one per minute, so the
network will not be overloaded even if this number is high. The default is suitable in most
circumstances.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>DUIDType=</varname></term>
<listitem>
<para>Override the global <varname>DUIDType=</varname> setting for this network. See
<para>Override the global <varname>DUIDType</varname> setting for this network. See
<citerefentry><refentrytitle>networkd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
for a description of possible values.</para>
</listitem>
@ -1697,7 +1827,7 @@ IPv6Token=prefixstable:2002:da8:1::</programlisting></para>
<varlistentry>
<term><varname>DUIDRawData=</varname></term>
<listitem>
<para>Override the global <varname>DUIDRawData=</varname> setting for this network. See
<para>Override the global <varname>DUIDRawData</varname> setting for this network. See
<citerefentry><refentrytitle>networkd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
for a description of possible values.</para>
</listitem>
@ -1706,32 +1836,97 @@ IPv6Token=prefixstable:2002:da8:1::</programlisting></para>
<varlistentry>
<term><varname>IAID=</varname></term>
<listitem>
<para>The DHCP Identity Association Identifier (IAID) for the interface, a 32-bit unsigned
integer.</para>
<para>The DHCP Identity Association Identifier (IAID) for the interface, a 32-bit unsigned integer.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>Anonymize=</varname></term>
<term><varname>RequestBroadcast=</varname></term>
<listitem>
<para>Takes a boolean. When true, the options sent to the DHCP server will follow the
<ulink url="https://tools.ietf.org/html/rfc7844">RFC 7844</ulink> (Anonymity Profiles for
DHCP Clients) to minimize disclosure of identifying information. Defaults to false.</para>
<para>Request the server to use broadcast messages before
the IP address has been configured. This is necessary for
devices that cannot receive RAW packets, or that cannot
receive packets at all before an IP address has been
configured. On the other hand, this must not be enabled on
networks where broadcasts are filtered out.</para>
</listitem>
</varlistentry>
<para>This option should only be set to true when <varname>MACAddressPolicy=</varname> is
set to <option>random</option> (see
<citerefentry project='man-pages'><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>).
<varlistentry>
<term><varname>RouteMetric=</varname></term>
<listitem>
<para>Set the routing metric for routes specified by the DHCP server. Takes an unsigned
integer in the range 0…4294967295. Defaults to 1024.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>RouteTable=<replaceable>num</replaceable></varname></term>
<listitem>
<para>The table identifier for DHCP routes (a number between 1 and 4294967295, or 0 to unset).
The table can be retrieved using <command>ip route show table <replaceable>num</replaceable></command>.
</para>
<para>When used in combination with <varname>VRF=</varname>, the
VRF's routing table is used when this parameter is not specified.
</para>
</listitem>
</varlistentry>
<para>When true, <varname>SendHostname=</varname>, <varname>ClientIdentifier=</varname>,
<varname>VendorClassIdentifier=</varname>, <varname>UserClass=</varname>,
<varname>RequestOptions=</varname>, <varname>SendOption=</varname>,
<varname>SendVendorOption=</varname>, and <varname>MUDURL=</varname> are ignored.</para>
<varlistentry>
<term><varname>RouteMTUBytes=</varname></term>
<listitem>
<para>Specifies the MTU for the DHCP routes. Please see the [Route] section for further details.</para>
</listitem>
</varlistentry>
<para>With this option enabled DHCP requests will mimic those generated by Microsoft
Windows, in order to reduce the ability to fingerprint and recognize installations. This
means DHCP request sizes will grow and lease data will be more comprehensive than normally,
though most of the requested data is not actually used.</para>
<varlistentry>
<term><varname>ListenPort=</varname></term>
<listitem>
<para>Allow setting custom port for the DHCP client to listen on.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>FallbackLeaseLifetimeSec=</varname></term>
<listitem>
<para>Allows to set DHCPv4 lease lifetime when DHCPv4 server does not send the lease lifetime.
Takes one of <literal>forever</literal> or <literal>infinity</literal> means that the address
never expires. Defaults to unset.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>SendRelease=</varname></term>
<listitem>
<para>When true, the DHCPv4 client sends a DHCP release packet when it stops.
Defaults to true.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>SendDecline=</varname></term>
<listitem>
<para>A boolean. When <literal>true</literal>, the DHCPv4 client receives the IP address from the
DHCP server. After a new IP is received, the DHCPv4 client performs IPv4 Duplicate Address
Detection. If duplicate use is detected, the DHCPv4 client rejects the IP by sending a
DHCPDECLINE packet and tries to obtain an IP address again. See <ulink
url="https://tools.ietf.org/html/rfc5227">RFC 5224</ulink>. Defaults to
<literal>unset</literal>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>DenyList=</varname></term>
<listitem>
<para>A whitespace-separated list of IPv4 addresses. DHCP offers from servers in the list are rejected. Note that
if <varname>AllowList=</varname> is configured then <varname>DenyList=</varname> is ignored.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>AllowList=</varname></term>
<listitem>
<para>A whitespace-separated list of IPv4 addresses. DHCP offers from servers in the list are accepted.</para>
</listitem>
</varlistentry>
@ -1774,223 +1969,6 @@ IPv6Token=prefixstable:2002:da8:1::</programlisting></para>
then all options specified earlier are cleared. Defaults to unset.</para>
</listitem>
</varlistentry>
<!-- How to use the DHCP lease -->
<varlistentry>
<term><varname>UseDNS=</varname></term>
<listitem>
<para>When true (the default), the DNS servers received from the DHCP server will be used.</para>
<para>This corresponds to the <option>nameserver</option>
option in <citerefentry
project='man-pages'><refentrytitle>resolv.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>RoutesToDNS=</varname></term>
<listitem>
<para>When true, the routes to the DNS servers received from the DHCP server will be
configured. When <varname>UseDNS=</varname> is disabled, this setting is ignored.
Defaults to true.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseNTP=</varname></term>
<listitem>
<para>When true (the default), the NTP servers received from the DHCP server will be used by
<filename>systemd-timesyncd.service</filename>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>RoutesToNTP=</varname></term>
<listitem>
<para>When true, the routes to the NTP servers received from the DHCP server will be
configured. When <varname>UseNTP=</varname> is disabled, this setting is ignored.
Defaults to true.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseSIP=</varname></term>
<listitem>
<para>When true (the default), the SIP servers received from the DHCP server will be collected
and made available to client programs.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseMTU=</varname></term>
<listitem>
<para>When true, the interface maximum transmission unit from the DHCP server will be used on the
current link. If <varname>MTUBytes=</varname> is set, then this setting is ignored. Defaults to
false.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseHostname=</varname></term>
<listitem>
<para>When true (the default), the hostname received from the DHCP server will be set as the
transient hostname of the system.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseDomains=</varname></term>
<listitem>
<para>Takes a boolean, or the special value <option>route</option>. When true, the domain name
received from the DHCP server will be used as DNS search domain over this link, similar to the
effect of the <option>Domains=</option> setting. If set to <option>route</option>, the domain
name received from the DHCP server will be used for routing DNS queries only, but not for
searching, similar to the effect of the <option>Domains=</option> setting when the argument is
prefixed with <literal>~</literal>. Defaults to false.</para>
<para>It is recommended to enable this option only on trusted networks, as setting this affects
resolution of all hostnames, in particular of single-label names. It is generally safer to use
the supplied domain only as routing domain, rather than as search domain, in order to not have it
affect local resolution of single-label names.</para>
<para>When set to true, this setting corresponds to the <option>domain</option> option in
<citerefentry project='man-pages'><refentrytitle>resolv.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseRoutes=</varname></term>
<listitem>
<para>When true (the default), the static routes will be requested from the DHCP server and added
to the routing table with a metric of 1024, and a scope of <option>global</option>,
<option>link</option> or <option>host</option>, depending on the route's destination and
gateway. If the destination is on the local host, e.g., 127.x.x.x, or the same as the link's own
address, the scope will be set to <option>host</option>. Otherwise if the gateway is null (a
direct route), a <option>link</option> scope will be used. For anything else, scope defaults to
<option>global</option>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>RouteMetric=</varname></term>
<listitem>
<para>Set the routing metric for routes specified by the DHCP server. Takes an unsigned
integer in the range 0…4294967295. Defaults to 1024.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>RouteTable=<replaceable>num</replaceable></varname></term>
<listitem>
<para>The table identifier for DHCP routes (a number between 1 and 4294967295, or 0 to unset).
The table can be retrieved using <command>ip route show table <replaceable>num</replaceable></command>.
</para>
<para>When used in combination with <varname>VRF=</varname>, the
VRF's routing table is used when this parameter is not specified.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>RouteMTUBytes=</varname></term>
<listitem>
<para>Specifies the MTU for the DHCP routes. Please see the [Route] section for further details.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseGateway=</varname></term>
<listitem>
<para>When true, the gateway will be requested from the DHCP server and added to the routing
table with a metric of 1024, and a scope of <option>link</option>. When unset, the value specified
with <varname>UseRoutes=</varname> is used.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UseTimezone=</varname></term>
<listitem><para>When true, the timezone received from the DHCP server will be set as timezone of
the local system. Defaults to false.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>FallbackLeaseLifetimeSec=</varname></term>
<listitem>
<para>Allows to set DHCPv4 lease lifetime when DHCPv4 server does not send the lease lifetime.
Takes one of <literal>forever</literal> or <literal>infinity</literal> means that the address
never expires. Defaults to unset.</para>
</listitem>
</varlistentry>
<!-- How to communicate with the server -->
<varlistentry>
<term><varname>RequestBroadcast=</varname></term>
<listitem>
<para>Request the server to use broadcast messages before the IP address has been configured.
This is necessary for devices that cannot receive RAW packets, or that cannot receive packets at
all before an IP address has been configured. On the other hand, this must not be enabled on
networks where broadcasts are filtered out.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>MaxAttempts=</varname></term>
<listitem>
<para>Specifies how many times the DHCPv4 client configuration should be attempted. Takes a
number or <literal>infinity</literal>. Defaults to <literal>infinity</literal>. Note that the
time between retries is increased exponentially, up to approximately one per minute, so the
network will not be overloaded even if this number is high. The default is suitable in most
circumstances.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>ListenPort=</varname></term>
<listitem>
<para>Set the port from which the DHCP client packets originate.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>DenyList=</varname></term>
<listitem>
<para>A whitespace-separated list of IPv4 addresses. DHCP offers from servers in the list are
rejected. Note that if <varname>AllowList=</varname> is configured then
<varname>DenyList=</varname> is ignored.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>AllowList=</varname></term>
<listitem>
<para>A whitespace-separated list of IPv4 addresses. DHCP offers from servers in the list are
accepted.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>SendRelease=</varname></term>
<listitem>
<para>When true, the DHCPv4 client sends a DHCP release packet when it stops. Defaults to
true.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>SendDecline=</varname></term>
<listitem>
<para>A boolean. When <literal>true</literal>, the DHCPv4 client receives the IP address from the
DHCP server. After a new IP is received, the DHCPv4 client performs IPv4 Duplicate Address
Detection. If duplicate use is detected, the DHCPv4 client rejects the IP by sending a
<constant>DHCPDECLINE</constant> packet and tries to obtain an IP address again. See <ulink
url="https://tools.ietf.org/html/rfc5227">RFC 5224</ulink>. Defaults to
<literal>unset</literal>.</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
@ -2000,82 +1978,6 @@ IPv6Token=prefixstable:2002:da8:1::</programlisting></para>
<varname>DHCP=</varname> setting described above, or invoked by the IPv6 Router Advertisement:</para>
<variablelist class='network-directives'>
<!-- DHCP packet contents -->
<varlistentry>
<term><varname>MUDURL=</varname></term>
<term><varname>IAID=</varname></term>
<term><varname>DUIDType=</varname></term>
<term><varname>DUIDRawData=</varname></term>
<term><varname>RequestOptions=</varname></term>
<listitem>
<para>As in the [DHCPv4] section.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>SendOption=</varname></term>
<listitem>
<para>As in the [DHCPv4] section, however because DHCPv6 uses 16-bit fields to store option
numbers, the option number is an integer in the range 1…65536.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>SendVendorOption=</varname></term>
<listitem>
<para>Send an arbitrary vendor option in the DHCPv6 request. Takes an enterprise identifier, DHCP
option number, data type, and data separated with a colon (<literal><replaceable>enterprise
identifier</replaceable>:<replaceable>option</replaceable>:<replaceable>type</replaceable>:<replaceable>value</replaceable></literal>).
Enterprise identifier is an unsigned integer in the range 1…4294967294. The option number must be
an integer in the range 1…254. Data type takes one of <literal>uint8</literal>,
<literal>uint16</literal>, <literal>uint32</literal>, <literal>ipv4address</literal>,
<literal>ipv6address</literal>, or <literal>string</literal>. Special characters in the data
string may be escaped using <ulink
url="https://en.wikipedia.org/wiki/Escape_sequences_in_C#Table_of_escape_sequences">C-style
escapes</ulink>. This setting can be specified multiple times. If an empty string is specified,
then all options specified earlier are cleared. Defaults to unset.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UserClass=</varname></term>
<listitem>
<para>A DHCPv6 client can use User Class option to identify the type or category of user or
applications it represents. The information contained in this option is a string that represents
the user class of which the client is a member. Each class sets an identifying string of
information to be used by the DHCP service to classify clients. Special characters in the data
string may be escaped using <ulink
url="https://en.wikipedia.org/wiki/Escape_sequences_in_C#Table_of_escape_sequences">C-style
escapes</ulink>. This setting can be specified multiple times. If an empty string is specified,
then all options specified earlier are cleared. Takes a whitespace-separated list of
strings. Note that currently <constant>NUL</constant> bytes are not allowed.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>VendorClass=</varname></term>
<listitem>
<para>A DHCPv6 client can use VendorClass option to identify the vendor that manufactured the
hardware on which the client is running. The information contained in the data area of this
option is contained in one or more opaque fields that identify details of the hardware
configuration. Takes a whitespace-separated list of strings.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>PrefixDelegationHint=</varname></term>
<listitem>
<para>Takes an IPv6 address with prefix length in the same format as the
<varname>Address=</varname> in the [Network] section. The DHCPv6 client will include a prefix
hint in the DHCPv6 solicitation sent to the server. The prefix length must be in the range
1128. Defaults to unset.</para>
</listitem>
</varlistentry>
<!-- How to use the DHCP lease -->
<varlistentry>
<term><varname>UseAddress=</varname></term>
<listitem>
@ -2089,38 +1991,14 @@ IPv6Token=prefixstable:2002:da8:1::</programlisting></para>
<term><varname>UseNTP=</varname></term>
<term><varname>UseHostname=</varname></term>
<term><varname>UseDomains=</varname></term>
<term><varname>IAID=</varname></term>
<term><varname>DUIDType=</varname></term>
<term><varname>DUIDRawData=</varname></term>
<listitem>
<para>As in the [DHCPv4] section.</para>
</listitem>
</varlistentry>
<!-- How to communicate with the server -->
<varlistentry>
<term><varname>ForceDHCPv6PDOtherInformation=</varname></term>
<listitem>
<para>Takes a boolean that enforces DHCPv6 stateful mode when the 'Other information' bit is set in
Router Advertisement messages. By default setting only the 'O' bit in Router Advertisements
makes DHCPv6 request network information in a stateless manner using a two-message Information
Request and Information Reply message exchange.
<ulink url="https://tools.ietf.org/html/rfc7084">RFC 7084</ulink>, requirement WPD-4, updates
this behavior for a Customer Edge router so that stateful DHCPv6 Prefix Delegation is also
requested when only the 'O' bit is set in Router Advertisements. This option enables such a CE
behavior as it is impossible to automatically distinguish the intention of the 'O' bit otherwise.
By default this option is set to false, enable it if no prefixes are delegated when the device
should be acting as a CE router.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>WithoutRA=</varname></term>
<listitem>
<para>Allows DHCPv6 client to start without router advertisements's managed or other address
configuration flag. Takes one of <literal>solicit</literal> or
<literal>information-request</literal>. Defaults to unset.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>RapidCommit=</varname></term>
<listitem>
@ -2133,6 +2011,109 @@ IPv6Token=prefixstable:2002:da8:1::</programlisting></para>
Defaults to true.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>MUDURL=</varname></term>
<listitem>
<para>When configured, the specified Manufacturer Usage Description (MUD) URL will be sent to
the DHCPv6 server. The syntax and semantics are the same as for <varname>MUDURL=</varname> in the
[DHCPv4] section described above.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>RequestOptions=</varname></term>
<listitem>
<para>When configured, allows to set arbitrary request options in the DHCPv6 request options list
that will be sent to the DHCPv6 server. A whitespace-separated list of integers in the range
1…254. Defaults to unset.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>SendVendorOption=</varname></term>
<listitem>
<para>Send an arbitrary vendor option in the DHCPv6 request. Takes an enterprise identifier, DHCP
option number, data type, and data separated with a colon (<literal><replaceable>enterprise
identifier</replaceable>:<replaceable>option</replaceable>:<replaceable>type</replaceable>:
<replaceable>value</replaceable></literal>). Enterprise identifier is an unsigned integer in the
range 14294967294. The option number must be an integer in the range 1254. Data type takes one
of <literal>uint8</literal>, <literal>uint16</literal>, <literal>uint32</literal>,
<literal>ipv4address</literal>, <literal>ipv6address</literal>, or
<literal>string</literal>. Special characters in the data string may be escaped using <ulink
url="https://en.wikipedia.org/wiki/Escape_sequences_in_C#Table_of_escape_sequences">C-style
escapes</ulink>. This setting can be specified multiple times. If an empty string is specified,
then all options specified earlier are cleared. Defaults to unset.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>ForceDHCPv6PDOtherInformation=</varname></term>
<listitem>
<para>Takes a boolean that enforces DHCPv6 stateful mode when the 'Other information' bit is set in
Router Advertisement messages. By default setting only the 'O' bit in Router Advertisements
makes DHCPv6 request network information in a stateless manner using a two-message Information
Request and Information Reply message exchange.
<ulink url="https://tools.ietf.org/html/rfc7084">RFC 7084</ulink>, requirement WPD-4, updates
this behavior for a Customer Edge router so that stateful DHCPv6 Prefix Delegation is also
requested when only the 'O' bit is set in Router Advertisements. This option enables such a CE
behavior as it is impossible to automatically distinguish the intention of the 'O' bit otherwise.
By default this option is set to 'false', enable it if no prefixes are delegated when the device
should be acting as a CE router.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>PrefixDelegationHint=</varname></term>
<listitem>
<para>Takes an IPv6 address with prefix length in the same format as the
<varname>Address=</varname> in the [Network] section. The DHCPv6 client will include a prefix
hint in the DHCPv6 solicitation sent to the server. The prefix length must be in the range
1128. Defaults to unset.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>WithoutRA=</varname></term>
<listitem>
<para>Allows DHCPv6 client to start without router advertisements's managed or other address
configuration flag. Takes one of <literal>solicit</literal> or
<literal>information-request</literal>. Defaults to unset.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>SendOption=</varname></term>
<listitem>
<para>As in the [DHCPv4] section, however because DHCPv6 uses 16-bit fields to store
option numbers, the option number is an integer in the range 1…65536.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>UserClass=</varname></term>
<listitem>
<para>A DHCPv6 client can use User Class option to identify the type or category of user or applications
it represents. The information contained in this option is a string that represents the user class of which
the client is a member. Each class sets an identifying string of information to be used by the DHCP
service to classify clients. Special characters in the data string may be escaped using
<ulink url="https://en.wikipedia.org/wiki/Escape_sequences_in_C#Table_of_escape_sequences">C-style
escapes</ulink>. This setting can be specified multiple times. If an empty string is specified,
then all options specified earlier are cleared. Takes a whitespace-separated list of strings. Note that
currently <constant>NUL</constant> bytes are not allowed.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>VendorClass=</varname></term>
<listitem>
<para>A DHCPv6 client can use VendorClass option to identify the vendor that
manufactured the hardware on which the client is running. The information
contained in the data area of this option is contained in one or more opaque
fields that identify details of the hardware configuration. Takes a
whitespace-separated list of strings.</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>

View File

@ -152,7 +152,7 @@ int nss_pack_user_record_shadow(
*spwd = (struct spwd) {
.sp_namp = buffer,
.sp_lstchg = hr->last_password_change_usec == 0 ? 1 : /* map 0 to 1, since 0 means please change password on next login */
.sp_lstchg = hr->last_password_change_usec == 0 ? 1 : /* map 0 to 1, since 0 means please change pasword on next login */
hr->last_password_change_usec == UINT64_MAX ? -1 :
(long int) (hr->last_password_change_usec / USEC_PER_DAY),
.sp_min = hr->password_change_min_usec != UINT64_MAX ? (long int) (hr->password_change_min_usec / USEC_PER_DAY) : -1,

View File

@ -1098,7 +1098,7 @@ uint32_t manager_find_mtu(Manager *m) {
Link *l;
/* If we don't know on which link a DNS packet would be delivered, let's find the largest MTU that
* works on all interfaces we know of that have an IP address associated */
* works on all interfaces we know of that have an IP address asociated */
HASHMAP_FOREACH(l, m->links) {
/* Let's filter out links without IP addresses (e.g. AF_CAN links and suchlike) */