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

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

25.11.2011, 15:24. Показов 14130. Ответов 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
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru