]>
Commit | Line | Data |
---|---|---|
db9ecf05 | 1 | # SPDX-License-Identifier: LGPL-2.1-or-later |
a7df2d1e | 2 | # |
f579559b TG |
3 | # This file is part of systemd. |
4 | # | |
5 | # systemd is free software; you can redistribute it and/or modify it | |
6 | # under the terms of the GNU Lesser General Public License as published by | |
7 | # the Free Software Foundation; either version 2.1 of the License, or | |
8 | # (at your option) any later version. | |
9 | ||
10 | [Unit] | |
11 | Description=Network Service | |
12 | Documentation=man:systemd-networkd.service(8) | |
689d781b | 13 | ConditionCapability=CAP_NET_ADMIN |
f579559b | 14 | DefaultDependencies=no |
5f004d1e | 15 | # systemd-udevd.service can be dropped once tuntap is moved to netlink |
2c0dffe8 | 16 | After=systemd-networkd.socket systemd-udevd.service network-pre.target systemd-sysusers.service systemd-sysctl.service |
689d781b LP |
17 | Before=network.target multi-user.target shutdown.target |
18 | Conflicts=shutdown.target | |
2c0dffe8 | 19 | Wants=systemd-networkd.socket network.target |
f579559b TG |
20 | |
21 | [Service] | |
c61f302d | 22 | AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_BROADCAST CAP_NET_RAW |
e67b818c | 23 | BusName=org.freedesktop.network1 |
3ca9940c | 24 | CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_BROADCAST CAP_NET_RAW |
9af28206 | 25 | DeviceAllow=char-* rw |
059cc610 | 26 | ExecStart=!!{{ROOTLIBEXECDIR}}/systemd-networkd |
9e36b885 | 27 | ExecReload=networkctl reload |
3ca9940c LP |
28 | LockPersonality=yes |
29 | MemoryDenyWriteExecute=yes | |
30 | NoNewPrivileges=yes | |
24da96a1 | 31 | ProtectProc=invisible |
cabc1c6d | 32 | ProtectClock=yes |
0c28d51a | 33 | ProtectControlGroups=yes |
3ca9940c | 34 | ProtectHome=yes |
6168ae58 | 35 | ProtectKernelLogs=yes |
24da96a1 | 36 | ProtectKernelModules=yes |
3ca9940c LP |
37 | ProtectSystem=strict |
38 | Restart=on-failure | |
24da96a1 | 39 | RestartKillSignal=SIGUSR2 |
3ca9940c | 40 | RestartSec=0 |
1b3cccfd | 41 | RestrictAddressFamilies=AF_UNIX AF_NETLINK AF_INET AF_INET6 AF_PACKET AF_ALG |
3ca9940c LP |
42 | RestrictNamespaces=yes |
43 | RestrictRealtime=yes | |
62aa2924 | 44 | RestrictSUIDSGID=yes |
c61f302d YW |
45 | RuntimeDirectory=systemd/netif |
46 | RuntimeDirectoryPreserve=yes | |
3ca9940c LP |
47 | SystemCallArchitectures=native |
48 | SystemCallErrorNumber=EPERM | |
49 | SystemCallFilter=@system-service | |
50 | Type=notify | |
51 | User=systemd-network | |
059cc610 | 52 | {{SERVICE_WATCHDOG}} |
c4a0b20c JD |
53 | |
54 | [Install] | |
55 | WantedBy=multi-user.target | |
5544ee85 | 56 | Also=systemd-networkd.socket |
fb369a5b | 57 | Alias=dbus-org.freedesktop.network1.service |
9e496560 ZJS |
58 | |
59 | # We want to enable systemd-networkd-wait-online.service whenever this service | |
60 | # is enabled. systemd-networkd-wait-online.service has | |
61 | # WantedBy=network-online.target, so enabling it only has an effect if | |
62 | # network-online.target itself is enabled or pulled in by some other unit. | |
63 | Also=systemd-networkd-wait-online.service |