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


Автор Тема: Автозапуск VPN при разрыве  (Прочитано 16554 раз)

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

Оффлайн marischka

  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
    • Блог Копаева Алексея
Re: Автозапуск VPN при разрыве
« Ответ #15 : 16 Января 2009, 00:37:55 »
aaronfunk, рекомендую загнать запуск вашего скрипта в if.down, чтобы он вызывался при падении соединения.
А можете ли подробнее расказать как это делается и как должен выглядить скрипт? так как я только начинаюший линуксовод и мне еше многого не понятно!

Оффлайн mayak

  • Участник
  • *
  • Сообщений: 203
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #16 : 16 Января 2009, 01:51:18 »
бессмысленно рассказывать про частности. погуглите про /etc/init.d/networking, if.up и прочитайте целиком - времени отнимет минут сорок, а будет очень полезно.
Не отвечаю на сообщения, написанные на нэрускам язьыке. Нет, я не националист.
Используйте спелл-чекер.

Оффлайн aaronfunk

  • Автор темы
  • Участник
  • *
  • Сообщений: 129
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #17 : 16 Января 2009, 02:13:18 »
aaronfunk, рекомендую загнать запуск вашего скрипта в if.down, чтобы он вызывался при падении соединения.
Спасибо за рекомендации, но пока все отлично работает.

Оффлайн marischka

  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
    • Блог Копаева Алексея
Re: Автозапуск VPN при разрыве
« Ответ #18 : 16 Января 2009, 09:26:19 »
у меня adsl модем рабтает через pppoe и периодически соединение зависает! каким образом благодаря скрипту выше реализовать "Остановка соединения(sudo poff dsl-provider)" и потом "Запуск соединения(sudo pon dsl-provider)"? Люди добрые подскажите пожайлусто! Только не нужно говорить прогугли! так как если бы я прогуглил и нашел бы ответ я бы тут не писал!

Оффлайн mayak

  • Участник
  • *
  • Сообщений: 203
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #19 : 16 Января 2009, 11:12:43 »
pppoe подключается модемом или компьютером? первая схема называется router, вторая bridge.
если первое, то меняйте модем или переходите на второе, пон тут ни при чём.
если второе, то используйте скрипт, приведённый выше в этой теме.
Не отвечаю на сообщения, написанные на нэрускам язьыке. Нет, я не националист.
Используйте спелл-чекер.

Оффлайн marischka

  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
    • Блог Копаева Алексея
Re: Автозапуск VPN при разрыве
« Ответ #20 : 16 Января 2009, 14:47:36 »
#!/bin/sh

# Ресурс, доступность которого нужно проверять.
PINGRESOURCE="ya.ru"

# Интервал (в секундах) между проверками
CHECKTIME=30

 #Организуем бесконечный цикл
while true; do

    # Если ресурс не доступен
    if (! ping -c 3 ${PINGRESOURCE} >/dev/null 2>&1) then
   
        #Команда для запуска интернет соединения,изменить на свою       
        pptp vpn.sub.net.ua user super password man defaultroute

    fi

   sleep ${CHECKTIME}
done

И каким образом мне зделать так чтобы этот скрипт разорвал соединение по команде sudo poff dsl-provider а потом подключился по команде sudo pon dsl-provider мне как раз нужно делать это тогда когда пинг до яндекса не проходит! чтобы этот скрипт разорвал и заного зделал подключение! подключение!

Оффлайн slugg

  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #21 : 16 Января 2009, 16:08:55 »
#!/bin/sh

# Ресурс, доступность которого нужно проверять.
PINGRESOURCE="ya.ru"

# Интервал (в секундах) между проверками
CHECKTIME=30

 #Организуем бесконечный цикл
while true; do

    # Если ресурс не доступен
    if (! ping -c 3 ${PINGRESOURCE} >/dev/null 2>&1) then
         
        poff dsl-provider
        #Команда для запуска интернет соединения,изменить на свою       
        pon dsl-provider

    fi

   sleep ${CHECKTIME}
done

Оффлайн DeamonM

  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #22 : 15 Апреля 2009, 19:38:11 »
решил написать сюда что бы не плодить темы.

вообщем проблема звучить так:: при запуске системы нужно подключаться к интернету, после того как оно будет установлено перезапустить прокси сервер, и делать такуюже процедуру при обрыве соединения.

Что я имею и с чем я работаю:: в интернет я хожу посредством wvdial через обычный модем(мобилка в данном случае), прокси у меня squid 2.7; перезапуск при потере соединения работает.

Теперь проблемы::
                                                                                     

#!/bin/sh

#запускаем интернет


wvdial utel >/dev/null 2>1&

           sleep 40

/etc/init.d/squid restart

while true; do

        #если ресурс не доступен
        if (! ping -c 3 ya.ru >/dev/null 2>&1) then

        wvdial utel >/dev/null 2>1&

        sleep 40
        /etc/init.d/squid restart
        fi
done
Вот код моей программы. проблема заключаеться, в том что когда wvdial подключаеться и /затем проходет задержка в 40 сек/отсчитываються 40 сек/(незнаю как правильно), то дальнейших действий не происходит, если убить процесс wvdial то прокси перезагружаеться.

Вопрос::
Как правильно вызывать wvdial так что бы программа выполнялась дальше?

Оффлайн DeamonM

  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #23 : 19 Апреля 2009, 20:08:58 »
Вообщем теме UP

попробывал через perl это запускать, но таже проблема дальше команды wvdial не поехало.

может попробывать через pppd все завести, что скажете?

Пользователь решил продолжить мысль 19 Апреля 2009, 22:42:23:
Вообщем победил.

Если кому пригодиться::

это кусок скипта, который будет следить за интернетом. складываем его в /usr/bin/"name_you_scritp"

#!/bin/sh

#запускаем интернет


pon gprs

           sleep 40

/etc/init.d/squid restart

while true; do

        #если ресурс не доступен
        if (! ping -c 3 ya.ru >/dev/null 2>&1) then

        poff gprs
        pon gprs
        sleep 40
        /etc/init.d/squid restart
        fi
done

то что будет соеденяться::
взято по этой ссылки https://forum.ubuntu.ru/index.php?topic=3572.15
вот от туда вырезка:
Большое спасибо pehser за этот пост.
Цитировать
универсальный метод для консоли
и так подключаем телефон через шнурок USB смотри теперь в /var/log/messages находим как определдился модем
дальше все просто
создай в каталоге /etc/ppp/peers файл gprs и закинь в него такой текст (надо делать под рутом)
Код:
# You usually need this if there is no PAP authentication
noauth
# The chat script (be sure to edit that file, too!)
connect "/usr/sbin/chat -v -f /etc/ppp/peers/chat-gprs"
# Set up routing to go through this PPP link
defaultroute
# Set this to /dev/ircomm0 or similar
/dev/ttyUSB0 -это путь к модему тот что мы берем из  /var/log/messages
# Speed
57600
# Reconnect on disconnect
#persist
# Be extra verbose
debug
# You may need these
passive
noipdefault
noproxyarp
ipcp-accept-local
ipcp-accept-remote
ipcp-restart 2
ipcp-max-configure 20
ipcp-max-failure 20
#asyncmap 0xa0000
default-asyncmap
novj
nodeflate
nobsdcomp
# Use remote DNS
usepeerdns
# With GPRS, authentication is normally done  automatically
# via your cellphone number, so leave login name empty
и в том же катологе создаем файл chat-gprs
Код:
TIMEOUT 5
ECHO ON
ABORT '\nBUSY\r'
ABORT '\nERROR\r'
ABORT '\nNO ANSWER\r'
ABORT '\nNO CARRIER\r'
ABORT '\nNO DIALTONE\r'
ABORT '\nRINGING\r\n\r\nRINGING\r'
'' \rAT
TIMEOUT 12
OK ATE1
OK              'AT+CGDCONT=1,"IP","internet"' -Это строка инициализации зависит от оператора
OK              ATD*99***1#
запускать соединение командой
Код:
pppd call gprs
, можно добавить параметр nodetach - тогда увидишь весь процесс подключения...

отключаться - если запускал с nodetach, то просто жмёшь ctrl+c в консоли откуда запускал; если без - то командой
Код:
poff -a
« Последнее редактирование: 19 Апреля 2009, 22:42:23 от DeamonM »

Оффлайн Kisly Monk

  • Новичок
  • *
  • Сообщений: 18
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #24 : 01 Октября 2009, 14:45:38 »
ну коли тут про скрипты, задам вопрос сюда)))

Вводная: Ubuntu 8.04. Интернет подключается, это все настроено, но хотелось чтобы все подключалось вместе со стартом ОС. подключение идет командой: "pptp vpn.mgn.ru".

Мой провайдер советует делать 2 скрипта:

1. Для непрерывного подключения /usr/local/bin/pptp-run :
(Нажмите, чтобы показать/скрыть)

2. для автоматическог подключения и возможности управлять уподключением /etc/rc.d/init.d/pptp-client (провайдер говорит что надо сюда размещать, но такой директории нет, вопрос ниже):
(Нажмите, чтобы показать/скрыть)

Вопросы:

1. Куда надо разместить второй скрипт чтобы он запускался при старте системы?
2. Провайдер пишет что эти скрипты сделаны для red-hat подобных ОС, скрипты будут работать в Ubuntu?
    2.1 Если работать не будет то что надо поправить??? (подскажите хотя бы куда копать??)

Оффлайн Revil

  • Активист
  • *
  • Сообщений: 284
  • Вечный чайник
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #25 : 26 Октября 2009, 04:42:20 »
лично я сделал вот так правда на прокси сервере

сделал через cron

в sh и в bash мало что понимаю....но скрипт из статьи выше отредактировал под себя и выглядит вот так


#!/bin/sh  
  
# Ресурс, доступность которого нужно проверять.  
PINGRESOURCE="ya.ru"  
  
#Если ресурс не доступен  
    if (! ping -c 3 ${PINGRESOURCE} >/dev/null 2>&1) then  
        # на всякий случай разрываем связь, вдруг нет пинга а соединение есть  
        poff [название_подключения]
        #Подключаемся  
        pon [название_подключения]
    fi  
сохранил этот скрипт задал ему имя autovpn и права rwx r-x r-x root root
в /etc/crontab добавил строчку


0-59 * * * *    root    /путь_к_файлу/autovpn  
теперь при разрыве связи  сервер переподключается, а так же подключается автоматом после  перезагрузки
Phenom II x4 955 , Gigabyte 970A-D3, 8Gb Ram, Asus gtx 470 => мне хватает :)

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28358
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #26 : 26 Октября 2009, 04:54:59 »
Нет большого смысла пинговать яндекс. Будет слишком много разрывов из-за того, что яндекс не ответил - а он имеет право не отвечать, у него других дел хватает.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн Revil

  • Активист
  • *
  • Сообщений: 284
  • Вечный чайник
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #27 : 26 Октября 2009, 11:18:54 »
Нет большого смысла пинговать яндекс. Будет слишком много разрывов из-за того, что яндекс не ответил - а он имеет право не отвечать, у него других дел хватает.

 ну впринципе можно пинговать еще пару ресурсов...тот же самый гугл к примеру. в моей сети к с яндексом пинг всегда и потому прокатывает
а если можешь предложить более ровный вариант решения этой проблемы...буду только рад
Phenom II x4 955 , Gigabyte 970A-D3, 8Gb Ram, Asus gtx 470 => мне хватает :)

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28358
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #28 : 26 Октября 2009, 12:07:24 »
Гугл как и яндекс. Как и www.ru. Пинговать надо твой шлюз или следующий за ним.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн Revil

  • Активист
  • *
  • Сообщений: 284
  • Вечный чайник
    • Просмотр профиля
Re: Автозапуск VPN при разрыве
« Ответ #29 : 26 Октября 2009, 13:27:58 »
Гугл как и яндекс. Как и www.ru. Пинговать надо твой шлюз или следующий за ним.

у меня шлюз и следующий за ним будет пинговаться и без поднятия vpn..так что не вариант
Phenom II x4 955 , Gigabyte 970A-D3, 8Gb Ram, Asus gtx 470 => мне хватает :)

 

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