diff --git a/etc/rc.d/rc.docker b/etc/rc.d/rc.docker index 581561c73..1ae64408a 100755 --- a/etc/rc.d/rc.docker +++ b/etc/rc.d/rc.docker @@ -485,11 +485,17 @@ stop_network(){ driver ${NIC//[0-9]/} for NETWORK in $(network $ATTACH $X); do [[ $STOCK =~ ${NETWORK%%[0-9]*} || $DOCKER_USER_NETWORKS != preserve ]] && docker network rm $NETWORK >/dev/null - LINK=shim-$NETWORK - if [[ -e $SYSTEM/$LINK ]]; then - ip addr flush dev $LINK - ip link set $LINK down - ip link del $LINK + TYPE=${NETWORK//[0-9.]/} + if [[ $TYPE == br ]]; then + LINK=shim-$NETWORK + if [[ -e $SYSTEM/$LINK ]]; then + ip addr flush dev $LINK + ip link set $LINK down + ip link del $LINK + fi + else + VHOST=vhost${NETWORK//[^0-9.]/} + [[ -e $SYSTEM/$VHOST ]] && ip addr flush dev $VHOST fi done done