| # This file is part of systemd. |
| # |
| # systemd is free software; you can redistribute it and/or modify it |
| # under the terms of the GNU Lesser General Public License as published by |
| # the Free Software Foundation; either version 2.1 of the License, or |
| # (at your option) any later version. |
| |
| [Unit] |
| Description=Network Service |
| Documentation=man:systemd-networkd.service(8) |
| ConditionCapability=CAP_NET_ADMIN |
| DefaultDependencies=no |
| # systemd-udevd.service can be dropped once tuntap is moved to netlink |
| After=systemd-udevd.service network-pre.target systemd-sysusers.service systemd-sysctl.service |
| Before=network.target multi-user.target shutdown.target |
| Conflicts=shutdown.target |
| Wants=network.target |
| |
| # On kdbus systems we pull in the busname explicitly, because it |
| # carries policy that allows the daemon to acquire its name. |
| Wants=org.freedesktop.network1.busname |
| After=org.freedesktop.network1.busname |
| |
| [Service] |
| Type=notify |
| Restart=on-failure |
| RestartSec=0 |
| ExecStart=@rootlibexecdir@/systemd-networkd |
| WatchdogSec=3min |
| CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_BROADCAST CAP_NET_RAW CAP_SETUID CAP_SETGID CAP_SETPCAP CAP_CHOWN CAP_DAC_OVERRIDE CAP_FOWNER |
| ProtectSystem=strict |
| ProtectHome=yes |
| ProtectControlGroups=yes |
| ProtectKernelModules=yes |
| MemoryDenyWriteExecute=yes |
| RestrictRealtime=yes |
| RestrictAddressFamilies=AF_UNIX AF_NETLINK AF_INET AF_INET6 AF_PACKET |
| SystemCallFilter=~@clock @cpu-emulation @debug @keyring @module @mount @obsolete @raw-io @reboot @swap |
| SystemCallArchitectures=native |
| ReadWritePaths=/run/systemd |
| |
| [Install] |
| WantedBy=multi-user.target |
| Also=systemd-networkd.socket |
| Alias=dbus-org.freedesktop.network1.service |
| |
| # We want to enable systemd-networkd-wait-online.service whenever this service |
| # is enabled. systemd-networkd-wait-online.service has |
| # WantedBy=network-online.target, so enabling it only has an effect if |
| # network-online.target itself is enabled or pulled in by some other unit. |
| Also=systemd-networkd-wait-online.service |