![]() |
Модераторы: Snowy, Poseidon, MetalFan |
![]() ![]() ![]() |
|
Чупакабро |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.2.2007 Репутация: нет Всего: 4 |
Есть UDP клиент и сервер (совмещены в одной программе).
В локальной сети (или в ее эмуляции с помощью программ вроде Hamachi) все замечательно работает, данные передаются. Когда пытаюсь установить связь между компьютерами через интернет, соответственно ничего не работает. Айпишники динамические. Что делать, как быть? --------------------
Project Project1.exe raised exception class EAccessViolation with message 'Access violation at address 00459B8B in module 'Project1.exe'. Read of address 0000019C'. Process stopped. Use Step or Run to continue. |
|||
|
||||
xkor |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 8.1.2007 Где: Питер Репутация: 1 Всего: 4 |
хотите чтобы вам помогли - выражайтесь конкретнее, тут не телепаты сидят... программа учитывает возможные потери UDP пакетов? размеры у этих пакетов не слишком большие? чем больше размер тем на больше число кусков он будет разбит из за MTU (которое в инете может быть крайне мелким) и тем выше вероятность что пакет не дойдет. Это сообщение отредактировал(а) xkor - 9.7.2011, 01:11 |
|||
|
||||
kami |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 6 Всего: 72 |
Рано еще говорить о протоколе обмена. Кроме того, некоторые отправляемые данные могут не нуждаться в гарантированном приеме. Чтобы он (пакет) хоть куда-то ушел, нужно знать адрес корреспондента. (броадкасты отбросим сразу). В случае динамических IP это (мягко говоря) проблематично. Кроме того, не исключена возможность того, что оба компьютера сидят за NAT, что еще больше усложняет процесс обмена. В общем случае задача связи динамических IP по UDP не имеет решения. Добавлено через 2 минуты и 4 секунды
Hamachi работает через собственный сервер, имеющий статический IP. Итого общая схема работы hamachi получается компьютер <=>сервер<=>компьютер. |
|||
|
||||
Чупакабро |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.2.2007 Репутация: нет Всего: 4 |
я немного уточню
динамические айпишники известны на момент подключения дело не в том, что я не знаю, куда коннектиться, а в том, что нет этого коннекта размеры пакетов делал разными от 128 до 2048 байт --------------------
Project Project1.exe raised exception class EAccessViolation with message 'Access violation at address 00459B8B in module 'Project1.exe'. Read of address 0000019C'. Process stopped. Use Step or Run to continue. |
|||
|
||||
kami |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 6 Всего: 72 |
||||
|
||||
Чупакабро |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.2.2007 Репутация: нет Всего: 4 |
91.215.79.94 Код сервера:
Код клиента:
--------------------
Project Project1.exe raised exception class EAccessViolation with message 'Access violation at address 00459B8B in module 'Project1.exe'. Read of address 0000019C'. Process stopped. Use Step or Run to continue. |
||||
|
|||||
xkor |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 8.1.2007 Где: Питер Репутация: 1 Всего: 4 |
||||
|
||||
Чупакабро |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.2.2007 Репутация: нет Всего: 4 |
компы за роутером, как минимум) ну и доступ в инет через локалку наверное подразумевает NAT
а айпишники я по ламерски смотрю через Яндекс "мой ip" (91.215.79.94 ), то есть на самих компах-то другие ip, типа 192.168.1.103 - они выдаются роутером Это сообщение отредактировал(а) Чупакабро - 10.7.2011, 15:30 --------------------
Project Project1.exe raised exception class EAccessViolation with message 'Access violation at address 00459B8B in module 'Project1.exe'. Read of address 0000019C'. Process stopped. Use Step or Run to continue. |
|||
|
||||
kami |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 6 Всего: 72 |
Это не по-ламерски. Это правильно. Внутренние IP здесь не помогут. Вот только доступ через NAT связан с большими трудностями. Единственное, что я нашел в интернете - оба компьютера для установления обмена должны сперва "подолбиться" корреспонденту. Тогда временно установится разрешение на прохождение пакетов из внешнего мира в локалку. Потому что изначально пакет уходит от клиента, проходит через NAT спокойно, доходит до места, где должна пройти переадресация "внешний IP"=>"внутренний IP", и там зависает, потому что у маршрутизатора есть разрешение выпускать изнутри, а вот про переадресацию снаружи внутрь он не знает. |
|||
|
||||
Чупакабро |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.2.2007 Репутация: нет Всего: 4 |
то есть маршрутизатор будет думать, что он получает пакеты в ответ на выпущенные и станет переадресовывать входящие вовнутрь?
если так, то забавно) сервер должен заранее знать всех клиентов p.s. Спасибо за помощь! Это сообщение отредактировал(а) Чупакабро - 10.7.2011, 16:17 --------------------
Project Project1.exe raised exception class EAccessViolation with message 'Access violation at address 00459B8B in module 'Project1.exe'. Read of address 0000019C'. Process stopped. Use Step or Run to continue. |
|||
|
||||
kami |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 6 Всего: 72 |
||||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 4 Всего: 329 |
||||
|
||||
![]() ![]() ![]() |
Правила форума "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. |