An [Address] section accepts the following keys. Specify several
[Address] sections to configure several addresses.
Address=
As in the [Network] section. This key is mandatory. Each
[Address] section can contain one Address= setting.
Peer=
The peer address in a point-to-point connection. Accepts the
same format as the Address= key.
Broadcast=
Takes an IPv4 address or boolean value. The address must be
in the format described in inet_pton(3). If set to true, then
the IPv4 broadcast address will be derived from the Address=
setting. If set to false, then the broadcast address will not
be set. Defaults to true, except for wireguard interfaces,
where it default to false.
Label=
Specifies the label for the IPv4 address. The label must be a
7-bit ASCII string with a length of 1...15 characters.
Defaults to unset.
PreferredLifetime=
Allows the default "preferred lifetime" of the address to be
overridden. Only three settings are accepted: "forever",
"infinity", which is the default and means that the address
never expires, and "0", which means that the address is
considered immediately "expired" and will not be used, unless
explicitly requested. A setting of PreferredLifetime=0
is
useful for addresses which are added to be used only by a
specific application, which is then configured to use them
explicitly.
Scope=
The scope of the address, which can be "global" (valid
everywhere on the network, even through a gateway), "link"
(only valid on this device, will not traverse a gateway) or
"host" (only valid within the device itself, e.g. 127.0.0.1)
or an unsigned integer in the range 0...255. Defaults to
"global".
RouteMetric=
The metric of the prefix route, which is pointing to the
subnet of the configured IP address, taking the configured
prefix length into account. Takes an unsigned integer in the
range 0...4294967295. When unset or set to 0, the kernel's
default value is used. This setting will be ignored when
AddPrefixRoute= is false.
HomeAddress=
Takes a boolean. Designates this address the "home address"
as defined in RFC 6275
[10]. Supported only on IPv6. Defaults
to false.
DuplicateAddressDetection=
Takes one of "ipv4", "ipv6", "both", "none". When "ipv4",
performs IPv4 Address Conflict Detection. See RFC 5227
[11].
When "ipv6", performs IPv6 Duplicate Address Detection. See
RFC 4862
[12]. Defaults to "ipv6".
ManageTemporaryAddress=
Takes a boolean. If true the kernel manage temporary
addresses created from this one as template on behalf of
Privacy Extensions RFC 3041
[13]. For this to become active,
the use_tempaddr sysctl setting has to be set to a value
greater than zero. The given address needs to have a prefix
length of 64. This flag allows using privacy extensions in a
manually configured network, just like if stateless
auto-configuration was active. Defaults to false.
AddPrefixRoute=
Takes a boolean. When true, the prefix route for the address
is automatically added. Defaults to true.
AutoJoin=
Takes a boolean. Joining multicast group on ethernet level
via ip maddr
command would not work if we have an Ethernet
switch that does IGMP snooping since the switch would not
replicate multicast packets on ports that did not have IGMP
reports for the multicast addresses. Linux vxlan interfaces
created via ip link add vxlan
or networkd's netdev kind vxlan
have the group option that enables then to do the required
join. By extending ip address command with option "autojoin"
we can get similar functionality for openvswitch (OVS) vxlan
interfaces as well as other tunneling mechanisms that need to
receive multicast traffic. Defaults to "no".