Форум программистов, компьютерный форум, киберфорум
VBScript/JScript/WSH/WMI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.60/70: Рейтинг темы: голосов - 70, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
VBS

Скрипт для перезагрузки роутера по значению внешнего IP

11.01.2021, 23:52. Показов 16174. Ответов 227
Метки vbs (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток! Ребята, нужен скрипт перезагрузки роутера, если первый октет внешнего адреса имеет значение 100. Перезагружать пока первый октет имеет значение 100 (или можно ограничиться 10 перезагрузок с проверкой и затем, если не изменился, то повторить перезагрузку через некоторое время).
Я не программист. Поискав, нашел некоторые намётки. Можно через TELNET организовать перезагрузку, кусочек скрипта уже опробовал, работает. А вот с проверкой условия труднее. Есть вроде бы вариант через IFCONFIG получить внешний ppp0 inet addr.
Не пинайте, если не в той теме обратился.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.01.2021, 23:52
Ответы с готовыми решениями:

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

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

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

227
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
14.01.2021, 23:29  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от FlasherX Посмотреть сообщение
А зачем ориентироваться конкретно по 100?
Потому что блок адресов на 100 - это плохие (мягко говоря), остальные мне все хорошо. Или вопрос в том, чтобы иначе как-то обходить их?

Добавлено через 1 час 56 минут
FlasherX, можно попросить прокомментировать ваш последний скрипт? В нем, если я правильно понял, меняется локальный адрес. Но зачем мне это? Моя цель получить другой внешний адрес.
0
7001 / 2885 / 1110
Регистрация: 06.06.2017
Сообщений: 9,809
16.01.2021, 15:27
Цитата Сообщение от KOHTAKT Посмотреть сообщение
Или вопрос в том
Не, в этом.
Цитата Сообщение от KOHTAKT Посмотреть сообщение
Моя цель получить другой внешний адрес.
А rasdial не помогает? Там я ещё -en забыл дописать.
0
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
16.01.2021, 21:08  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
А rasdial не помогает?
Не помогает. Выдает сообщение "отсутствуют подключения". И - en тоже погоды не делает.
0
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
18.01.2021, 22:10  [ТС]
У всех идеи иссякли?

Добавлено через 8 минут
Тут ещё интересный факт всплыл: как только я попадаю на адрес начинающийся на 46, то почти всегда примерно через 5 минут прерывается интернет. Восстанавливается только перезагрузкой рутера. Если на таком адресе редко когда останется соединение, то это счастье, такие адреса самые качественные.
0
7001 / 2885 / 1110
Регистрация: 06.06.2017
Сообщений: 9,809
19.01.2021, 10:01
KOHTAKT, хотите — подсовывайте свою функцию. Но 30 сек. ждать после ребута — не многовато ли?
Цитата Сообщение от KOHTAKT Посмотреть сообщение
такие адреса самые качественные.
Ну так их всё равно исключать надо, если нет желания попадать на отключение. Не так ли?
0
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
19.01.2021, 20:20  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
30 сек. ждать после ребута — не многовато ли?
Это малозначимый фактор. После включения компа всё-равно какое-то время проходит, прежде чем за ним заниматься. Ну а если с первой попытки не зацепится за нужный адрес, то можно на другой пока чайку себе сообразить. Обычно в десять перезагрузок роутера укладывается поиск желаемого адреса, просто нужно постоянно сидеть над этим занятием, хотелось бы другим заниматься, пока всё настроится автоматически.
0
7001 / 2885 / 1110
Регистрация: 06.06.2017
Сообщений: 9,809
20.01.2021, 00:38
KOHTAKT, всё-таки не нравятся мне эти свистопляски с системной telnet. Может, через plink лучше? Там сразу параметры авторизации задаются. И подавитель интерактива -batch есть.
0
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
20.01.2021, 20:26  [ТС]
FlasherX, я конечно понимаю, что вы мне как-то стараетесь помочь, возможно, подкидываете умные идеи. И вам приятно разговаривать с умным человеком в своём лице. А я плохой вам собеседник. )) И мне без разницы, через что ребутиться, пусть и не телнет. Главное, чтобы по условию происходило.
0
7001 / 2885 / 1110
Регистрация: 06.06.2017
Сообщений: 9,809
20.01.2021, 23:23
Цитата Сообщение от KOHTAKT Посмотреть сообщение
И вам приятно разговаривать с умным человеком в своём лице.
В своём лице — это как?

Для начала проверьте, как в cmd из папки с прогой работают команды типа:
plink -batch -noagent LOGIN@192.168.0.1 -pw PASSWORD reboot
plink -batch -noagent -l LOGIN -pw PASSWORD 192.168.0.1 exec reboot
plink -batch LOGIN@192.168.0.1 -pw PASSWORD halt
0
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
20.01.2021, 23:44  [ТС]
[quote="FlasherX;15197728"]В своём лице — это как?[/quo

Уважаемый, это равнозначно, что сам с собой! ))

Добавлено через 41 секунду
Цитата Сообщение от FlasherX Посмотреть сообщение
В своём лице — это как?
Уважаемый, это равнозначно, что сам с собой! ))
0
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
21.01.2021, 00:04  [ТС]
FlasherX, вот результат
Миниатюры
Скрипт для перезагрузки роутера по значению внешнего IP  
0
7001 / 2885 / 1110
Регистрация: 06.06.2017
Сообщений: 9,809
21.01.2021, 00:16
Цитата Сообщение от KOHTAKT Посмотреть сообщение
равнозначно, что сам с собой!
Вот это обидно. Это как шизоидом обозвать...

Цитата Сообщение от KOHTAKT Посмотреть сообщение
вот результат
А IP-шник не .1.1 в конце?
0
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
21.01.2021, 20:32  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
Вот это обидно. Это как шизоидом обозвать...
Ниразу не думал подобного в ваш адрес! Просто имел ввиду, что когда вы мысль излагаете в нашем диалоге, то только сами знаете её смысл.

Цитата Сообщение от FlasherX Посмотреть сообщение
А IP-шник не .1.1 в конце?
Нет, обычно последние октеты 2-х или 3-х значные. Н-р, сейчас 100.104.78.96
Кстати, заметил ещё, что второй октет имеет значения только 104 или 105.
0
7001 / 2885 / 1110
Регистрация: 06.06.2017
Сообщений: 9,809
21.01.2021, 21:34
Цитата Сообщение от KOHTAKT Посмотреть сообщение
то только сами знаете её смысл
Откуда ж мне знать-то о том, кто что знает и понимает? Я далее привёл примеры, из которых, полагаю, всё становится понятно как день.

Цитата Сообщение от KOHTAKT Посмотреть сообщение
Нет
Речь про IP-шник роутера, а не удалённый.
0
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
21.01.2021, 23:47  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
IP-шник роутера
.0.1 Я же на скриншотах выше присылал команды.

А мне так до сих пор ничего и не понятно. Я же писал вначале, что не являюсь программистом. Могу осилить некоторые несложные конструкции, но для такой задачи явно не достаточно познаний в языках программирования. Хотел по кускам скрипт слепить, но нашел и опробовал только перезагрузку через Телнет, а проверки условий с удаленным адресом для себя не нашел.
0
7001 / 2885 / 1110
Регистрация: 06.06.2017
Сообщений: 9,809
22.01.2021, 06:17
Цитата Сообщение от KOHTAKT Посмотреть сообщение
а проверки условий с удаленным адресом для себя не нашел.
Я же код привёл. Разница будет только в 5 строке с заменой на команду plink, с которой стоит сперва разобраться, либо с добавкой кода приведённой функции:
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
IP = 100
Set oHTTP = CreateObject("Msxml2.XMLHTTP")
Set oWSH  = CreateObject("WScript.Shell")
oWSH.Run "cmd /q/k title reboot router": WSH.Sleep 50
While Split(IP, ".")(0) = 100
   Send 0, "telnet 192.168.0.1~"
   Send 300, "admin~" ' логин
   Send 100, "passw~" ' пароль
   Send 100, "reboot~"
   Send 30000, "q~"
   With oHTTP
      .Open "GET", "http://ipinfo.io/ip", 0
      .Send 0 : IP = .ResponseText : .Abort
   End With
Wend
Send 0, "exit~"
Set oHTTP = Nothing
Set oWSH  = Nothing
 
Sub Send(ms, command)
   WSH.Sleep ms: oWSH.AppActivate "reboot router"
   WSH.Sleep 20: oWSH.SendKeys command
End Sub
Касаемо 30000 (30 сек) в 10 строке я бы всё же хорошенько подумал над уменьшением.

Потестите ещё такие команды:
plink -v -ssh -l admin -pw 12345 192.168.0.1
plink -telnet 192.168.0.1 -batch "admin;12345;reboot"
plink -telnet 192.168.0.1 "admin^M12345^Mreboot^M"
plink -telnet 192.168.0.1 "admin\n\n12345\n\nreboot\n\n"
0
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
22.01.2021, 20:13  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
Касаемо 30000 (30 сек) в 10 строке я бы всё же хорошенько подумал над уменьшением.
Знать бы что ожидается, я бы тоже подумал. Осмелюсь предположить, что это время на перезагрузку роутера?

Цитата Сообщение от FlasherX Посмотреть сообщение
Потестите ещё такие команды:
Все команды с telnet запрашивали введения логин/пароль
Миниатюры
Скрипт для перезагрузки роутера по значению внешнего IP  
0
7001 / 2885 / 1110
Регистрация: 06.06.2017
Сообщений: 9,809
22.01.2021, 20:46
Цитата Сообщение от KOHTAKT Посмотреть сообщение
что это время на перезагрузку роутера?
Конечно.
Цитата Сообщение от KOHTAKT Посмотреть сообщение
Все команды с telnet запрашивали введения логин/пароль
Т. е. и логин и пароль самому пришлось вводить?
0
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
22.01.2021, 21:10
Цитата Сообщение от FlasherX Посмотреть сообщение
и логин и пароль самому пришлось вводить?
так если ТС опять же не меняет на свои, а вводит пример-шаблон: [...-l admin -pw 12345...]
0
0 / 0 / 0
Регистрация: 11.01.2021
Сообщений: 118
22.01.2021, 21:44  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
Т. е. и логин и пароль самому пришлось вводить?
да

А вот результат работы последнего вашего скрипта. При этом предпоследняя строка на первом скриншоте появляется уже после выполнения сценария. Выполнение так и проходит в 2-х окнах, второе появляется само, когда выполняется скрипт.
Кстати, здесь я логин/пароль не вводил, всё прошло автоматически.
Миниатюры
Скрипт для перезагрузки роутера по значению внешнего IP   Скрипт для перезагрузки роутера по значению внешнего IP  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.01.2021, 21:44

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

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

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

VBS скрипт для перезагрузки ALTUSEN
Доброго всем вечера. Толковые люди данного форума подскажите кто чем может. Ни как не могу разобратся с вопросом. Предисловие: Есть...

Как написать скрипт для автоматического входа на сайт роутера?
Возможно ли на PHP написать какой-нибудь скрипт для входа на сайт роутера (192.168.1.1), ввод логина и пароля: admin, и нажатие...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы Всем привет! Хочу поделиться свежим (и довольно. . .
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения: - добавлена многоязычность - добавлено снятие скриншотов - добавлено поддержание бафов хождения по воде (для жреца, дк и шамана) - и так, по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru