На старых прошивках маршрутизаторов Asus часто замечал, что не полностью открывается веб-интерфейс, отображается не все меню, соответственно настроить его невозможно и при удаленном доступе перезагрузить тоже нельзя, так как не отображается кнопка перезагрузки.
Поэтому взял маршрутизатор Asus RT-N12E, запустил сниффер Wireshark, открыл веб-интерфейс маршрутизатора и нажал кнопку перезагрузки.
В перехваченных пакетах было видно что для перезагрузки выполняется файл Reboot.asp в корневой директории.
Отсюда получился такой скрипт для перезагрузки маршрутизаторов Asus:
#!/bin/sh
ROUTER_IP="192.168.1.1"
USERNAME="admin"
PASSWORD="admin"
# exit if router is down
ping -q -c 1 "$ROUTER_IP" > /dev/null || exit
curl --basic --user "$USERNAME:$PASSWORD" -A "Mozilla/4.73 [en] (X11; U; Linux 2.2.15 i686)" --refer "http://$ROUTER_IP" "$ROUTER_IP/Reboot.asp"
Содержимое скрипта поместим в новый файл, например используя редактор nano («CTRL+X» для выходя и «y» для сохранения изменений):
nano file.sh
Сделаем его исполняемым:
chmod 777 file.sh
После этого выполним:
./file.sh
Также можно в браузере вручную открыть ссылку http://192.168.1.1/Reboot.asp если необходимо один раз перезагрузить маршрутизатор.