|
GR64 & Listen |
|
|
|
Aug 23 2007, 10:33
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 16-06-05
Пользователь №: 6 070

|
Привет всем. Оживляю модуль GR64. Пробывал на Балайн и МТС резульаты одни и теже.
Если с подсоединением все более менее нормально (команда AT*E2IPO)... Правда при использовании TCP (AT*E2IPO=1...) возникли проблемы (это на будущее может кому-то пригодиться): AT*E2IPO=1,\"85.21.118.116\",5000,1,1 - вот так не работает, сразу же возвращает ошибку, код 3. AT*E2IPO=1,\"85.21.118.116\",5000,2,1 - вот так работает!
А вот Listen (команда AT*E2IPL) никак не получается оживить, что в UDP, что в TCP! Может кто реально использовал эти команды? Посоветуйте...
И еще пару замечаний, так, ради интереса. Команда AT*E2IPI=0 дает следующий ответ *E2IPI: "10.1.59.217" Устанавливаю соединение с некотором хостом (команда AT*E2IPO) и посылаю данные, через программу (на удаленном хосте) смотрю от куда пришли данные, IP адрес получаю совсем другой! Почему то так, объясните человеку далекому от мира сетей? И на последок, если данные посылать постоянно через секунд 10 (все тот же пример), то все нормально. Если подожать несколько минут и послать данные с модема, то на удаленном хосте наблюдаем такую картину, порт отправителя изменился. Для чего это, может кто значет?
|
|
|
|
|
Aug 23 2007, 11:27
|
Мыслящий
    
Группа: Свой
Сообщений: 1 729
Регистрация: 20-07-07
Из: Самара
Пользователь №: 29 270

|
IP-адрес на удаленном хосте - это адрес сервера сотового оператора. В реальности сам сотовый терминал подключается к серверу оператора, а оператор уже перенаправляет запросы в интернет. Причем открытый порт может переназначаться в процессе работы по усмотрению сервера. Чтобы получить статический IP-адрес, необходимо договариваться с оператором. В принципе сейчас уже некоторые операторы предоставляют такую услугу. Но это зависит не от настойек модема, а от сим-карты и договора на нее. Динамическая смена порта происходит потому, что серверу необходимо одновременно обрабатывать запросы от множества абонентов и, поэтому, рационально распределять ресурсы.
PS: Насчет Listen - не получится использовать, пока ты не знаешь к какому адресу тебе надо стыковаться.
--------------------
FAQ по ADФорум по ADЗнание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью. ...стоит запомнить ...вернее задуматься.
|
|
|
|
|
Aug 23 2007, 11:53
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 16-06-05
Пользователь №: 6 070

|
Про адреса я так приблизитель и думал, но все равно большое спасибо.
Теперь про Listen. Я поднимаю через AT команды TCP/IP. Узнаю свой IP адрес AT*E2IPI=0, открываю соединение Listen (команда AT*E2IPL). И на удаленном хосте (ПК подсоединенный к Интернет) пытаюсь подсоединиться к IP адресу который мне выдала команда AT*E2IPI=0. Не выходит. Ладно, я делаю хитрее, перед Listen подсоединяюсь к некоторому хосту с fix IP адресом и сбрасываю на некоторый порт 5 байт данных, на хосте получаю их (спецально написанная программа) и вычисляю IP-дрес отправителя (который как я уже писал выше, отличается от того, что выдает команда AT*E2IPI). Далее разрываю соединение, открываю соединение Listen (команда AT*E2IPL) и с хоста пытаюсь соединться на вычисленный адрес (от перехвата посланных 5 байт). Все это делаеся в рамка одной GPRS сессии. Опять же ничего не выходит. Может существет еще один IP адрес -))), и надо пытаться подсоединиться к нему?
|
|
|
|
|
Aug 23 2007, 12:15
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 16-06-05
Пользователь №: 6 070

|
Так, для особо одаренных (т.е. для себя), переспрошу. Когда я открываю соединение Listen на порт, к примеру, 5000, то на сервере оператора открывается какой-то другой порт, к примеру, 6000 (т.к. он все перемешивает и оптимизирует). И если бы я его знал, то с хоста можно подсоединиться на этот порт (6000) и сервер операторатора перепошлет мои запросы на порт модема (5000). И единственный выход в моей ситуации, попросить у оператора связи статический адрсес, или чтобы меня не кидали через сервер оператора. Правильно я все понял?
PS Звонил в МТС они говорят, что статический IP адрес оне НЕ дают. Это правда?
Сообщение отредактировал Ojo - Aug 23 2007, 12:28
|
|
|
|
|
Aug 23 2007, 12:44
|
Мыслящий
    
Группа: Свой
Сообщений: 1 729
Регистрация: 20-07-07
Из: Самара
Пользователь №: 29 270

|
Цитата(Ojo @ Aug 23 2007, 17:15)  Так, для особо одаренных (т.е. для себя), переспрошу. Когда я открываю соединение Listen на порт, к примеру, 5000, то на сервере оператора открывается какой-то другой порт, к примеру, 6000 (т.к. он все перемешивает и оптимизирует). И если бы я его знал, то с хоста можно подсоединиться на этот порт (6000) и сервер операторатора перепошлет мои запросы на порт модема (5000). И единственный выход в моей ситуации, попросить у оператора связи статический адрсес, или чтобы меня не кидали через сервер оператора. Правильно я все понял?
PS Звонил в МТС они говорят, что статический IP адрес оне дают. Это правда? Примерно так. только я не уверен, что если ты Listen 5000 делаешь, на сервере вообще что-то происходит. т.к. прослушка происходит в пассивном режиме. Кроме того - конфигурируешься-ли ты как сервер? Если мне не изменяет память, для работы в режиме сервера нужны какие-то другие настройки (какие - не помню, дело давнее и темное). А на стороне сервера действительно происходит маршрутизация запросов. Поэтому Listen 5000 - это твое личное дело. внутри локальной сети с оператором это имеет значение. Но со стороны удаленного хоста этот порт виден не будет. А миновать сервер оператора не получится. Полностью описывать логику работы очень долго, но в двух словах все запросы идут через сервер. И этот стат. IP назначается серверу, а он лишь транслирует запросы на этот адрес.
--------------------
FAQ по ADФорум по ADЗнание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью. ...стоит запомнить ...вернее задуматься.
|
|
|
|
|
Aug 23 2007, 14:31
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 16-06-05
Пользователь №: 6 070

|
Огромное спасибо за быстрые и информативные ответы. Удачи.
|
|
|
|
|
Aug 23 2007, 14:58
|
Частый гость
 
Группа: Участник
Сообщений: 142
Регистрация: 20-08-07
Из: Тула
Пользователь №: 29 919

|
Цитата(Ojo @ Aug 23 2007, 16:15)  PS Звонил в МТС они говорят, что статический IP адрес оне НЕ дают. Это правда? Может, они тебя неверно поняли? Надо было просить "белый", или "настоящий" IP-адрес, "чтобы можно было принимать входящие соединения", "НЕ из диапазона 10.x.x.x" или как-то так. А статический адрес - это совершенно другое понятие. Это адрес, который еще и фиксирован - не меняется от сессии к сессии. На такое они действительно пойти не могут, так у них очень быстро пул адресов кончится.
|
|
|
|
|
Aug 24 2007, 07:42
|
Частый гость
 
Группа: Участник
Сообщений: 142
Регистрация: 20-08-07
Из: Тула
Пользователь №: 29 919

|
Цитата(Master of Nature @ Aug 24 2007, 09:23)  А такой "белый" адрес - тоже не дадут. Ради одного пользователя перелопачивать сервер - слишком дорого. Ага, ужасно дорого. В Туле это стоит аж 100 рублей в месяц. http://www.tula.mts.ru/mts/page-view?walias=real_ip"Услуга «Real IP» обеспечивает возможность передачи данных с применением сетевых протоколов, для работы которых необходимо наличие у пользователя реального IP-адреса в сети Интернет. Это необходимо, например, для установления шифрованного VPN-соединения." "Абонентская плата за услугу «Real IP» в месяц, руб. 100,00" А статический адрес ему действительно не дадут, но тут можно выкрутиться программно или через сторонние сервисы типа dyndns.
|
|
|
|
|
Aug 24 2007, 08:18
|
Мыслящий
    
Группа: Свой
Сообщений: 1 729
Регистрация: 20-07-07
Из: Самара
Пользователь №: 29 270

|
Цитата(stream @ Aug 24 2007, 12:42)  Ага, ужасно дорого. В Туле это стоит аж 100 рублей в месяц. http://www.tula.mts.ru/mts/page-view?walias=real_ip"Услуга «Real IP» обеспечивает возможность передачи данных с применением сетевых протоколов, для работы которых необходимо наличие у пользователя реального IP-адреса в сети Интернет. Это необходимо, например, для установления шифрованного VPN-соединения." "Абонентская плата за услугу «Real IP» в месяц, руб. 100,00" А статический адрес ему действительно не дадут, но тут можно выкрутиться программно или через сторонние сервисы типа dyndns. Так я же сказал, что ради одного человека дорого. А если это поставлено на поток, то проблем нет. То же и со стат. IP - в мегафоне она стоит 150 руб. в месяц (включая трафик). Но доступно только для корпоративных клиентов.
--------------------
FAQ по ADФорум по ADЗнание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью. ...стоит запомнить ...вернее задуматься.
|
|
|
|
|
Aug 24 2007, 09:01
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 16-06-05
Пользователь №: 6 070

|
Коль скоро я эту тему начал, то закончить ее придется мне.
Услуга RealIP (в МТС) помогла в решении моей проблемы. У других операторов что-то подобное обязательно должно быть. Только учтите, что при ее использовании надо давать команду AT+CGDCONT=1,"IP","realip.msk" вместо AT+CGDCONT=1,"IP","internet.mts.ru"
При таком подключении модулю дается конкретный IP адрес Команда AT*E2IPI=0 дает следующий ответ *E2IPI: "213.87.92.10" (реально существующий IP адрес, наконец-то!)
Как я понимаю, сервер оператора при использовании RealIP исключается из цепочки Модем-Интернет. Что нам и надо. В итоге соединение типа Listen заработало.
Всем спасибо и удачи.
|
|
|
|
|
Aug 27 2007, 07:41
|
Группа: Участник
Сообщений: 11
Регистрация: 21-03-05
Пользователь №: 3 573

|
Хех, у нас тут местный оператор связи Ютел выдает всем бесплатно "белые" инетовские адреса, есс-но динамически... А оказывается МТС где-то за это деньги берут :-) Вот вопрос - так ли оно нужно, делать listen на GPRS ? В каких задачах это может реально пригодится?
|
|
|
|
|
Aug 27 2007, 09:03
|
Мыслящий
    
Группа: Свой
Сообщений: 1 729
Регистрация: 20-07-07
Из: Самара
Пользователь №: 29 270

|
Цитата(AlexCrush @ Aug 27 2007, 12:41)  Хех, у нас тут местный оператор связи Ютел выдает всем бесплатно "белые" инетовские адреса, есс-но динамически... А оказывается МТС где-то за это деньги берут :-) Вот вопрос - так ли оно нужно, делать listen на GPRS ? В каких задачах это может реально пригодится? "Услуга «Real IP» обеспечивает возможность передачи данных с применением сетевых протоколов, для работы которых необходимо наличие у пользователя реального IP-адреса в сети Интернет. Это необходимо, например, для установления шифрованного VPN-соединения." Хотя, ИМХО, для Listen'a недостаточно реального IP, т.к. это неудобно. Желательно все-таки чтобы он не менялся от сеанса к сеансу. В противном случае преимушеств от его использования будет немного. А удобство от использования Listen'a на модулях GPRS очевидна - без проблем обеспечивается доступ к модулю от внешней системы. При этом соединение не висит постоянно. Как вариант решения проблемы дефицита IP можно предложить выделять не полноценные адреса, а только фиксировать порты при известном IP адресе (т.е. комбинировать). В этом случае можно до 65535 портов выделить (если не накладывать доп ограничений). Другой вариант - VPN (но такое удобно только для крупной сети)
--------------------
FAQ по ADФорум по ADЗнание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью. ...стоит запомнить ...вернее задуматься.
|
|
|
|
|
Aug 27 2007, 09:43
|
Группа: Участник
Сообщений: 11
Регистрация: 21-03-05
Пользователь №: 3 573

|
Но ведь открытый серверный порт на каком-либо одиноко стоящем маленьком устройстве - это дырень в его безопасности. Мало ли как себя поведет конкретная реализация TCP/IP стэка при атаке навроде syn flood или подобной. Т.е. проблемы могут возникнуть. А польза - лишь то что это устройство "всегда онлайн" и его можно опросить - имхо мнимая. К тому же вечно висящее TCP соединение от устройства к серверу не так уж и плохо. Я к чему спрашивал-то вообще. Есть ли задачи где обязательно нужен серверный сокет?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|