4 votes

scriptpour composer un lien 3g au cas où le réseau est en panne ?

Je veux configurer un routeur Ubuntu avec basculement automatique vers un lien 3G. Je peux probablement configurer le routage et l'agrégation de liens, mais je ne sais pas comment surveiller l'état de la liaison et appeler la liaison 3G en cas de panne. Les pointeurs vers des ressources utiles sont très appréciés.

2 votes

(Félicitations, je crois que vous avez posé la question n° 1 000 sur le site).

0 votes

Félicitations à stackexchange - j'ai annulé l'édition parce que je suis spécifiquement à la recherche d'un script qui va composer le lien 3g ; je peux grep stdout de ping assez bien.

0 votes

Bienvenue à SE. Veuillez être plus précis dans le corps de la question, et non dans le titre. De même, les balises dans les titres sont fortement déconseillées, sauf si elles peuvent faire partie du texte du titre. Sinon, essayez d'éviter de revenir sur les modifications apportées par le modérateur. Essayez d'utiliser les balises pour cibler le type de réponses que vous attendez.

2voto

Mufaka Points 54

Je ne suis pas sûr qu'il y ait quelque chose qui puisse faire ça pour vous... Cependant, vous pourriez, avec un peu de scripting, un peu de Googling, bricoler un script qui :

  • Toutes les 10 minutes, pings google avec un timeout de 2 secondes et uniquement à partir de votre connexion "fixe" (pas celle de la 3G) (utilisez l'option -I drapeau).
  • Si le ping réussit, et que vous êtes sur la connexion fixe, ne faites rien.
  • Si vous êtes en 3G et que le ping sur la connexion fixe fonctionne, descendez l'adaptateur 3G.
  • Si cela échoue, faites apparaître l'adaptateur 3G.

Voici ma tentative rapide :

#! /bin/bash

CONNECTION=1

main()
{
    if ping -q -c 1 -w 1 -I eth0 google.com > /dev/null ; then
        echo "Connection is ok!"

        if [ $CONNECTION -eq 0 ] ; then
            # take the 3g connection down
            ifconfig 3GADAPTERNAME down
            CONNECTION=1
        fi
    else
        echo "Connection is dead! Long live the connection!"

        if [ $CONNECTION -eq 1 ] ; then
            # turn the 3g connection on
            ifconfig 3GADAPTERNAME up
            CONNECTION=0
        fi
    fi

    sleep 5
    main
}

main

Remplacer évidemment 3GADAPTERNAME avec le nom de votre adaptateur. changez eth0 si votre connexion principale est différente. Assurez-vous qu'il est configuré pour se connecter automatiquement (donc quand il est autorisé à le faire, il le fait). Le script devra être exécuté en tant que root.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X