faq обучение настройка
Текущее время: Чт апр 25, 2024 01:21

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
 Заголовок сообщения: Как программировать модем?
СообщениеДобавлено: Чт авг 06, 2009 17:35 
Не в сети

Зарегистрирован: Чт июл 02, 2009 12:59
Сообщений: 20
В общем у меня такая задача.
Нужно разработать прогу, которая должна определить тип модема и создать профиль бридж или роутер с настройками моего провайдера.
Так-же эта прога дожна уметь открывать и закрывать порты если модем в режиме роутера.
Но проблема в том, что нигде не могу найти инфу с описанием того, как обращаться к модему и писать в него или читать нужную мне инфу.
Может у кого есть нароботки в этой области?
Видел на этом форуме скрипты, но там похоже используется Telnet, а мне надо напрямую.

Может есть исходники проги dslutility.exe которая есть на диске из комплекта с модемом?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Как программировать модем?
СообщениеДобавлено: Пт авг 07, 2009 08:58 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Пн июл 10, 2006 13:40
Сообщений: 5821
Откуда: D-Link, Moscow
sealskin писал(а):
В общем у меня такая задача.
Нужно разработать прогу, которая должна определить тип модема и создать профиль бридж или роутер с настройками моего провайдера.
Так-же эта прога дожна уметь открывать и закрывать порты если модем в режиме роутера.
Но проблема в том, что нигде не могу найти инфу с описанием того, как обращаться к модему и писать в него или читать нужную мне инфу.
Может у кого есть нароботки в этой области?
Видел на этом форуме скрипты, но там похоже используется Telnet, а мне надо напрямую.

Может есть исходники проги dslutility.exe которая есть на диске из комплекта с модемом?

Можно, например, с помощью HTTP-запросов.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Как программировать модем?
СообщениеДобавлено: Пт авг 07, 2009 12:51 
Не в сети

Зарегистрирован: Чт окт 09, 2008 13:56
Сообщений: 1095
sealskin писал(а):
Нужно разработать прогу, которая должна определить тип модема и создать профиль бридж или роутер с настройками моего провайдера.
Так-же эта прога дожна уметь открывать и закрывать порты если модем в режиме роутера.
Но проблема в том, что нигде не могу найти инфу с описанием того, как обращаться к модему и писать в него или читать нужную мне инфу.
Может у кого есть нароботки в этой области?
Видел на этом форуме скрипты, но там похоже используется Telnet, а мне надо напрямую.

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Как программировать модем?
СообщениеДобавлено: Пт авг 07, 2009 14:15 
Не в сети

Зарегистрирован: Чт июл 02, 2009 12:59
Сообщений: 20
Alexander Gorelik писал(а):
Можно, например, с помощью HTTP-запросов.
А где можно найти примеры?
Допустим, каким образом можно слать информацию в модем, и как получать её от-туда?
Скажем, мне надо узнать какие порты открыты, а какие нет и проверить существование профилей, получить их настройки, изменить их и записать обратно в модем.
Желательно чтобы отсутствовала привязка к конкретному типу модема, т. е. чтобы можно было работать с большенством модемов фирмы D-Link

Цитата:
Что значит напрямую? И утилита dsl и веб-интерфейс и скрипты используют служебные утилиты внутри модема.
Это понятно.
Я же не собираюсь с помощью своей программы напрямую изменять данные в служебной области энергонезависимой памяти модема.
Нужно как-то производить настройку модема с помощью моей проги и всё.
Телнет использовать нежелательно, т. к. его нет в ОС Linux


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Как программировать модем?
СообщениеДобавлено: Пт авг 07, 2009 14:46 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Пн июл 10, 2006 13:40
Сообщений: 5821
Откуда: D-Link, Moscow
sealskin писал(а):
А где можно найти примеры?
Допустим, каким образом можно слать информацию в модем, и как получать её от-туда?
Скажем, мне надо узнать какие порты открыты, а какие нет и проверить существование профилей, получить их настройки, изменить их и записать обратно в модем.
Желательно чтобы отсутствовала привязка к конкретному типу модема, т. е. чтобы можно было работать с большенством модемов фирмы D-Link

Установите на компьютере сниффер и, выполняя какое-нибудь действие через веб-интерфейс, смотрите какие пакеты шлёт компьютер модему.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт авг 07, 2009 14:50 
Не в сети

Зарегистрирован: Вт окт 28, 2008 18:02
Сообщений: 239
Хм... Интересная тема

_________________
Интернет магазин компьютерной техники в Рубцовске


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Как программировать модем?
СообщениеДобавлено: Вс авг 09, 2009 11:18 
Не в сети

Зарегистрирован: Чт окт 09, 2008 13:56
Сообщений: 1095
sealskin писал(а):
Желательно чтобы отсутствовала привязка к конкретному типу модема, т. е. чтобы можно было работать с большенством модемов фирмы D-Link

У разных модемов разная структура меню, т.ч. одной программой не обойдешься. Но ничего не мешает написать под все, вот только время.

Цитата:
Телнет использовать нежелательно, т. к. его нет в ОС Linux

В Линукс трудно поставить сервер под телнет - это сделано для защиты "ламеров". А клиент там есть. В некоторых модемах есть sshd.
Кстати есть такая штука, как TR069 - поддерживает протокол настройки модема, но видимо он только для линии и т.п.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср авг 19, 2009 14:57 
Не в сети

Зарегистрирован: Чт июл 02, 2009 12:59
Сообщений: 20
Как оказалось, проще всего взаимодействовать с модемом, эмулируя Telnet, т. е. поключаться к серверу с IP адресом 192.168.1.1 через порт 23
Написал небольшую прогу.
В итоге, через несколько десятков миллисекунд после коннекта, модем прислал моей проге такое сообщение
Цитата:
yyyy!yuyu
BCM96338 ADSL Router
Login:
Это он логин просит. :)
Теперь осталось изучить протокол Telnet и думаю что всё будет в шоколаде.
Скрипты на форуме есть останется их только адаптировать для моих целей.

PS
Если подключится через 80-тый порт, то модем шлёт проге HTML страничку. :?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср авг 19, 2009 18:22 
Не в сети

Зарегистрирован: Чт окт 09, 2008 13:56
Сообщений: 1095
sealskin писал(а):
Как оказалось, проще всего взаимодействовать с модемом, эмулируя Telnet, т. е. поключаться к серверу с IP адресом 192.168.1.1 через порт 23
Написал небольшую прогу.
В итоге, через несколько десятков миллисекунд после коннекта, модем прислал моей проге такое сообщение
Цитата:
yyyy!yuyu
BCM96338 ADSL Router
Login:
Это он логин просит. :)
Теперь осталось изучить протокол Telnet и думаю что всё будет в шоколаде.
Скрипты на форуме есть останется их только адаптировать для моих целей.

PS
Если подключится через 80-тый порт, то модем шлёт проге HTML страничку. :?

Такими темпами ты и к пенсии не успеешь. Прога для работы с телнет уже создана не одним автором и некоторые раздаются с исходниками и готовыми скриптами. Что касается 80-го порта там тоже куча готовых прог, но там два НО :
1) Сделать можно гораздо меньше
2) Интерфейс придется самому "сниффить". Может хакером станешь :wink:

Протокол телнет прост как дубина. Но для управления он ничего не даст - надо пользоваться утилитами и изучать сети в Линукс. Впрочем я уже писал про это.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт авг 21, 2009 17:39 
Не в сети

Зарегистрирован: Чт июл 02, 2009 12:59
Сообщений: 20
tundra37 писал(а):
Протокол телнет прост как дубина. Но для управления он ничего не даст
Тогда объясните как моей проге эмулируя телнет удалось создать профиль инета в Advanced Setup --> WAN через который собственно сейчас и пишу?

Пробовал на пару минут выключать модем - профиль не стёрся! :)

PS.
Всё пришлось делать методом тыка - инфы почти нет, а справка модема, получаемая через телнет, очень скудна...


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб авг 22, 2009 12:24 
Не в сети

Зарегистрирован: Чт окт 09, 2008 13:56
Сообщений: 1095
sealskin писал(а):
tundra37 писал(а):
Протокол телнет прост как дубина. Но для управления он ничего не даст
Тогда объясните как моей проге эмулируя телнет удалось создать профиль инета в Advanced Setup --> WAN через который собственно сейчас и пишу?

Пробовал на пару минут выключать модем - профиль не стёрся! :)

PS.
Всё пришлось делать методом тыка - инфы почти нет, а справка модема, получаемая через телнет, очень скудна...

А это как автомобиль и дорога - автомобиль без дороги не ездит.
Телнет это дорога, а внутренние утилиты или команды типа "echo ....." - это автомобиль :lol:
Если же под телнет понимать консольный режим управления модемом, то тогда ты прав.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс авг 23, 2009 11:31 
Не в сети

Зарегистрирован: Чт июл 02, 2009 12:59
Сообщений: 20
С созданием профиля особых проблем не возникло, а вот с удалением, проблемы.
Не получается удалить профиль. :(
Удаляю так
Код:
wan delete 0.0.35
atm operate vcc --delete 0.0.35
atm operate vcc --deleteq 0.0.35 60 1
save

Профиль в списке исчезает, но при выполнении команды save модем ругается - "is Not Default cfg".
После перезагрузки модема, профиль на своем месте, т. е. похоже что он был удалён, но изенеия не написанны в FLASH память. :(

Что я не так делаю?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб фев 13, 2010 20:13 
Не в сети

Зарегистрирован: Ср окт 21, 2009 19:52
Сообщений: 237
Мне приходилось решать подобную задачу.
Вот прога с исходником (язык PureBasic), может кому будет полезна http://depositfiles.com/files/pv4c8shvp
Она позволяет получить список всех профилей, создать или удалить профиль.

Изображение


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 13 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 49


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB