Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2009.04.26;
Скачать: [xml.tar.bz2];

Вниз

ClientSocket   Найти похожие ветки 

 
Alex603081 ©   (2008-02-06 03:36) [0]

Помогите, пожалуйста, решить такую проблему:есть роутер, который подключен к компьютеру через обычную витую пару. Для того, чтобы на него зайти, я использую HyperTerminal. В нем я выбираю тип соединения TCP/IP (Winsock), ввожу IP, номер порта, нажимаю OK. Терминал с роутером соединяется и в окне терминала появляются 2 строчки: первая с названием роутера, вторая - "Login:".
Я попытался написать программку, через которую можно было бы работать с этим роутером как через терминал (Сам HyperTerminal или аналоги не подойдут, т.к. в роутер надо отправлять данные, рассчитанные в программе).
Нашел в интернете статью, в которой описана работа с ClientSocket. Взял оттуда пример, запустил.
При установке соединения роутер присылает строку "ÿýÿý ÿý#ÿý"". Что я после этого не посылал в роутер, он молчит. Попробовал послать ему то,что он прислал мне, он ответил похожей тарабарщиной (ÿüÿü ÿü#ÿü"). Я ему это и отправил. Он прислал третью строку "ÿûÿýÿýÿûÿý!". Ее я тоже отослал ему назад. он прислал четвертую (ÿýÿûÿüÿþÿü!).
И ее я отправил назад и только после этого он ответил "ÿþ", а потом почти как в терминале.отправляю логин, он присылает его обратно и сразу присылает запрос на пароль.Отправляю пароль, он присылает пустую строку и потом начинает примерно раз в секунду присылать код нуля. После ввода логина и пароля на роутере запускается скрипт, с которым моя программа и должна обмениваться данными. На мои запросы скрипт отвечает, но очень мешают пустые строки, которые идут от роутера.а в HyperTerminal е все нормально! при соединении он запрашивает логин, пароль и все. Дальше весь обмен идет со скриптом на роутере, без всяких лишних строк, кодов нулей и проч. Вопрос: что это за строки, которые предает роутер? Как они расшифровываются? Почему в терминале не появляется ничего лишнего?

Модель роутера, помоему, Mikrotik.

Буду ОЧЕНЬ благодарен за любую инфу по этому вопросу!
P.S. прошу прощения за путанные объяснения проблемы.


 
Сергей М. ©   (2008-02-06 08:33) [1]


> роутер присылает строку "ÿýÿý ÿý#ÿý""


А что должен прислать в действительности ? Приведи то что при этом пишет терминал. Похоже на неверную интерпретацию тобой символьной кодировки в сроках при обмене с роутером.


> Что я после этого не посылал в роутер, он молчит


Он, скорее всего, ждет строку, завершающуюся символом возврата каретки (#13) и/или символом перевода строки (#10)


 
alex603081 ©   (2008-02-06 09:02) [2]

А что должен прислать в действительности ? Приведи то что при этом пишет терминал. Похоже на неверную интерпретацию тобой символьной кодировки в сроках при обмене с роутером.
Терминал пишет:
Mikrotik v3.1
Login:

Он, скорее всего, ждет строку, завершающуюся символом возврата каретки (#13) и/или символом перевода строки (#10)

В том и проблема, что я не знаю, что ему туда посылать...
Когда я от него запроса логина добился, то и логин и пароль я завершал #10.
Мне кажется, что эти первые строки - какие то настройки, в соответствии с которыми у роутера с компьютером и идет обмен информацией, но я не могу нигде найти, что там есть что.


 
Сергей М. ©   (2008-02-06 09:14) [3]

Приведи hex-дамп строки, которую ты получаешь при подключении и которая у тебя выглядит абракадаброй ...


> Мне кажется, что эти первые строки - какие то настройки,
>  в соответствии с которыми у роутера с компьютером и идет
> обмен информацией


Быть того не может. Гипертерминалу никакие настройки не нужны, он их не передает и не ожидает, тем не менее успешно обменивается инф-цией с твоим устройством и столь же успешно показывает тебе эту инф-цию.


 
Сергей М. ©   (2008-02-06 09:33) [4]

Вообще странно, что роутер не предоставляет вэб-интерфейс для контроля и управления. Древний какой-то роутер..


 
Slym ©   (2008-02-06 09:51) [5]

Alex603081 ©   (06.02.08 3:36)
yyyy yy#yy""

не правильно принимаешь... код приема в студию


 
Сергей М. ©   (2008-02-06 10:00) [6]


> не правильно принимаешь


Угу. Это тоже не исключено.
Поди беда с разыменованием указателя)


 
DVM ©   (2008-02-06 10:31) [7]


> В том и проблема, что я не знаю, что ему туда посылать..
> .

берешь терминал, снифер и вперед...


 
Alex603081 ©   (2008-02-06 18:20) [8]

Вот hex -дамп этиз строк в порядке получения

> яэяэ яэ#яэ"            FF FD 18 FF FD 20 FF FD 23 FF FD 27
> яьяь яь#яь"            FF FC 18 FF FC 20 FF FC 23 FF FC 27
> яыяэяэяыяэ! FF FB 03 FF FD 01 FF FD 1F FF FB 05 FF FD 21
> яэяыяьяюяь! FF FD 03 FF FB 01 FF FC 1F FF FE 05 FF FC 21
> яю                        FF FE 01 0D 0A
MikroTik v3.1

роутер не древний, для данной задачи как раз и нужен именно терминал.

Вот код приема


procedure TForm1.ClientSocket1Read(Sender: TObject;
 Socket: TCustomWinSocket);
begin
 form1.Memo1.Lines.Add("> "+Socket.ReceiveText);
end;


 
Slym ©   (2008-02-07 05:07) [9]

Это он опции терминала запрашивает... формате
IAC DO ABC
FF FD 18  - DO TNO_TERMTYPE
FF FD 20  - DO TNO_TERM_SPEED
FF FD 23  - DO TNO_XDISPLOC
FF FD 27  - DO ХЗ

FF FB 03  - WILL TNO_SGA
FF FD 01  - DO TNO_ECHO


и так далее...
попробуй TIdTelnet, проще будет...


 
Alex603081 ©   (2008-02-07 15:26) [10]

Спасибо!
А не подскажите, где можно найти полное описание этих опций?


 
ketmar ©   (2008-02-07 15:43) [11]

>[10] Alex603081 © (2008-02-07 15:26:00)
google, rfc, telnet protocol.

---
Understanding is not required. Only obedience.


 
ketmar ©   (2008-02-07 15:43) [12]

>[10] Alex603081 © (2008-02-07 15:26:00)
google, rfc, telnet protocol.

---
Understanding is not required. Only obedience.


 
Alex603081 ©   (2008-02-07 16:06) [13]

ОГРОМНОЕ ВСЕМ СПАСИБО!!!!
Нашел протокол Telnet"а, разбираюсь...



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2009.04.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.006 c
2-1237205386
девушка
2009-03-16 15:09
2009.04.26
Аналог explod из PHP


15-1235256218
alex-drob
2009-02-22 01:43
2009.04.26
Проэктирование сервера для обмена пакетами двух пользователей


3-1219390970
LongUSB
2008-08-22 11:42
2009.04.26
Как открыть файл БД с нестандартным расширением?


15-1232561713
vuk
2009-01-21 21:15
2009.04.26
Ндааааа....


15-1234884844
Baks
2009-02-17 18:34
2009.04.26
Рисунки для игры





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский