--- /usr/local/bin/wg-quick 2023-11-24 18:57:09.202192000 -0800 +++ /usr/local/bin/wg-quick 2023-11-24 18:58:35.278192000 -0800 @@ -117,6 +117,7 @@ add_if() { local ret rc if ret="$(cmd ifconfig wg create name "$INTERFACE" 2>&1 >/dev/null)"; then + cmd ifconfig $INTERFACE inet 127.0.0.200/32 return 0 fi rc=$? @@ -315,13 +316,14 @@ add_route() { [[ $TABLE != off ]] || return 0 - + local family=inet [[ $1 == *:* ]] && family=inet6 if [[ -n $TABLE && $TABLE != auto ]]; then cmd route -q -n add "-$family" -fib "$TABLE" "$1" -interface "$INTERFACE" elif [[ $1 == */0 ]]; then + cmd route -q -n add "-$family" -fib "$TABLE" "$1" -interface "$INTERFACE" if [[ $1 == *:* ]]; then AUTO_ROUTE6=1 cmd route -q -n add -inet6 ::/1 -interface "$INTERFACE" @@ -439,6 +441,7 @@ } cmd_down() { + echo down [[ " $(wg show interfaces) " == *" $INTERFACE "* ]] || die "\`$INTERFACE' is not a WireGuard interface" execute_hooks "${PRE_DOWN[@]}" [[ $SAVE_CONFIG -eq 0 ]] || save_config