Use ip route commands on Linux, as they show the subnet which may be required for deletion

pull/3415/head
Thomas Stromberg 2018-12-05 17:29:59 -08:00
parent f643387595
commit 41fd26a063
1 changed files with 12 additions and 10 deletions

View File

@ -162,17 +162,19 @@ if pgrep kubectl; then
fi
function cleanup_stale_routes() {
stale_routes=$(netstat -rn -f inet | awk '{ print $1 }' | grep 10.96.0.0 || true)
if [[ "${stale_routes}" != "" ]]; then
echo "WARNING: deleting stale tunnel routes: ${stale_routes}"
for route in ${stale_routes}; do
if [[ "$(uname)" == "Linux" ]]; then
sudo ip route delete "${route}" || true
else
sudo route -n delete "${route}" || true
fi
done
local show="netstat -rn -f inet"
local del="sudo route -n delete"
if [[ "$(uname)" == "Linux" ]]; then
show="ip route show"
del="sudo ip route delete"
fi
local troutes=$($show | awk '{ print $1 }' | grep 10.96.0.0 || true)
for route in ${troutes}; do
echo "WARNING: deleting stale tunnel route: ${route}"
$del "${route}" || true
done
}
cleanup_stale_routes || true