2

У меня есть устройство, которое доступно только через беспроводную связь. По умолчанию он запускает беспроводную сеть, к которой я могу подключиться. Проблема в том, что нет специального доступа в Интернет.
Поэтому я подключаю его к маршрутизатору с помощью команд (это GNU / Linux):

iwconfig ath0 mode managed essid "ESSID"
ifconfig ath0 192.168.1.25 netmask 255.255.255.0 up
route add default gw 192.168.1.1

Я хочу добавить его для запуска скрипта, но я не хочу быть заблокированным на устройстве навсегда, если что-то случится с маршрутизатором (он действительно старый).
Есть ли способ проверить, не удалось ли установить соединение, и создать специальное решение, если оно не удалось?

1 ответ1

1

Установите сценарий запуска по умолчанию для использования маршрутизатора. Вы уже показали, как это сделать.
Рассмотрите маршрутизатор как основное соединение.

Создайте сценарий, который будет запускаться с помощью crontab каждые X минут. Скрипт пингует некоторый интернет-адрес, например 8.8.8.8. В случае сбоя проверки связи, он запустит сценарий для настройки специального соединения.

Проверьте настройки, выключив маршрутизатор.

Единственная оставшаяся проблема - что произойдет, если вы как-то ошиблись в настройках? Есть ли способ перезагрузить машину? Или любой другой вариант?
В этом случае я хотел бы рассмотреть возможность использования другого компьютера для проверки настроек, и только если вы уверены, что все работает, скопируйте настройки на требуемое устройство.

РЕДАКТИРОВАТЬ: чтобы проверить, является ли команда bash успешной командой bash, используйте $?

Например,

ping 8.8.8.8
if [ $? -eq 0 ]
then
    echo "0 means command success"
else
    echo "non 0 means not success failure, specific commands have exact code for each of failure messages"
fi

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .