Написал скрипт для отключения/включения wi-fi на роутере dir-300 из консоли. Работает просто, параметры up и down. Для большинства практического смысла не имеет, а я часто включаю, выключаю вай-фай ну и для практики с curl. В методе POST передается слишком много параметров, я часть порубил, часть оставил.
#!/bin/bash #Адрес веб-интерфейса роутера routerUrl=http://192.168.0.1 routerLogin=user routerPassword=derpasswort #ssid сети, вместо пробелов "+" wlanSsid=halyava curl -d "ACTION_POST=LOGIN" \ -d "FILECODE=" \ -d "VERIFICATION_CODE=" \ -d "LOGIN_USER="$routerLogin"" \ -d "LOGIN_PASSWD="$routerPassword"" \ -d "login=Log+In+" \ -d "VER_CODE=" \ ""$routerUrl"/st_device.php" > /dev/null case "$1" in up) curl -d "ACTION_POST=final" \ -d "f_enable=1" \ -d "f_wps_enable=1" \ -d "f_ssid="$wlanSsid"" \ -d "f_wlan_sch=0" \ -d "f_super_g=" \ -d "f_xr=" \ -d "f_txrate=0" \ -d "f_wmm_enable=0" \ -d "f_ap_hidden=0" \ -d "f_authentication=5" \ -d "f_cipher=2" \ -d "f_wpa_psk_type=1" \ -d "f_wpa_psk="$routerPassword"" \ "$routerUrl/bsc_wlan.php" > /dev/null;; down) curl -d "ACTION_POST=final" \ -d "f_enable=0" \ -d "f_wps_enable=1" \ -d "f_ssid="$wlanSsid"" \ -d "f_super_g=" \ -d "f_xr=" \ -d "f_txrate=0" \ -d "f_wmm_enable=0" \ -d "f_ap_hidden=0" \ -d "f_authentication=5" \ -d "f_cipher=2" \ -d "f_wpa_psk_type=1" \ -d "f_wpa_psk="$routerPassword"" \ "$routerUrl/bsc_wlan.php" > /dev/null;; *) echo "Please use up/down script options for managing wlan in DIR-300";; esac |
chmod +X routerwlan
routerwlan down
Если я правильно понял, пароль на администрирование маршрутизатора соответствует паролю на беспроводную сеть?
и не помню уже даже, но видимо да)