#!/bin/bash INTERFACE=$1 # The interface which is brought up or down STATUS=$2 # The new state of the interface # whenever interface is brought up by NM (rhbz #565921) if [ "$STATUS" = "up" ]; then # wait a few seconds to allow interface startup to complete # (important at boot time without this the service still fails # time-out for dispatcher script is 3s (rhbz#1003695#8) sleep 2 # restart the services # In case this dispatcher script is called several times in a short period of time, it might happen that # systemd refuses to further restart the units. Therefore we use reset-failed command to prevent it. systemctl -q is-enabled dhcpd.service && systemctl restart dhcpd.service && systemctl reset-failed dhcpd.service systemctl -q is-enabled dhcpd6.service && systemctl restart dhcpd6.service && systemctl reset-failed dhcpd6.service fi exit 0