
Tengo dos conexiones a Internet de dos ISP diferentes. ADSL en eth0 y 4G en wlan0. ¿Hay alguna manera de que si un ISP falla, el otro se haga cargo automáticamente sin un enrutador físico y mediante el sistema operativo host (Ubuntu 18.04)?
Respuesta1
Personalmente, nunca he intentado hacer esto desde el sistema operativo host. Pero después de mucho ir y venir, decidí buscar en Internet para ver si podía encontrar lo que buscabas.
Encontré un script de ejemplo para la conmutación por error de la puerta de enlace en gist.github.com creado por el usuario "Apsu". puedes descargar el script bashaquí.
Tendrá que modificar esto según su configuración específica, agregar los nombres de sus interfaces, direcciones de puerta de enlace y estará listo para comenzar.
Script para el sistema operativo host:
#!/bin/bash
# Set defaults if not provided by environment
CHECK_DELAY=${CHECK_DELAY:-5}
CHECK_IP=${CHECK_IP:-8.8.8.8}
PRIMARY_IF=${PRIMARY_IF:-eth0}
PRIMARY_GW=${PRIMARY_GW:-1.2.3.4}
BACKUP_IF=${BACKUP_IF:-eth1}
BACKUP_GW=${BACKUP_GW:-2.3.4.5}
# Compare arg with current default gateway interface for route to healthcheck IP
gateway_if() {
[[ "$1" = "$(ip r g "$CHECK_IP" | sed -rn 's/^.*dev ([^ ]*).*$/\1/p')" ]]
}
# Cycle healthcheck continuously with specified delay
while sleep "$CHECK_DELAY"
do
# If healthcheck succeeds from primary interface
if ping -I "$PRIMARY_IF" -c1 "$CHECK_IP" &>/dev/null
then
# Are we using the backup?
if gateway_if "$BACKUP_IF"
then # Switch to primary
ip r d default via "$BACKUP_GW" dev "$BACKUP_IF"
ip r a default via "$PRIMARY_GW" dev "$PRIMARY_IF"
fi
else
# Are we using the primary?
if gateway_if "$PRIMARY_IF"
then # Switch to backup
ip r d default via "$PRIMARY_GW" dev "$PRIMARY_IF"
ip r a default via "$BACKUP_GW" dev "$BACKUP_IF"
fi
fi
done
Con hardware de red:
Existen ventajas considerables al utilizar un enrutador para esta función, en lugar de simplemente realizar una conmutación por error desde el sistema operativo host. Lo que inmediatamente me viene a la mente es utilizar el ancho de banda de ambas conexiones simultáneamente. (Utilizando completamente ambas conexiones ISP)
Puede utilizar PFsense/OpenSense como enrutador WAN dual. (La mayoría del hardware de PC antiguo funcionará). Creo que los enrutadores compatibles con DD-WRT también son capaces de realizar una conmutación por error de WAN con algunos ajustes. O podría optar por una solución lista para usar, como Sophos o Netgear prosafe. Estoy seguro de que hay otras, pero la mayoría de las soluciones listas para usar son más caras de lo que los usuarios domésticos están dispuestos a pagar. Una configuración de enrutador dual wan le permite aumentar su ancho de banda de Internet. Puede equilibrar la carga del tráfico para sus necesidades específicas. Puede obtener redundancia de conexión a Internet y conmutación por error.
Saludos,