The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Пример скрипта для переключения выделенок, при падении. (leased trouble script example)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: leased, trouble, script, example,  (найти похожие документы)
From: spanka <spanka@grozd.com> Newsgroups: email Date: Mon, 7 Oct 2003 14:31:37 +0000 (UTC) Subject: Пример скрипта для переключения выделенок, при падении. переключение выделенок, при падении #!/bin/sh PATH="/sbin:/usr/bin" #роутер основного пройдера ISP1="xxx.xxx.xxx.xxx" #рорутер запасного провайдера ISP2="yyy.yyy.yyy.yyy" #если оба канала работают #будет переключен на этот роутер DEFAULT_ISP="xxx.xxx.xxx.xxx" # далее идут ипы, которые мы будем пинговать OVER_ISP1="216.136.204.21" OVER_ISP2="199.185.137.3" # проверка на наличие статических маршрутов # на пингуемые хосты через разных провайдеров netstat -nr | grep ${OVER_ISP1} >/dev/null 2>&1 if [ $? != 0 ]; then echo "Add static route to ${OVER_ISP1} via ${ISP1}" route add ${OVER_ISP1} ${ISP1} -static fi netstat -nr | grep ${OVER_ISP2} >/dev/null 2>&1 if [ $? != 0 ]; then echo "Add static route to ${OVER_ISP2} via ${ISP2}" route add ${OVER_ISP2} ${ISP2} -static fi # что у нас сейчас работает current_now=`netstat -nr | grep default | awk \'{print $2}\'` echo -n "ping over ISP1:" ping -c 1 ${OVER_ISP1} >/dev/null 2>&1 if [ $? -eq 0 ]; then echo " [OK]" ISP1_stat=0 else echo " [FAILED]" ISP1_stat=1 fi echo -n "ping over ISP2:" ping -c 1 ${OVER_ISP2} >/dev/null 2>&1 if [ $? -eq 0 ]; then echo " [OK]" ISP2_stat=0 else echo " [FAILED]" ISP2_stat=1 fi if [ ${ISP1_stat} -eq 1 -a ${ISP2_stat} = 0 -a \\ ${current_now} = ${ISP1} ]; then echo "ISP1 suck" route delete default route add default ${ISP2} fi if [ ${ISP1_stat} -eq 0 -a ${current_now} != ${ISP1} ]; then echo "Back to ISP1" route delete default route add default ${ISP1} fi

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

Обсуждение [ RSS ]
  • 1, samid (?), 16:39, 06/07/2004 [ответить]  
  • +/
    а вот на 3 канала переделано но теперь без ошибок bin sh PATH sbin us... большой текст свёрнут, показать
     
  • 2, nagoHaK (ok), 13:12, 17/09/2004 [ответить]  
  • +/
    У меня этот скрипт так и не пошёл, написал свой на основе этого первого из приве... большой текст свёрнут, показать
     
     
  • 3, Jury Danilov (?), 20:08, 08/12/2004 [^] [^^] [^^^] [ответить]  
  • +/
    >Не судите строго сей скрипт - он у меня первенький =), но
    >факт что работает...

    Работает, говоришь... :-)
    а попробуй выдерни из второй карты провод и подожди 5 мин...

    у тебя и работающий ляжет...

    ...Подсказка

    route delete default 2>&1
    route add default $EXTGW 2>&1

    Этот случай в if не попадает, поэтому переменная $EXTGW , которая там определяется остается неопределенной
    default удаляется, а нового то и нету...

     

  • 4, CHe (?), 12:15, 10/02/2010 [ответить]  
  • +/
    подскажите плиз, что если основной шлюз
    #роутер основного пройдера
    ISP1="xxx.xxx.xxx.xxx"  
    может измениться, как нужно написать скрипт, что бы он автоматом менялся и в скрипте?
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру