Clean up network detection
- Clean up default network interface detection and remove VPN_NET_IFACE
This commit is contained in:
parent
2e164ad976
commit
ed5cbb865f
22
vpnsetup.sh
22
vpnsetup.sh
@ -69,10 +69,8 @@ if [ "$(id -u)" != 0 ]; then
|
|||||||
exiterr "Script must be run as root. Try 'sudo sh $0'"
|
exiterr "Script must be run as root. Try 'sudo sh $0'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
NET_IFACE=${VPN_NET_IFACE:-'eth0'}
|
def_iface=$(route 2>/dev/null | grep '^default' | grep -o '[^ ]*$')
|
||||||
def_iface="$(route 2>/dev/null | grep '^default' | grep -o '[^ ]*$')"
|
[ -z "$def_iface" ] && def_iface=$(ip -4 route list 0/0 2>/dev/null | grep -Po '(?<=dev )(\S+)')
|
||||||
[ -z "$def_iface" ] && def_iface="$(ip -4 route list 0/0 2>/dev/null | grep -Po '(?<=dev )(\S+)')"
|
|
||||||
|
|
||||||
def_state=$(cat "/sys/class/net/$def_iface/operstate" 2>/dev/null)
|
def_state=$(cat "/sys/class/net/$def_iface/operstate" 2>/dev/null)
|
||||||
if [ -n "$def_state" ] && [ "$def_state" != "down" ]; then
|
if [ -n "$def_state" ] && [ "$def_state" != "down" ]; then
|
||||||
if ! uname -m | grep -qi '^arm'; then
|
if ! uname -m | grep -qi '^arm'; then
|
||||||
@ -83,18 +81,12 @@ if [ -n "$def_state" ] && [ "$def_state" != "down" ]; then
|
|||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
NET_IFACE="$def_iface"
|
NET_IFACE="$def_iface"
|
||||||
fi
|
else
|
||||||
|
eth0_state=$(cat "/sys/class/net/eth0/operstate" 2>/dev/null)
|
||||||
net_state=$(cat "/sys/class/net/$NET_IFACE/operstate" 2>/dev/null)
|
if [ -z "$eth0_state" ] || [ "$eth0_state" = "down" ]; then
|
||||||
if [ -z "$net_state" ] || [ "$net_state" = "down" ] || [ "$NET_IFACE" = "lo" ]; then
|
exiterr "Could not detect the default network interface."
|
||||||
printf "Error: Network interface '%s' is not available.\n" "$NET_IFACE" >&2
|
|
||||||
if [ -z "$VPN_NET_IFACE" ]; then
|
|
||||||
cat 1>&2 <<EOF
|
|
||||||
Could not detect the default network interface. Re-run this script with:
|
|
||||||
sudo VPN_NET_IFACE="default_interface_name" sh "$0"
|
|
||||||
EOF
|
|
||||||
fi
|
fi
|
||||||
exit 1
|
NET_IFACE=eth0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[ -n "$YOUR_IPSEC_PSK" ] && VPN_IPSEC_PSK="$YOUR_IPSEC_PSK"
|
[ -n "$YOUR_IPSEC_PSK" ] && VPN_IPSEC_PSK="$YOUR_IPSEC_PSK"
|
||||||
|
@ -60,10 +60,8 @@ if [ "$(id -u)" != 0 ]; then
|
|||||||
exiterr "Script must be run as root. Try 'sudo sh $0'"
|
exiterr "Script must be run as root. Try 'sudo sh $0'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
NET_IFACE=${VPN_NET_IFACE:-'eth0'}
|
def_iface=$(route 2>/dev/null | grep '^default' | grep -o '[^ ]*$')
|
||||||
def_iface="$(route 2>/dev/null | grep '^default' | grep -o '[^ ]*$')"
|
[ -z "$def_iface" ] && def_iface=$(ip -4 route list 0/0 2>/dev/null | grep -Po '(?<=dev )(\S+)')
|
||||||
[ -z "$def_iface" ] && def_iface="$(ip -4 route list 0/0 2>/dev/null | grep -Po '(?<=dev )(\S+)')"
|
|
||||||
|
|
||||||
def_state=$(cat "/sys/class/net/$def_iface/operstate" 2>/dev/null)
|
def_state=$(cat "/sys/class/net/$def_iface/operstate" 2>/dev/null)
|
||||||
if [ -n "$def_state" ] && [ "$def_state" != "down" ]; then
|
if [ -n "$def_state" ] && [ "$def_state" != "down" ]; then
|
||||||
case "$def_iface" in
|
case "$def_iface" in
|
||||||
@ -72,18 +70,12 @@ if [ -n "$def_state" ] && [ "$def_state" != "down" ]; then
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
NET_IFACE="$def_iface"
|
NET_IFACE="$def_iface"
|
||||||
fi
|
else
|
||||||
|
eth0_state=$(cat "/sys/class/net/eth0/operstate" 2>/dev/null)
|
||||||
net_state=$(cat "/sys/class/net/$NET_IFACE/operstate" 2>/dev/null)
|
if [ -z "$eth0_state" ] || [ "$eth0_state" = "down" ]; then
|
||||||
if [ -z "$net_state" ] || [ "$net_state" = "down" ] || [ "$NET_IFACE" = "lo" ]; then
|
exiterr "Could not detect the default network interface."
|
||||||
printf "Error: Network interface '%s' is not available.\n" "$NET_IFACE" >&2
|
|
||||||
if [ -z "$VPN_NET_IFACE" ]; then
|
|
||||||
cat 1>&2 <<EOF
|
|
||||||
Could not detect the default network interface. Re-run this script with:
|
|
||||||
sudo VPN_NET_IFACE="default_interface_name" sh "$0"
|
|
||||||
EOF
|
|
||||||
fi
|
fi
|
||||||
exit 1
|
NET_IFACE=eth0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[ -n "$YOUR_IPSEC_PSK" ] && VPN_IPSEC_PSK="$YOUR_IPSEC_PSK"
|
[ -n "$YOUR_IPSEC_PSK" ] && VPN_IPSEC_PSK="$YOUR_IPSEC_PSK"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user