pztrn |
|
Темы:
23
Сообщения:
1436
Участник с: 20 сентября 2009
|
bobartЯ бы сделал лучше так: if [ $? -eq 0 ]; then exit 0 else /etc/rc.d/xl2tpd restart fi |
bobart |
|
Темы:
38
Сообщения:
2537
Участник с: 28 ноября 2009
|
Спасибо, подкрутил.., последняя версия, на данном этапе (монстрам баша: спокойно, отнеситесь с юмором:)#!/bin/sh TCNFILE=~/.logs/conncheck.corbina.log INETFILE=~/.logs/conncheck.internet.log ping -c 4 -w 10 tp.corbina.net & > /dev/null || /etc/rc.d/network restart && ping -c4 www.google.com && if [ $? -eq 0 ];then echo "[`date`] [TP.CORBINA.NET] available, [GOOGLE.RU] available" > $TCNFILE exit 0 else echo "[`date`] [GOOGLE.RU] not available, try again (after NETWORK daemon restart)" > $INETFILE /etc/rc.d/xl2tpd restart fi exit 0 bob@arch:~$ sh ~/.cron.daily/conncheck.sh PING www.l.google.com (74.125.232.50) 56(84) bytes of data. PING tp.corbina.net (83.102.254.223) 56(84) bytes of data. 64 bytes from vpnX-l0.spb.corbina.net (83.102.254.223): icmp_seq=1 ttl=250 time=0.805 ms 64 bytes from 74.125.232.50: icmp_seq=1 ttl=53 time=63.1 ms 64 bytes from vpnX-l0.spb.corbina.net (83.102.254.223): icmp_seq=2 ttl=250 time=0.832 ms 64 bytes from 74.125.232.50: icmp_seq=2 ttl=53 time=62.4 ms 64 bytes from vpnX-l0.spb.corbina.net (83.102.254.223): icmp_seq=3 ttl=250 time=0.834 ms 64 bytes from 74.125.232.50: icmp_seq=3 ttl=53 time=60.3 ms 64 bytes from vpnX-l0.spb.corbina.net (83.102.254.223): icmp_seq=4 ttl=250 time=1.20 ms --- tp.corbina.net ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3003ms rtt min/avg/max/mdev = 0.805/0.919/1.205/0.165 ms 64 bytes from 74.125.232.50: icmp_seq=4 ttl=53 time=62.6 ms --- www.l.google.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3003ms rtt min/avg/max/mdev = 60.363/62.168/63.181/1.090 ms bob@arch:~$ Да, лог как-то трётся, то есть автоматом переписывается, там всегда одна строка - отчёт о последнем выполнении, это так задумано? А если просто сделать ping -c 4 -w 10 tp.corbina.net, то bob@arch:~$ ping -c 4 -w 10 tp.corbina.net PING tp.corbina.net (83.102.254.223) 56(84) bytes of data. 64 bytes from vpnX-l0.spb.corbina.net (83.102.254.223): icmp_seq=1 ttl=250 time=0.999 ms 64 bytes from vpnX-l0.spb.corbina.net (83.102.254.223): icmp_seq=2 ttl=250 time=1.23 ms 64 bytes from vpnX-l0.spb.corbina.net (83.102.254.223): icmp_seq=3 ttl=250 time=1.74 ms 64 bytes from vpnX-l0.spb.corbina.net (83.102.254.223): icmp_seq=4 ttl=250 time=1.58 ms --- tp.corbina.net ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3005ms rtt min/avg/max/mdev = 0.999/1.391/1.749/0.295 ms |
pztrn |
|
Темы:
23
Сообщения:
1436
Участник с: 20 сентября 2009
|
Чтобы лог не терся - замени “>” на “>>” |
bobart |
|
Темы:
38
Сообщения:
2537
Участник с: 28 ноября 2009
|
“перезапись” и “добавление”? Что-то типа.. Спасибо. Скоро научусь 2+2 в уме складывать и стану виртуозом. Пару дней можно последить, что там с сетью творится для общей картины, а там можно и тереть. #!/bin/sh INETFILE=~/.conncheck.corbina.log ping -c 4 -w 10 tp.corbina.net &> /dev/null || /etc/rc.d/network restart && ping -c4 google.com &> /dev/null if [ $? -eq 0 ];then echo "[`date`] [TP.CORBINA.NET] available, [GOOGLE.RU] available" >> $INETFILE exit 0 else echo "[`date`] [GOOGLE.RU] not available, try again (after NETWORK daemon restart)" >> $INETFILE /etc/rc.d/xl2tpd restart sleep 10 ping -c4 google.com &> /dev/null if [ $? -eq 0 ];then echo "[`date`] [TP.CORBINA.NET] available, [GOOGLE.RU] available" >> $INETFILE exit 0 else echo "[`date`] [TP.CORBINA.NET] not available, [GOOGLE.RU] not available, try letter" >> $INETFILE exit 0 fi fi |
werlock |
|
Темы:
7
Сообщения:
29
Участник с: 03 января 2010
|
Господа ! А никто не делал pkgbuild для http://code.google.com/p/vpnpptp/ Сильно бы помог по идее с Beeline-Corbina |
trustno1 |
|
Темы:
0
Сообщения:
2
Участник с: 11 января 2011
|
bobart Благодарю за скрипт. #!/bin/sh INETFILE=~/.conncheck.corbina.log ping -c 4 -w 10 tp.corbina.net &> /dev/null || /etc/rc.d/network restart && ping -c4 google.com &> /dev/null if [ $? -eq 0 ];then echo "[`date`] [TP.CORBINA.NET] available, [GOOGLE.RU] available" >> $INETFILE exit 0 else echo "[`date`] [GOOGLE.RU] not available, try again (after NETWORK daemon restart)" >> $INETFILE /etc/rc.d/openl2tp stop sleep 4 /etc/rc.d/openl2tp stop sleep 1 /etc/rc.d/openl2tp start sleep 15 /etc/rc.d/udpxy restart sleep 1 ping -c4 google.com &> /dev/null if [ $? -eq 0 ];then echo "[`date`] [TP.CORBINA.NET] available, [GOOGLE.RU] available" >> $INETFILE exit 0 else echo "[`date`] [TP.CORBINA.NET] not available, [GOOGLE.RU] not available, try letter" >> $INETFILE exit 0 fi fi |
bobart |
|
Темы:
38
Сообщения:
2537
Участник с: 28 ноября 2009
|
PoZiTPoH'а благодарите, скорее. Подолью масла в огонь, не удержусь. Корбина, вообще - головная боль. Появилась возможность и я переключился к другому провайдеру, вот так. Сижу с IP-static и в ус не дую, без этих vpn'ов и прочей лабуды. Так что, если есть возможность … По делу: почему не используете xl2tpd? Ладно. Не понял, почему в скрипте дважды openl2tp stop через sleep 4? Почему просто не #!/bin/sh INETFILE=~/.conncheck.corbina.log ping -c 4 -w 10 tp.corbina.net &> /dev/null || /etc/rc.d/network restart && ping -c 4 google.com &> /dev/null if [ $? -eq 0 ];then echo "[`date`] [TP.CORBINA.NET] available, [GOOGLE.RU] available" >> $INETFILE exit 0 else echo "[`date`] [GOOGLE.RU] not available, try again (after NETWORK daemon restart)" >> $INETFILE /etc/rc.d/openl2tp stop sleep 1 /etc/rc.d/openl2tp start sleep 30 ping -c 4 google.com &> /dev/null if [ $? -eq 0 ];then echo "[`date`] [TP.CORBINA.NET] available, [GOOGLE.RU] available" >> $INETFILE exit 0 else echo "[`date`] [TP.CORBINA.NET] not available, [GOOGLE.RU] not available, try letter" >> $INETFILE exit 0 fi fi Просто с корбиной всё запущено, то ppp0 отвалится, а tp.corbina.net при этом пингуется, то dns-сервера перестают отвечать и не пингуется tp.corbina.net - и тогда только сеть рестартить и остаётся. Вообще, ставьте xl2tpd - выше всё описано, и вроде должно быть понятно. Кстати, после того как я прописал маршруты в /etc/rc.conf (выше в теме всё это есть), ppp0 стал подниматься быстрее и как-то стабильнее, чтоли.., или мне так показалось? Вобщем, для меня это уже не актуально. ps. По скрипту: надо постоянно практиковать, а так, от случая к случаю, забывается. Может-быть, PoZiTPoH что подскажет. |
pztrn |
|
Темы:
23
Сообщения:
1436
Участник с: 20 сентября 2009
|
bobart:D стоит только написать один сложный скрипт и пару-тройку раз помочь, как о ABSG забывают :D |
trustno1 |
|
Темы:
0
Сообщения:
2
Участник с: 11 января 2011
|
По делу: почему не используете xl2tpd?bobart Всё просто, xl2tpd не завелся сразу после изменений со стороны провайдера, хотя всё делалось как всегда. Потом спустя какое то был настроен openl2td, скорость выше, все работает терпимо. Udpxy это замена igmproxy по сути, работает иначе, но смысл тот же - прием и раздача IPTV в локальную сеть. Эти sleep потому что оно не выгружается как надо, иногда нужно сделать повторный stop. Возможности? Перейти на что еще? - сколько угодно в моем регионе, но пока работает, будут еще проблемы можно будет подумать и потом не думаю что при переходе не возникнет других проблем на другом провайдере(у другого провайдера). Не похоже на то чтобы PoZiTPoH горел желанием помочь, вы долго правили скрипт и поэтому была надежда что смогли бы немного допилить его. |
bobart |
|
Темы:
38
Сообщения:
2537
Участник с: 28 ноября 2009
|
А /etc/rc.d/openl2tp restart - так работает? Вообще, перечитайте всю тему, с первой страницы, прочувствуйте, проникнитесь.. Там и про IPTV есть. Не понимаю пока, как это “xl2tpd не завелся сразу после изменений со стороны провайдера” - что они там ещё придумали? Как я понимаю, настройки стандартные для всех, различаются только dns-сервера и районные (дефолтные) шлюзы. Отмотайте пару, или страницу назад: там рабочий конфиг для xl2tpd, плюс в начале темы h4tr3d дал совет насчёт метрик, можете воспользоваться. Но это к нашему скрипту непосредственного отношения не имеет, понятно. Повторяю, openl2td я не настраивал (в чём разница?), провайдер сейчас другой, так что играю втёмную и касательно скрипта: свою голову тоже подключайте, все команды вам известны, экспериментируйте. На пальцах: скрипт-то, по-любому, в кроне, запустилось-не запустилось - он будет каждые 5 минут тупо долбиться к корбине. Обратите внимание, sleep можно увеличить, или сколько ему там надо отсыпаться, чтобы приконнектиться, полчаса? Последнее вообще не понял: вы хотите, если не поднялся ppp0 по l2tp, просто автоматом перепрыгивать на vpn? Как-бы “pon provider” намекает. ps. PoZiTPoH - злой следователь, bobart - добрый. Шутка. |