SYSTEMD-NETWORK-GENERATOR.SERVICE(8) systemd-network-generator.service SYSTEMD-NETWORK-GENERATOR.SERVICE(8)

.SH "NAME" systemd-network-generator.service, systemd-network-generator - Generate network configuration from the kernel command line

.SH "SYNOPSIS"

.PP systemd-network-generator.service

.PP /usr/lib/systemd/systemd-network-generator

.SH "DESCRIPTION"

.PP systemd-network-generator.service is a system service that translates *ip=* and related settings on the kernel command line (see below) into [**systemd.network**(5)](/man/os/systemd/systemd.network.5), [**systemd.netdev**(5)](/man/os/systemd/systemd.netdev.5), and [**systemd.link**(5)](/man/os/systemd/systemd.link.5) configuration files understood by [**systemd-networkd.service**(8)](/man/os/systemd/systemd-networkd.service.8) and [**systemd-udevd.service**(8)](/man/os/systemd/systemd-udevd.service.8).

.PP Files are generated in /run/systemd/network/.

.PP Note: despite the name, this generator executes as a normal systemd service and is *not* an implementation of the [**systemd.generator**(7)](/man/os/systemd/systemd.generator.7) concept.

.SH "KERNEL COMMAND LINE OPTIONS"

.PP This tool understands the following options:

.PP *ip=*, *nameserver=*, *rd.route=*, *rd.peerdns=*

Translated into [**systemd.network**(5)](/man/os/systemd/systemd.network.5) files.

In addition to the parameters [**dracut.cmdline**(7)](/man/os/systemd/dracut.cmdline.7) defines the *ip=* option accepts the special value link-local. If selected, the network interfaces will be configured for link-local addressing (IPv4LL, IPv6LL) only, DHCP or IPv6RA will not be enabled.

Added in version 245.

.RE

.PP *ifname=*, *net.ifname\_policy=*

Translated into [**systemd.link**(5)](/man/os/systemd/systemd.link.5) files.

Added in version 245.

.RE

.PP *vlan=*, *bond=*, *bridge=*, *bootdev=*

Translated into [**systemd.netdev**(5)](/man/os/systemd/systemd.netdev.5) files.

Added in version 245.

.RE

.PP *BOOTIF=*, *rd.bootif=*

When *BOOTIF* is specified in the interface field of *ip=*, it is treated as a special placeholder rather than a real interface name. Then, in combination with the MAC address provided by *BOOTIF=*, this is translated into a [**systemd.network**(5)](/man/os/systemd/systemd.network.5) file which matches on the provided MAC address. When *rd.bootif=0* is passed, this functionality is disabled, and the *BOOTIF=* option is ignored.

See [**dracut.cmdline**(7)](/man/os/systemd/dracut.cmdline.7) for details on the usage of these options.

Added in version 261.

.RE

.PP See [**dracut.cmdline**(7)](/man/os/systemd/dracut.cmdline.7) and [**systemd-udevd.service**(8)](/man/os/systemd/systemd-udevd.service.8) for option syntax and details.

.SH "CREDENTIALS"

.PP **systemd-network-generator** supports the service credentials logic as implemented by *ImportCredential=*/*LoadCredential=*/*SetCredential=* (see [**systemd.exec**(5)](/man/os/systemd/systemd.exec.5) for details). The following credentials are used when passed in:

.PP *network.conf.\**, *network.link.\**, *network.netdev.\**, *network.network.\**

These credentials should contain valid [**networkd.conf**(5)](/man/os/systemd/networkd.conf.5), [**systemd.link**(5)](/man/os/systemd/systemd.link.5), [**systemd.netdev**(5)](/man/os/systemd/systemd.netdev.5), [**systemd.network**(5)](/man/os/systemd/systemd.network.5) configuration data. From each matching credential a separate file is created. Example: a passed credential network.link.50-foobar will be copied into a configuration file 50-foobar.link.

Note that the resulting files are created world-readable, it is hence recommended to not include secrets in these credentials, but to supply them via separate credentials directly to [**systemd-networkd.service**(8)](/man/os/systemd/systemd-networkd.service.8).

Added in version 256.

.RE

.PP Note that by default the [**systemd-networkd.service**(8)](/man/os/systemd/systemd-networkd.service.8) service is set up to inherit the these credentials from the service manager.

.SH "SEE ALSO"

.PP [**systemd**(1)](/man/os/systemd/systemd.1), [**systemd-networkd.service**(8)](/man/os/systemd/systemd-networkd.service.8), [**dracut**(8)](/man/os/systemd/dracut.8)

systemd 262.2

---

Document: systemd-network-generator.service(8) from systemd 262.2-r1 (Chainguard OS)
Source: https://github.com/systemd/systemd
