Hi, I really like networkd, but still prefer NetworkManager for WiFi and WWAN. I've therefore written the attached [0] script for forwarding the current Domain, DNS and NTP server to networkd, so it can in turn forward it to other parts of systemd (like resolved or timesyncd).
Although this works surprisingly well in practice, I still somehow have
a bad feeling about this. What do you guys think about this setup? Will
this suddenly break one day and eat all my data or am still on solid
ground here? Is there a better alternative?
Best regards
Alexander Kurtz
[0] /etc/NetworkManager/dispatcher.d/systemd-networkd:
#!/bin/sh -e
if
([ "${2}" = 'up' ] || [ "${2}" = 'vpn-up' ] || [ "${2}" =
'dhcp4-change' ] || [ "${2}" = 'dhcp6-change' ]) &&
([ "${IP4_DOMAINS}" ] || [ "${IP6_DOMAINS}" ] || [ "${IP4_NAMESERVERS}"
] || [ "${IP6_NAMESERVERS}" ] || [ "${DHCP4_NTP_SERVERS}" ] || [
"${DHCP6_NTP_SERVERS}" ])
then
if ! [ -d '/run/systemd/network' ]; then
mkdir '/run/systemd/network'
fi
{
echo "[Match]"
echo "Name=${1}"
echo ""
echo "[Network]"
for domain in ${IP4_DOMAINS} ${IP6_DOMAINS}; do
echo "Domains=${domain}"
done
for dns in ${IP4_NAMESERVERS} ${IP6_NAMESERVERS}; do
echo "DNS=${dns}"
done
for ntp in ${DHCP4_NTP_SERVERS} ${DHCP6_NTP_SERVERS}; do
echo "NTP=${ntp}"
done
echo "IPv6PrivacyExtensions=kernel"
echo "IPForward=kernel"
} > "/run/systemd/network/99-NetworkManager-${1}.network"
systemctl restart systemd-networkd
elif
([ "${2}" = 'down' ] || [ "${2}" = 'vpn-down' ]) &&
([ -f "/run/systemd/network/99-NetworkManager-${1}.network" ])
then
rm "/run/systemd/network/99-NetworkManager-${1}.network"
systemctl restart systemd-networkd
fi
signature.asc
Description: This is a digitally signed message part
_______________________________________________ systemd-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/systemd-devel
