24 lines
574 B
Bash
Executable File
24 lines
574 B
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
# ssh-fallback: Proxy para SSH con fallback automático
|
|
# Usado como ProxyCommand en ~/.ssh/config
|
|
#
|
|
# Uso: ssh-fallback <tailscale_host> <lan_ip> <port>
|
|
|
|
TAILSCALE_HOST="$1"
|
|
LAN_IP="$2"
|
|
PORT="${3:-22}"
|
|
|
|
# Intentar Tailscale primero (1 segundo timeout)
|
|
if ping -c 1 -W 1 "$TAILSCALE_HOST" &>/dev/null 2>&1; then
|
|
exec nc -w 5 "$TAILSCALE_HOST" "$PORT"
|
|
fi
|
|
|
|
# Fallback a IP LAN
|
|
if ping -c 1 -W 1 "$LAN_IP" &>/dev/null 2>&1; then
|
|
exec nc -w 5 "$LAN_IP" "$PORT"
|
|
fi
|
|
|
|
# Último intento: Tailscale sin verificar
|
|
exec nc -w 10 "$TAILSCALE_HOST" "$PORT"
|