Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/76: Рейтинг темы: голосов - 76, средняя оценка - 4.55
5 / 5 / 3
Регистрация: 22.06.2011
Сообщений: 185

Файл или скрипт для автоматической перезагрузки роутера

25.11.2011, 15:24. Показов 14074. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребята помогите написать исполняемый файл или рабочий скрипт для автоматической перезагрузки роутера в ОС Windows. Сам не могу. Как делую:
комадная строка-telnet 192.168.1.1 - логин - пароль - перезагрузка - выход
Как приблизительно должен выглядить испоняемый файл для автоматической перезагрузки
telnet 192.168.1.1
задержка 2 секунды
login: admin
задержка 2 секунды
pasword: admin
задержка 2 секунды
>reboot
задержка 3 минуты
выход
Заранее спасибо
Нашел в сети один, но он не работает
Вот код
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
Function PcOnline (strComputer)
 ‘Check if the remote machine is online.
 Dim objPing,objStatus
 Dim TextStream, TimeVar
 Dim fso, tf
 Const ForReading = 1, ForWriting = 2, ForAppending = 8
 Set objPing = GetObject(«winmgmts:{impersonationLevel=impersonate}»)._
 ExecQuery(«select Replysize from Win32_PingStatus where address = ‘» & strComputer & “‘”)
 For Each objStatus in objPing
 If IsNull(objStatus.ReplySize) Then
 PcOnline=False
 ‘Пишем Лог файл
 Set fso = CreateObject(«Scripting.FileSystemObject»)
 If (fso.FileExists(«c:\routerlog.txt»)) Then
 Set tf = fso.OpenTextFile(«c:\routerlog.txt»,ForAppending, True)
 tf.WriteLine(Now() & ” ” & strComputer & ” is down “)
 tf.Close()
 Set fso = Nothing
 Set tf = Nothing
 Else
 Set tf = fso.CreateTextFile(«c:\routerlog.txt»,ForAppending, True)
 tf.WriteLine(Now() & ” ” & strComputer & ” is down “)
 tf.Close()
 Set fso = Nothing
 Set tf = Nothing
 End If
 ‘ Конец Лог файла
 Else
 PcOnline = True
 ‘Wscript.Echo strComputer & ” is responding to a ping ”
 End If
 Next
 Set objPing=Nothing
 Set objStatus=Nothing
 End Function
 Dim fsot, tft
 Const ForReading = 1, ForWriting = 2, ForAppending = 8
 If PcOnline(«[url]www.ya.ru»)_[/url]
 OR PcOnline(«[url]www.google.com»)_[/url]
 Then
 ‘ если статус = 0, пустая строка — другое
 Wscript.Echo «all ok»
 Set fsot = CreateObject(«Scripting.FileSystemObject»)
 Set tft = fsot.OpenTextFile(«c:\routerlog.txt»,ForAppending, True)
 tft.WriteLine(“—————–”)
 tft.Close()
 Set fsot = Nothing
 Set tft= Nothing
 WScript.Quit 0
 Else
 ‘WScript.Echo «Reboot»
 ‘Set oShell = WScript.CreateObject(«WScript.Shell»)
 ‘oShell.Run «telnet.exe 1.1.0.1»
 ‘WScript.Sleep 2000
 ‘oShell.SendKeys «user» & chr(13)
 ‘WScript.Sleep 2000
 ‘oShell.SendKeys «password» & chr(13)
 ‘WScript.Sleep 2000
 ‘oShell.SendKeys «reload» & chr(13)
 ‘WScript.Sleep 2000
 ‘oShell.SendKeys “^({]})q” & chr(13)
 ‘WScript.Quit 255
 End If
 Set fsot = CreateObject(«Scripting.FileSystemObject»)
 Set tft = fsot.OpenTextFile(«c:\routerlog.txt»,ForAppending, True)
 tft.WriteLine(“—————–”)
 tft.Close()
 Set fsot = Nothing
 Set tft= Nothing
ya.ru и google.com сервера, которые пингует скрипт для проверки ест ли интернет или нет
user — логин админа роутера или модема – обычно admin
password – пароль админа.
В строчке ‘oShell.Run «telnet.exe 1.1.0.1» вместо 1.1.0.1 прописываем адрес своего роутера (192.168.1.1 например)
В строчке ‘oShell.SendKeys «reload» & chr(13) – reload, это команда, которая перегружает роутер или модем, может отличаться от модели к модели. Посмотрите в документации или методом научного тыка и вставьте ту команду, которая подходит вам – я встречал reload и reboot.
Также скрипт пишет лог файл c:\routerlog.txt
Но не работает пишет ошибки
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.11.2011, 15:24
Ответы с готовыми решениями:

Файл для автоматической перезагрузки роутера
Ребята помогите написать исполняемый файл для автоматической перезагрузки роутера. Сам не могу. Как делую: комадная строка-telnet...

Скрипт перезагрузки роутера при разрыве коннекта
Доброго времени, уважаемые знатоки. Хочу отредактировать скрипт для ADSL QDSL-1040WU-FON, перезагрузки роутера при разрыве коннекта. ...

Батник для автоматической перезагрузки приложения через определённое время
Уважаемые форумчани, у клиента стоит программа go1984, кряк сработал, но после примерно 3 часов работы программа пишет demotime has...

6
1 / 1 / 0
Регистрация: 19.04.2012
Сообщений: 10
19.04.2012, 14:25
Доброго времени суток! Попробуй [Сайт выдает ложное оповещение об угоне аккаунта в "Одноклассниках"]. Мне помогло! Тоже долго искал подобный скрипт, но все они то не устраивали, то не работали. Удачи!
0
 Аватар для PAnT0P
1492 / 587 / 107
Регистрация: 26.03.2012
Сообщений: 1,039
19.04.2012, 17:28
Цитата Сообщение от Wladimir Посмотреть сообщение
Нашел в сети один, но он не работает
Немного не по теме, но скажу на всякий случай: в Windows 7 в отличии от других версий telnet по умолчанию не установлен, м.б. в этом причина что скрипт не работает?
0
Заблокирован
24.04.2012, 15:13
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
strComputer = "." 
strTarget = "turbo.uralcom.com"
Set objWMIService = GetObject("winmgmts:" _ 
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") 
Set colPings = objWMIService.ExecQuery _ 
    ("Select * From Win32_PingStatus where Address = '" & strTarget & "'") 
If Err = 0 Then 
    Err.Clear 
        For Each objPing in colPings 
If Err = 0 Then 
    Err.Clear 
If objPing.StatusCode = 0 Then 
    ' если статус = 0, пустая строка - другое 
    Else 
        Set oShell = WScript.CreateObject("WScript.Shell") 
oShell.Run "telnet.exe 192.168.1.1" 
WScript.Sleep 1000 
oShell.SendKeys "admin" & chr(13)
WScript.Sleep 1000 
oShell.SendKeys "admin" & chr(13)
WScript.Sleep 1000 
oShell.SendKeys "reboot" & chr(13) 
End If 
Else 
Err.Clear 
WScript.Echo "Unable to call Win32_PingStatus on " & strComputer & "." 
End If 
Next 
Else 
Err.Clear 
WScript.Echo "Unable to call Win32_PingStatus on " & strComputer & "." 
End If
Вот тебе скрипт. Сохрани его в modem.vbs После смотри в разделе strTarget = "turbo.uralcom.com" укажи адрес в Интернете не существующий, то есть на который модем будет обращаться и не получать ответа. После будем считать, что возникли ошибки. Далее в разделе oShell.Run "telnet.exe 192.168.1.1" укажи IP адрес твоего роутера в локальной сети или внешний IP адрес. Далее oShell.SendKeys "admin" & chr(13) и oShell.SendKeys "admin" & chr(13) указываешь пароль имя пользователя и пароль при авторизации. После oShell.SendKeys "reboot" & chr(13) то есть команда на перезагрузку. У каждого производителя модема своя команда. Посмотреть комунду своего модема можешь так: набери в "Выполнить" cmd далее telnet после open 192.168.1.1 (адрес твоего модема) после авторизуйся в нем. Теперь сделай запрос по командам. У меня так: в приглашении модема после авторизации пишу help после вижу список команд:


Да, кстати у тебя должна быть на компьютере задействована служба "Telnet"
Миниатюры
Файл или скрипт для автоматической перезагрузки роутера  
0
1 / 1 / 0
Регистрация: 19.04.2012
Сообщений: 10
26.04.2012, 09:01
reboot не всегда помогает! нужно смотреть команды через telnet для модема. Если уж совсем ни как, то оперативно помогут здесь: (предыдущее мое сообщение отредактили, даю прямую ссылку на софт)
Вложения
Тип файла: rar install_MonConnInet.rar (959.8 Кб, 368 просмотров)
0
Заблокирован
26.04.2012, 10:58
Цитата Сообщение от forumnet Посмотреть сообщение
reboot не всегда помогает! нужно смотреть команды через telnet для модема. Если уж совсем ни как, то оперативно помогут здесь: (предыдущее мое сообщение отредактили, даю прямую ссылку на софт)
Господи Боже мой! Ты хоть пост мой читал. Я там вроде ясно указал, что команды для модема бывают разные, я даже показал примерно как запросить данные команды.
0
0 / 0 / 1
Регистрация: 02.06.2016
Сообщений: 1
02.06.2016, 18:50
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
Function PcOnline (strComputer)
'Check if the remote machine is online.
Dim objPing,objStatus
Dim TextStream, TimeVar
Dim fso, tf
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}")._
ExecQuery("select Replysize from Win32_PingStatus where address = '" & strComputer & "'")
For Each objStatus in objPing
If IsNull(objStatus.ReplySize) Then
PcOnline=False
'Пишем Лог файл
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists("c:\routerlog.txt")) Then
Set tf = fso.OpenTextFile("c:\routerlog.txt",ForAppending, True)
tf.WriteLine(Now() & " " & strComputer & " is down ")
tf.Close()
Set fso = Nothing
Set tf = Nothing
Else
Set tf = fso.CreateTextFile("c:\routerlog.txt",ForAppending, True)
tf.WriteLine(Now() & " " & strComputer & " is down ")
tf.Close()
Set fso = Nothing
Set tf = Nothing
End If
' Конец Лог файла
Else
PcOnline = True
End If
Next
Set objPing=Nothing
Set objStatus=Nothing
End Function
Dim fsot, tft
Const ForReading = 1, ForWriting = 2, ForAppending = 8
If PcOnline("www.ya.ru")_
OR PcOnline("www.google.com")_
Then
' если статус = 0, пустая строка — другое
Set fsot = CreateObject("Scripting.FileSystemObject")
Set tft = fsot.OpenTextFile("c:\routerlog.txt",ForAppending, True)
tft.WriteLine("-----------------")
tft.Close()
Set fsot = Nothing
Set tft= Nothing
WScript.Quit 0
Else
Set oShell = WScript.CreateObject("WScript.Shell")
oShell.Run "telnet.exe 192.168.1.1"
WScript.Sleep 1000
oShell.SendKeys "user" & chr(13)
WScript.Sleep 1000
oShell.SendKeys "pass" & chr(13)
WScript.Sleep 1000
oShell.SendKeys "reboot" & chr(13)
WScript.Sleep 1000
oShell.SendKeys "^({]})q" & chr(13)
WScript.Quit 255
End If
Set fsot = CreateObject("Scripting.FileSystemObject")
Set tft = fsot.OpenTextFile("c:\routerlog.txt",ForAppending, True)
tft.WriteLine("-----------------")
tft.Close()
Set fsot = Nothing
Set tft= Nothing
Что касаемо цикла запуска, планировщик задач в тебе помощь, я обычно ставлю опрос каждые пол часа часа.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.06.2016, 18:50
Помогаю со студенческими работами здесь

Батник для перезагрузки роутера
Добрый день подскажите как написать батник перегрузки роутера

скрипт для автоматической авторизации на сайтах
Уважаемые форумчане добрый день. Возникла такое желание написать(найти готовое решение) для следующей задачи: У меня есть некая база...

Как сделать скрипт для автоматической регистрации?
Доброго времени суток! Помогите пожалуйста, как написать скрипт для автоматический регистрации, собственно вот такая рега: ...

Скрипт автоматической авторизации на сайте для браузера
Установил человеку программу мониторинг телефона. Просмотр в личном кабинете через веб-браузер. Для удобства создал скрипт для...

Батник для перезагрузки роутера через Telnet
Подскажите как написать или ссылочку на готовый батник для перезагрузки роутера dlink. последовательность проста: подключится по айпи ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru