← All tools

systemd-networkd .network Builder

Write a validated .network file for a static IPv4 address or DHCP, with the subnet details to check before installing it.

Matches the kernel name from ip link.
1–99; becomes the file name prefix.
Both emit a single .network file.
Static IPv4 addresses
One per line or comma-separated, up to 16, each as address/prefix.
Optional; leave blank for an isolated link.
Optional, up to 4 IPv4 addresses.
Optional, up to 8 DNS names.
Optional; blank leaves the kernel default.

Adjust the fields, then build the file.

Installing the file

  1. Save it as /etc/systemd/network/10-enp1s0.network, owned by root with mode 0644.
  2. Make sure only one manager configures the link: NetworkManager and systemd-networkd must not both handle the same interface. Set the device unmanaged in NetworkManager, or disable it.
  3. Enable and reload: sudo systemctl enable --now systemd-networkd, then sudo networkctl reload.
  4. Check the result: networkctl status enp1s0 and ip address show enp1s0.

systemd-networkd reads these files in lexical order and the first .network file that matches an interface is used, so the numeric prefix decides precedence; a second matching file with a lower number wins instead. This page generates text only: it cannot read your host, change permissions, or reload systemd-networkd, and the file uses IPv4 addresses for DNS servers.