Илья Ганжин Posted July 27, 2021 Share Posted July 27, 2021 Добрый день, в связи с тем что в прошивке для Wireless ISP не предусмотрено создание резервных подключений возник вопрос, можно ли из OPKG периодически сканировать доступные Wi-Fi сети и подключаться к ним? Quote Link to comment Share on other sites More sharing options...
r13 Posted July 27, 2021 Share Posted July 27, 2021 1 час назад, GanjaKyp сказал: Добрый день, в связи с тем что в прошивке для Wireless ISP не предусмотрено создание резервных подключений возник вопрос, можно ли из OPKG периодически сканировать доступные Wi-Fi сети и подключаться к ним? Можно конечно, show site-survey WifiMasterX Покажет окружающие точки, ну а дальше перенастраивать интерфейс WISP Quote Link to comment Share on other sites More sharing options...
Илья Ганжин Posted July 27, 2021 Author Share Posted July 27, 2021 Пишет ошибку -sh: show: not found Quote Link to comment Share on other sites More sharing options...
r13 Posted July 27, 2021 Share Posted July 27, 2021 1 минуту назад, GanjaKyp сказал: Пишет ошибку -sh: show: not found Это команды cli, из opkg с cli можно работать например через утилиту обертку ndmq Можно поискать по форкму примеры работы с ней Quote Link to comment Share on other sites More sharing options...
Илья Ганжин Posted July 27, 2021 Author Share Posted July 27, 2021 разобрался c ndmq, а как и куда записывать параметры для подключения к wifi? Quote Link to comment Share on other sites More sharing options...
r13 Posted July 27, 2021 Share Posted July 27, 2021 (edited) 9 минут назад, GanjaKyp сказал: разобрался c ndmq, а как и куда записывать параметры для подключения к wifi? Подключите wisp и посмотрите в конфиге кинетика настройки например для 2.4 секция interface WifiMaster0/WifiStation0 И по этому примеру выбираете какие команды нужно заслать для выбора ssid и установки ключа шифрования Далее все так же через ndmq Edited July 27, 2021 by r13 Quote Link to comment Share on other sites More sharing options...
r13 Posted July 27, 2021 Share Posted July 27, 2021 @GanjaKyp Кстати еще лучше будет сделать не периодическим опросом а используя хуки состояния интерфейса https://github.com/ndmsystems/packages/wiki/Opkg-Component#ndmifstatechangedd Quote Link to comment Share on other sites More sharing options...
Илья Ганжин Posted July 27, 2021 Author Share Posted July 27, 2021 @r13 Наверно не подойдет, потому что мне надо подключаться на резервный канал только когда недоступен основной, если основной доступен то должен быть подключен он. Что то никак не могу понять как через cli подключиться, можете показать на примере? Quote Link to comment Share on other sites More sharing options...
r13 Posted July 27, 2021 Share Posted July 27, 2021 Вечером если только посмотрю, сейчас работа. Quote Link to comment Share on other sites More sharing options...
Илья Ганжин Posted July 27, 2021 Author Share Posted July 27, 2021 Набросал скрипт поиска сети, но не могу разобраться как настроить интерфейс, помогите пожалуйста 🙄 if ndmq -x -p "show site-survey WifiMaster0" | grep -q 'IDNET-88' then echo 'Подключить основной' else echo 'Подключить резервный' fi Quote Link to comment Share on other sites More sharing options...
sergeyk Posted July 27, 2021 Share Posted July 27, 2021 19 минут назад, GanjaKyp сказал: Набросал скрипт поиска сети, но не могу разобраться как настроить интерфейс, помогите пожалуйста Имейте в виду, что каждый запуск "show site-survey" заставляет радиочип сканировать эфир на всех доступных ему частотах. Это нужно, чтобы обнаружить маяки от окружающих точек доступа. В момент сканирования из-за смены канала ваша точка доступа не передаёт пакеты, а значит какие-то доли секунды не работает для ваших клиентов. 1 Quote Link to comment Share on other sites More sharing options...
r13 Posted July 27, 2021 Share Posted July 27, 2021 50 минут назад, GanjaKyp сказал: Набросал скрипт поиска сети, но не могу разобраться как настроить интерфейс, помогите пожалуйста 🙄 if ndmq -x -p "show site-survey WifiMaster0" | grep -q 'IDNET-88' then echo 'Подключить основной' else echo 'Подключить резервный' fi По минимуму получается надо заслать через ndmq такой набор команд: interface WifiMaster0/WifiStation0 down interface WifiMaster0/WifiStation0 authentication wpa-psk {PSK} interface WifiMaster0/WifiStation0 encryption enable interface WifiMaster0/WifiStation0 encryption wpa2 interface WifiMaster0/WifiStation0 ssid {SSID} interface WifiMaster0/WifiStation0 up Заполнив свои ssid, psk ну и шифрование если другое. ЗЫ все же присмотритесь к хук скриптам чтобы постоянно свой скрипт не гонять Quote Link to comment Share on other sites More sharing options...
Art-9 Posted July 27, 2021 Share Posted July 27, 2021 Не проверял; Пример скрипта #!/bin/sh if ! ping -q -c 5 -W 5 1.1.1.1 > /dev/null; then ndmq -p "interface WifiMaster0/WifiStation0 authentication wpa-psk пароль" ndmq -p "interface WifiMaster0/WifiStation0 ssid имя_сети" fi Запускать по расписанию, если за 5 попыток не будет ответа на пинг 1.1.1.1, то сменить пароль и имя сети. По идее сам переподключиться. Quote Link to comment Share on other sites More sharing options...
Art-9 Posted July 27, 2021 Share Posted July 27, 2021 При использование статического IP: #!/bin/sh if ! ping -q -c 5 -W 5 1.1.1.1 > /dev/null; then ndmq -p "interface WifiMaster0/WifiStation0 ip address ip_клиента 255.255.255.0" ndmq -p "interface WifiMaster0/WifiStation0 authentication wpa-psk пароль" ndmq -p "interface WifiMaster0/WifiStation0 ssid имя_сети" ndmq -p "ip route default шлюз_ТД WifiMaster0/WifiStation0" fi Quote Link to comment Share on other sites More sharing options...
Илья Ганжин Posted July 27, 2021 Author Share Posted July 27, 2021 Всем спасибо, получился вот такой скрипт, который я положил в cron.1min. Вроде все работает 😉 if ndmq -x -p "show site-survey WifiMaster0" | grep -q 'IDNET-88' then if ! ndmq -x -p "show interface WifiMaster0/WifiStation0" | grep -q 'IDNET-88' then ndmq -p "interface WifiMaster0/WifiStation0 down" ndmq -p "interface WifiMaster0/WifiStation0 authentication wpa-psk *" ndmq -p "interface WifiMaster0/WifiStation0 ssid IDNET-88" ndmq -p "interface WifiMaster0/WifiStation0 description IDNET-88" ndmq -p "interface WifiMaster0/WifiStation0 up" echo -e "Subject: IDNET-88" |msmtp -t * fi else if ! ndmq -x -p "show interface WifiMaster0/WifiStation0" | grep -q 'idnet-95' then ndmq -p "interface WifiMaster0/WifiStation0 down" ndmq -p "interface WifiMaster0/WifiStation0 authentication wpa-psk *" ndmq -p "interface WifiMaster0/WifiStation0 ssid idnet-95" ndmq -p "interface WifiMaster0/WifiStation0 description idnet-95" ndmq -p "interface WifiMaster0/WifiStation0 up" echo -e "Subject: idnet-95" |msmtp -t * fi fi Quote Link to comment Share on other sites More sharing options...
sergeyk Posted July 27, 2021 Share Posted July 27, 2021 interface WifiMaster0/WifiStation0 down лишняя. Quote Link to comment Share on other sites More sharing options...
Art-9 Posted July 28, 2021 Share Posted July 28, 2021 7 часов назад, GanjaKyp сказал: Всем спасибо, получился вот такой скрипт, который я положил в cron.1min. Вроде все работает 😉 У вас каждую минуту будут потери пакетов в сети Wi-Fi 2.4 и скорее это будут не доли секунд а 1-2 сек., не понятно зачем вообще использовать "show site-survey" - вы не знаете данные Wi-Fi сети к которой подключаетесь как к резервной? Quote Link to comment Share on other sites More sharing options...
Илья Ганжин Posted July 28, 2021 Author Share Posted July 28, 2021 @Art-9 Мне нужно подключаться к резервной только когда основной не доступен, как только он появляется нужно переключаться на него @sergeyk без down иногда не подключается к точке, почему то висит состояние Нет подключения Quote Link to comment Share on other sites More sharing options...
Art-9 Posted July 28, 2021 Share Posted July 28, 2021 1 час назад, GanjaKyp сказал: как только он появляется нужно переключаться на него Ясно, тогда только запуск скрипта как можно реже (насколько возможно). Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.