25 апреля 2011 г.

Сброс внешнего соединения DSL модема

При использовании таких ресурсов, как rapidshare и многим, ему подобным, существуют некоторые ограничения для халяыной скачки, например один большой файл в час. Чтобы обойти подобное ограничение, в большинстве случаев достаточно получить от провайдера новый IP адрес, сбросив внешнее соединение DSL модема.
Базу данных скриптов я нашел здесь. Весьма полезный и любопытный ресурс. Там собраны скрипты для сброса соединения (reconnect) для многих железок. В том числе "засветился" также и для железки, которая у меня была раньше: SMC 7804 (Siemens Gigaset SX541)

curl http://%IP%/cgi-bin/statusprocess.exe -d "var:pvc=0&var:cur_if=10&var:disconnect=Disconnect"
curl http://%IP%/cgi-bin/statusprocess.exe -d "var:pvc=0&var:cur_if=10&var:connect=Connect"
Вся проблема заключалась в том, что даже в виндах подобный скрипт будет работать после того, как человек залогинился в самих настройках модема, ну или скрипт будет работать, если вход в модем не закрыт паролем, что не очень хорошо. Как правильно залогиниться, можно найти в девайсах от этого же производителя, немного поэкспериментировав, что именно подходит.

вот и написал скрипт для такого реконнекта в Linux:

#!/bin/sh
# by Eduard-X
echo "smc7804 reconnector"

wget -q -O /dev/null --post-data="login=admin&pws=YourPassword" http://192.168.2.1/cgi-bin/login.exe  >/dev/null 2>&1
echo "disconnect"
wget -q -O /dev/null --post-data="pvc=1&cur_if=11&dis1=Disconnect" http://192.168.2.1/cgi-bin/statusprocess.exe  >/dev/null 2>&1
sleep 5
echo "connect"
wget -q -O /dev/null --post-data="pvc=1&cur_if=3&con1=Connect" http://192.168.2.1/cgi-bin/statusprocess.exe  >/dev/null 2>&1

Где 192.168.2.1 - адрес модема. Sleep 5 встроен из-за того, чтобы выдержать паузу и наверняка получить новый IP адрес.

Комментариев нет:

Отправить комментарий