Script per comporre il link 3g nel caso in cui la rete sia inattiva?

4

Voglio configurare un router Ubuntu con failover automatico su un collegamento 3G. Probabilmente posso impostare il routing e l'aggregazione dei link, ma non so come monitorare lo stato dei collegamenti e comporre il collegamento 3G nel caso in cui sia inattivo. Puntatori a risorse utili molto apprezzate.

    
posta user2132 08.09.2010 - 17:50

1 risposta

2

Non sono sicuro che ci sia qualcosa che potrebbe fare questo per te ... Comunque potresti, con un po 'di script, un po' di googling, mettere insieme uno script che:

  • Ogni 10 minuti, ping google con un timeout di 2 secondi e solo dalla tua connessione "fissa" (non quella 3G) (usa il -I flag).
  • Se il ping ha esito positivo e la connessione è fissa, non fare nulla.
  • Se sei su 3G e il ping sulla connessione fissa funziona, scarica l'adattatore 3G.
  • Se fallisce, visualizza l'adattatore 3G.

Ecco il mio rapido tentativo:

#! /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

Ovviamente sostituisci 3GADAPTERNAME con il nome dell'adattatore. disattiva eth0 se la tua connessione principale è diversa. Assicurati che sia impostato per connettersi automaticamente (quindi, quando è permesso, lo fa). Lo script dovrà essere eseguito come root.

    
risposta data Oli 09.09.2010 - 11:41

Leggi altre domande sui tag