![]() |
|
Модераторы: Snowy, Poseidon, MetalFan |
![]()
|
|
| yogin |
|
||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 88 Регистрация: 23.12.2007 Репутация: нет Всего: нет |
Всех категорически приветствую. Сразу скажу что по своему вопросу целую неделю рою инет, книги и мнения знакомых. НИЧЕГО!
Первоочередная цель вот о чём: Необходимо создать соединение ПО ИНТЕРНЕТУ по средствам компонентов idTCP(Server/Client) с банальной возможностью передачи хотя бы строк! есть следующие наработки - небольшое изменение того что есть в DRKB: СЕРВЕР
КЛИЕНТ
Это такой убогий пример кстати, в некоторых местах у кода отсутствуют места с var и началом процедуры вообщем, так же ненаписано, что нужно создать такой тип и запись, пришлось самому догадываться:
Потом так и остались неизвестными строки которые я прокомментил БОЛЬШИМИ БУКВАМИ вообщем кое как добился чтобы этот пример работал, но он работает только В СЕТИ! и теперь вопрос на миллион долларов - что нужно доделать чтобы это всё чудо, которое мне нравится(из-за потоков и передачи переменной-записи через буфер) РАБОТАЛО ПО ИНТЕРНЕТУ! именно: какой айпи куда вписывать(серверу/клиенту)? есть мнение что нужно клиенту прописывать внешний айпи сервера, но когда я так делаю со своим примером, то клиент висне, как буд-то пакет не доходит до сервера. В курсе о жизни пакета - его первый байт, может его где-то в параметрах компонентов прописать, чтобы он был не 1, как требуется для локалки, а больше... Особенности подключения: Хочу для начала протестировать это всё с сервером на моём компе, у меня АДСЛ, внешний айпи могу узнать легко и сказать тому у кого будет клиент - моему знакомому, он введёт куда надо и законнектится ко мне. Вообщем так я и тестил все эти неудачные попытки((. А потом уже перемещу серв на статичный айпи(сразу немогу потому что нужны деньги) и всё такое, вообщем мне нужно сначало всё протестить. Очень нужна помощь в этом вопросе, я уже незнаю что делать! у меня из-за этого ступора вся работа встала! После того как разъяснится мой случай, то настаиваю о добавлении получившегося живого примера в DRKB. Это сообщение отредактировал(а) yogin - 8.7.2008, 12:27 |
||||||
|
|||||||
| yogin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 88 Регистрация: 23.12.2007 Репутация: нет Всего: нет |
Проблема соединения решина. Поясню причину для тех кто задался таким же вопросом:
Дело в том, что, при тестировании соединения, для сервера я ошибочно использовал свой компьютер, у которого внешний IP является динамическим. При запросе с клиента пакет получает провайдер и далее уничтожает его, т.к. не знает что с ним делать, потому что внешний IP не ассоциирован с моим компьютером. Следовательно мой комп не мог выступать в роли сервера. Запустили сервер на компьютере с непосредственным внешним IP, у клиента параметру Host нужно присвоить IP сервера ну и одинаковые порты конечно и вуаля! всё контачит. Остаётся открытым вопрос о неизвестных переменных в приведённом мной примере из DRKB ??? |
|||
|
||||
| SneG0K |
|
|||
|
Max Mara ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1887 Регистрация: 1.12.2007 Где: Wis Dells Репутация: 2 Всего: 54 |
||||
|
||||
| yogin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 88 Регистрация: 23.12.2007 Репутация: нет Всего: нет |
хм, не обращал внимания, но тогда зачем у клиентских компонентов есть параметр Port, если он не обязателен? Это сообщение отредактировал(а) yogin - 10.7.2008, 00:15 |
|||
|
||||
| Virtuals |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 476 Регистрация: 27.11.2006 Репутация: 2 Всего: 11 |
yogin,
немного теории:... в обще случае полный! адресат при применении протокоа TCP-IP выглядит так: MAC (физический адрес сетевого адаптера) - IP (адрес по протоколу IP) - PORT (адрес по протоколу TCP) отсюда: серверу обязательно указывать порт на котором слушать (ну иначе как операционка поймет кому пришел пакет) клиенту указывается порт на который соединится (такой-же как у сервера), и порт "обратного адреса" хотя можете и назначить его сами. (лиж бы данный порт был свободен в данный момент времени на клиентской машине) |
|||
|
||||
| yogin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 88 Регистрация: 23.12.2007 Репутация: нет Всего: нет |
Я рассмотрел разные случаю прописывания порта у клиента и пришёл к выводу, что не указывать порт - это не рациональное решение задачи.
Думайте сами почему, это пойдёт некоторым на пользу. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Сети" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Сети | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |