|
|
  |
Передача данных между 2 GPRS модемами, Уважаемые, помогите. Нужна прога на С++, которая реализует передачу да |
|
|
|
Jul 27 2006, 09:29
|

Их либе дих ...
     
Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609

|
Цитата(zltigo @ Jul 27 2006, 11:31)  Цитата(3.14 @ Jul 27 2006, 11:08)  Мне вот что интересно, в случае работы через DNS по динамическим IP ... Сколько потребуется времени чтоб вновь присвоенный IP к определенному имени "расползся" по другим DNS серверам, а то получится хотя новый IP и линкован к имени а попасть можно будет на него будет например через сутки (имеется ввиду по имени а не по IP)?
А никто и не будет динамически имена переприсваивать! Вам временно выдали IP из пула ПРИНАДЛЕЖАЩЕГО не Вам - с чего это Вы взяли, что хоть какой-то DNS пойдет не на сервер владельца спрашивать "назначенное" ему имя :-). ... Ну вот например, мое устройство коннектится своим GPRS-ом к сети оператора и тот дает динамический реальный IP, я сообщаю свой новорожденный IP "специализированному" DNS серверу который линкует меня с именем trtrtr.hrhrhr.ru. Далее, человек где-нить в никарагуа пытается достучаться до этого trtrtr.hrhrhr.ru, запрос с его DNS по невероятной цепи доходят до моего DNS, в итоге коннект устновлен можно работать. Проходит какое то время, снова плдключаю свое устройство, получаю другой IP, снова регистрируюсь на нужном DNS. Опять человек из никарагуа хочет попасть по trtrtr.hrhrhr.ru, и ведь тут-то должен наступить полный облом, т.к. в кешах, скорее всего не одного DNS, пока будет фигурировать старый IP ... В итоге все как-то не предсказуемо получается ... Или я где то ошибаюсь?
--------------------
Усы, борода и кеды - вот мои документы :)
|
|
|
|
|
Jul 27 2006, 09:57
|

Частый гость
 
Группа: Свой
Сообщений: 118
Регистрация: 22-04-05
Из: Томск
Пользователь №: 4 382

|
однако ман DNS надо. про несколько серверов fff.ru nnn.com на одном ip я знаю. а наоборот - вопрос интересный. Тут пахнет типа распределенной системой, однако насколько я знаю процедуру регистрации адреса - там указывается один ip. Процедура регистарции - это не настолько автоматизированный процесс, чтобы зная протокол на один и тот же адрес в течении пары(10, 100) минут перегистрировать на разные динамические ip. Эрго - соответствие dns-имени и 1 стат ип необходимо. 1. имеем 2 реальных ип 111(статический реальный) и 222(причем 222 может быть динамический и даже fake) 2. согласно процедуре регистрации имени производим регистрацию ццц.мну.ком на 111 (как здесь описано например http://noc.tomsk.ru/DNS-application.txt ) 3. на этом серванте который по идее 24-onair поднимаем socks для себя и входное для друга из Никарагуа 4. когда линк 111<->222 поднят ты с другом общаешься нормально. 5. когда линка нет - друг из Никарагуа получит чтото типа "no 3.14 on air!" которое скажет ему сервер 111 6. когда 111 в дауне - по http например друг получит no route to host.
|
|
|
|
|
Jul 27 2006, 10:03
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(3.14 @ Jul 27 2006, 12:29)  я сообщаю свой новорожденный IP "специализированному" DNS серверу который линкует меня с именем trtrtr.hrhrhr.ru. Уже писал - никакой DNS сервер не примет от Вас (вопросы взлома обсуждать не будем) "линковку" имени к IP за которым прописан ОФИЦИАЛЬНЫЙ DNS сервер. Цитата Далее, И никакого "далее" уже обсуждать не надо.. А если позволят на "официальном" менять, то действительно: Цитата В итоге все как-то не предсказуемо получается ... Хотя можете поставить свой собственный абсолютно автономный не завязанный на общий систему DNS сервер и сообщив _его_ конкретный IP адрес в Никакрагуа, при условии сброса кэша на никарагуанской машине перед каждым сеансом - получите результат.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jul 27 2006, 11:58
|
Участник

Группа: Участник
Сообщений: 68
Регистрация: 24-07-06
Пользователь №: 19 039

|
Цитата(zltigo @ Jul 27 2006, 12:43)  Цитата(kuguar @ Jul 27 2006, 11:28)  если соединять два модема из одной сети - то по идее поглядев ип адреса и если они из одной подсети - связать из можно
Уже писал - тоже маловероятно, если провайдер нормальный. Дело в том, что это ведь не Ваша сеть на работе/дома(в квартире), где все компьютеры по определению должны видеть и работать друг с другом. Тут вариант гостинницы, где временно встречаются со своими компьютерами разные НЕЗНАКОМЫЕ даже люди и даже будучи подключенными в одну сеть они из соображений безопасности НЕ ДОЛЖНЫ иметь возможность выходить на другие компьютеры постояльцев, да и на компьютеры владельцев гостинницы тоже :-).  Вы были правы. Короче, останавливаюсь на варианте, когда весь поток сообщений будет проходить и рассылаться через сервер. Уже решил, что модемов в системе будет больше 2. Т. е. будет идентификация на серваке(по индивидуальному номеру SIM). Алгоритм реализации: Формат сообщения от модема на сервер будет такой: (свой номер SIM)(номер SIM, которой надо передать данные)(данные). Занесение в БД(если в 1-ый раз) или Идентификация на серваке. Запись о модеме в БД будет содержать: 1. Номер SIM 2. IP 3. Данные, кот. ему нужно отправить. Далее долбание на сервака(думаю каждые 30 сек. может меньше, может больше) на предмет того, "есть, что для меня"? Формат сообщения на запрос: (свой номер SIM). В это время другой модем отсылает сообщение: (свой номер SIM). Если в первый раз то заноситься в БД, если второй, то просто идентифицируется, и идёт проверка, есть что для него. Если есть, то отправляется. Временно собщения на отправку, будут храниться на серваке с привязкой к номеру получателя. Если модем отключился от GPRS зашёл снова, то меняется его IP в базе. Базу планирую делать на векторах. Вдруг модемов станет больше. Проблема в том, что будет идти постояноое долбание сервака на предмет данных для себя. Напряг вообщем. И с обновлением базы (модем поменяли или SIM, и всё, запись просто висит) то же не всё понятно. Через 2 месяца всё удалять и формировать занаво что-ли? Может у кого другие идеи на счёт алгоритма есть? Но всё же кто нибудь пробовал разменять модемы IP, при условии, что у однин моб. оператор, и пообщаться? А то вдруг у на симках какого нибудь оператора и получиться. Или отказаться от этой идеи совсем?
Сообщение отредактировал Yuriy_Rus - Jul 27 2006, 12:04
|
|
|
|
|
Jul 27 2006, 12:10
|
Участник

Группа: Участник
Сообщений: 68
Регистрация: 24-07-06
Пользователь №: 19 039

|
Хотя можете поставить свой собственный абсолютно автономный не завязанный на общий систему DNS сервер и сообщив _его_ конкретный IP адрес в Никакрагуа, при условии сброса кэша на никарагуанской машине перед каждым сеансом - получите результат. [/quote] Это реально? Или за...бистое занятие?
|
|
|
|
|
Jul 27 2006, 13:04
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Yuriy_Rus @ Jul 27 2006, 14:58)  Может у кого другие идеи на счёт алгоритма есть? Что за пляски с бубном я не понял совсем :-( Хотели канал с IP протоколом, так и пользуйте. Берем примитивный вариант, который потом можете совершенствовать под динамическое выделение ресурсов и удобную идентификацию. Пишем "сервер" на котором активизируем 16 сокетов на порты xxx01...xx16. Каждый из внешних девайсов коннектируется к своему порту и посылает серверу пакетик в которм просит его соединить с девайсом подсоединонным к другому указанному порту. Сервак или соединяет если тот девайc подключен и тупо пересылая фреймы организует прозрачнейший канал, либо сообщает об отсутствии партнера, либо буферирует фреймы для последующей передачи, либо активизирует процедуру вызова партнера на связь.. В общем по вкусу и возможностям. Если нужно динамическое выделение ресурсов, адресация, паролирование, то тогда для сервера пишется служба при присоединении к которй объект идеттифицируется по имени-паролю и ему выдается динамически выдается порт для дальнейшей работы в этом сеансе связи. Цитата(Yuriy_Rus @ Jul 27 2006, 15:10)  Это реально? Или за...бистое занятие?  Совершенно банальный сервис. Проблемы нулевые.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jul 27 2006, 13:29
|
Участник

Группа: Участник
Сообщений: 68
Регистрация: 24-07-06
Пользователь №: 19 039

|
Что - то стрёмно. Держать открытым сокет для каждого нового девайса. Хотя, что эффективнее, надо подумать. Я в Socket API новичок.
Сообщение отредактировал Yuriy_Rus - Jul 27 2006, 13:30
|
|
|
|
|
Jul 27 2006, 14:25
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Yuriy_Rus @ Jul 27 2006, 16:29)  Что - то стрёмно. Держать открытым сокет для каждого нового девайса. Абсолютно ничего стремного, кроме того можете, как я писал держать только один на всех для авторизации и динамческого выделения/открытия рабочих. Цитата Кто поставит експеримент, тот и узнает. Эксперимент по отношению к конкретному оператору ставится безумно легко любым, кто имеет доступ к GPRS с телефона - просто выходите через своего любимого провайдера в интернет и смотрите выданный IP. Он будет почти наверняка из диапазона 10.0.0.0 ... 10.255.255.255 Или другой (менее вероятно) private сети. О приватном диапазоне в каждом из классов сетей можете справиться в RFC1918. Глобальные и фиксированные адреса общепринято выдавать за отдельную абонентскую плату. Все выше написанное не есть предположения, а опыт.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jul 27 2006, 16:42
|

Местный
  
Группа: Свой
Сообщений: 361
Регистрация: 18-04-05
Пользователь №: 4 258

|
Цитата(GetSmart @ Jul 27 2006, 20:36)  Гениально!  Не, сурьёзно kuguar зарабатывает 10 гринов. Быстродействие такой системы удовлетворяет ?  ) Вся обсуждаемая "мутотень" предпологала довольно оперативный обмен информацией, а тут получается "але барышня"  А под это дело у опсоса нельзя арендовать реальные IP просто. У мтс помоему такое есть. Да и опсоса думаю есть шанс подобрать специально ?
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|