Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: После обрыва сети пропадает DSL соединение  (Прочитано 4663 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28509
    • Просмотр профиля
Re: После обрыва сети пропадает DSL соединение
« Ответ #30 : 13 Февраля 2013, 17:38:50 »
Lexstone, я не стеняюсь брать деньги, когда человек скорее заплатит за решение проблемы, чем включит голову.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Lexstone

  • Новичок
  • *
  • Сообщений: 31
    • Просмотр профиля
Re: После обрыва сети пропадает DSL соединение
« Ответ #31 : 15 Февраля 2013, 00:45:21 »
Похоже, что без костыля не обойтись пока что. Итак - собственно КОСТЫЛЬ (помещенный в автозагрузку, разумеется) :
 
#!/bin/sh

PINGRESOURCE="google.com"
CHECKTIME=15
LINECON=0

until [ $LINECON -eq 5 ]
do


    ping -c 3 ${PINGRESOURCE}   
         
    sleep ${CHECKTIME}   


   
    if (! ping -c 3 ${PINGRESOURCE} >/dev/null 2>&1) then
sleep ${CHECKTIME}   
    sudo /etc/init.d/network-manager restart
    sleep 5
    LINECON=$(( $LINECON + 1 ))

    fi

done

Сие костылие обеспечивает подключение при обрыве соединения в течении 5-ти попыток, если , например, кабель был не включен, или вы сами отключили себе интернет принудительно. В случае обрыва сессии провайдером работает четко, вне зависимости от последствий. В принципе, в строке "until [ $LINECON -eq 5 ]" цифра "5" обозначает количество попыток соединиться, если заведомо не подключен кабель или вы вообще не собираетесь использовать интернет, ну, или количество обрывов сессий, которые делает подряд провайдер... Как-то так..

Пользователь решил продолжить мысль 15 Февраля 2013, 03:41:13:
Немного доработал костылик. Теперь, в случае удачного пересоединения, количество оставшихся попыток меняться не будет. (Вдруг вы пару-тройку недель комп перезагружать не собираетесь  :) )

#!/bin/sh

PINGRESOURCE="google.com"
CHECKTIME=15
LINECON=0

until [ $LINECON -eq 5 ]
do


    ping -c 3 ${PINGRESOURCE}   
         
    sleep ${CHECKTIME}   


   
    if (! ping -c 3 ${PINGRESOURCE} >/dev/null 2>&1) then
sleep ${CHECKTIME}   
    sudo /etc/init.d/network-manager restart
    sleep 5
    LINECON=$(( $LINECON + 1 ))
ping -c 3 ${PINGRESOURCE}
    sleep 10
       if (! ping -c 3 ${PINGRESOURCE} >/dev/null 1) then
    LINECON=$(( $LINECON - 1 ))
       fi

    fi

done

Думаю, что больше дорабатывать там нечего. Как костыльное решение - очень годно.
« Последнее редактирование: 15 Февраля 2013, 09:20:36 от Lexstone »

 

Страница сгенерирована за 5.04 секунд. Запросов: 26.