summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xlibexec/container/start17
-rwxr-xr-xlibexec/container/stop2
2 files changed, 11 insertions, 8 deletions
diff --git a/libexec/container/start b/libexec/container/start
index f899446..da6be24 100755
--- a/libexec/container/start
+++ b/libexec/container/start
@@ -390,15 +390,18 @@ then
if [ -n "${BRIDGE}" ] && [ -n "${INTERFACE}" ]
then
-cat > "/etc/network/interfaces.d/${INTERFACE}" << EOF
-allow-hotplug ${INTERFACE}
-iface ${INTERFACE} inet manual
- pre-up ip link set ${INTERFACE} up
- post-up ip link set ${INTERFACE} master ${BRIDGE}
- pre-down ip link set ${INTERFACE} nomaster
- post-down ip link set ${INTERFACE} down
+ mkdir -p /run/systemd/network
+
+cat > "/run/systemd/network/${INTERFACE}.network" << EOF
+[Match]
+Name=${INTERFACE}
+
+[Network]
+Bridge=${BRIDGE}
EOF
+ networkctl reload
+
else
echo "Warning bridge definition '${BRIDGE_DEFINITION}' not recognized (expected <bridge>:<interface>): Ignoring"
fi
diff --git a/libexec/container/stop b/libexec/container/stop
index 98b2afa..d2db38e 100755
--- a/libexec/container/stop
+++ b/libexec/container/stop
@@ -220,7 +220,7 @@ case "${CLEAN}" in
for VETH in ${VETHS}
do
INTERFACE="$(echo ${VETH} | awk -F: '{ print $1 }')"
- FILE="/etc/network/interfaces.d/${INTERFACE}"
+ FILE="/run/systemd/network/${INTERFACE}.network"
if [ -f "${FILE}" ]
then