This page has been robot translated, sorry for typos if any. Original content here.

Скрипт-пінговалка для підтримки Gprs-з'єднання

Скрипт-пинговалка для поддержания Gprs-соединения

Досить часто оператори (і провайдери) пропонують дешевий інтернет - або взагалі надають анлим.

Але у нас все не як у людей, просто так щастя бути не може.

Часто з'єднання розривається або "затикається" "залипає" (коли з'єднання не розривається, але дані не йдуть).

Всім, хто стикається з цією проблемою - допоможе простенький скрипт-пінговалочка.

Його сенс: періодично пінг адресу. При відсутності пинга (коли канал "залипнув" або розірвався) відбувається перепідключення.

Запустивши цей скрипт, можна бути впевненим у підтримці працездатності підключення.

Порядок дій

1. Створюємо в блокноті cmd-файл (наприклад, pinger.cmd) з наступним змістом:

 @echo off
 echo% date%% time% --- STARTED --- >> pinger.log
 set Try = 1

 rem Всі налаштування винесені в цей блок

 rem ім'я підключення
 set DialName = Life
 rem Логін
 set Login = Login
 rem Пароль
 set Pass = Password
 rem таймаут пінгу в мс
 set TimeOut = 10000
 rem кількість спроб пинга
 set MaxPing = 5
 rem пауза в с
 set Pause = 30
 rem адреса хоста для пинга
 set host = ya.ru
 rem свій телефонний номер
 set PhoneNum = 80631234567

 : start
 echo.
 echo start ping
 ping% host% -n 1 -w% TimeOut%
 if errorlevel = 1 goto bad
 goto ok

 : ping
 echo.
 ping% host% -n 1 -w% TimeOut%
 if not errorlevel = 1 goto ok
 set / a Try =% Try% + 1
 if% Try% geq% MaxPing% goto bad
 goto ping

 : ok
 echo.
 echo ALL RIGHT
 goto end

 : bad
 set / a Try = 1
 echo.
 echo BAD CONNECT
 echo% date%% time% -!  Trouble, reconnect! - >> pinger.log
 rasdial% DialName% / disconnect
 rasdial% DialName% / phone:% PhoneNum%
 rasdial% DialName%% Login%% Pass%
 if errorlevel = 1 goto bad
 goto ping

 : end
 set / a Try = 1
 echo.
 choice / C: PRDE / T: P, 30 / N Pause 30 seconds.  [P] ing [R] econnect [D] isconnect [E] xit?
 rem echo.
 rem echo.
 goto% ERRORLEVEL%
 : 1
 goto ping
 : 2
 goto bad
 : 3
 rasdial% DialName% / disconnect
 : 4
 echo% date%% time% == Exit script == >> pinger.log

В даном файлі потрібно замінити ОБОВ'ЯЗКОВО:

  • ім'я підключення (set DialName = Life) [дивимося ім'я: Пуск - Налаштування - Мережеві підключення - ім'я Вашого підключення]
  • логін / пароль (set Login = Login set Pass = Password) - якщо це потрібно для установки з'єднання

В даном файлі потрібно замінити (при бажанні):

  • адреса хоста, який пінгуєтся (set host = ya.ru)
  • таймаут пінгу (set TimeOut = 10000)
  • кількість спроб пинга (set MaxPing = 5) після якого буде перепідключення
  • інтервал перевірки з'єднання (set Pause = 30)

2. Поруч з pinger.cmd кладемо "choice.com" з архіву choise.rar.

3. Запускаємо і радіємо життю - пінговалка встановить з'єднання і буде підтримувати його в робочому стані.

!!! Аналогічний скрипт "pinger" для Linux для підтримки виділенки pinger.zip.

choise.rar (2.88 кілобайт) choise.rar (2.88 кілобайт) choise.rar (2.88 кілобайт) Virus Free by KAV
pinger.zip (684 байт) pinger.zip (684 байт) pinger.zip (684 байт) Virus Free by KAV