From 3c2f3c2fa216389348e0a4693e305a85c3fb5ab3 Mon Sep 17 00:00:00 2001 From: Manevolent Date: Wed, 12 Apr 2023 22:49:10 -0600 Subject: [PATCH] Update subnet-down.tmpl --- tinc/subnet-down.tmpl | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tinc/subnet-down.tmpl b/tinc/subnet-down.tmpl index 9827a23..ce2c043 100644 --- a/tinc/subnet-down.tmpl +++ b/tinc/subnet-down.tmpl @@ -1,2 +1,17 @@ #!/bin/ash echo "Route down: \$SUBNET weight \$WEIGHT via \$NODE (\$REMOTEADDRESS:\$REMOTEPORT)" +nonMACChars=`echo \$SUBNET | tr -d "[:digit:]" | tr -d [:ABCDEFabcdef]` +macFile="/tmp/tinc_peer_mac_\$NODE" +if [ -z "\$nonMACChars" ]; then + # This subnet is a MAC + if test -f "\$macFile"; then + rm \$macFile + fi +else + if echo "\$SUBNET" | grep -q -E ".+/32\$"; then + # This subnet is likely an IP address, remove it from the ARP table + address=`echo "\$SUBNET" | cut -d '/' -f 1` + echo "Unmapping \$address <=> \$mac from ARP table" + arp -s "\$address" + fi +fi