![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
решение проблемы подсей [D5, D6, D7, WinXP]
vic_774N © (2006-03-30 16:26:00)Здравствуйте !
Может кто знаком с сетевой игрой HomePlanet Gold ? Хороший космосимулятор, но ... Проблема в том, что работает он только если компьютеры игроков находятся в одной подсети. Обмен по портам UDP 0 - рассылка 255.255.255.255 и UDP 2544 - 10.1.31.* (это для примера). При создании на одной машине сервера (одна подсеть 10.1.28.*), другая машина не видит этого сервера. Программы типа LanGame 1.1 к сожалению не помогают. Другие игры похожего типа работают без проблем.
Посоветуйте пожалуйста, как обойти эту проблему. Набор компонент Indy есть. Мне бы понять - перехватить пакеты от игры и принудительно направить на нужный адрес, а там его перенаправить на нужный порт или делать как-то по другому.
vic_774N (2006-04-19 18:57:00) [1]Тут ещё задача переренаправлять данные именно от HomePlanet Gold, а не от других программ
vic_774N (2006-04-19 18:29:00) [2]Шлюз в другую подсеть в настройках TCP/IP-протокола как настроен ?
route add -p 10.1.28.66 mask 255.255.255.255 10.1.31.114 metric 20
но это не помогает, поскольку сеть у нас не позволяет рассылать широковещательные посылки и другие разные приколы (ограничение по портам). Я подумал о форвардинге пекетов или о создании промежуточного сервера. Запускается сервер у того, кто создает сервер в игре. Пакеты от игры перехватываются и перенаправляются через дополнительный сервер другим игрокам. Только как правильно перехватить пакет ?
Сергей М. (2006-04-04 11:33:00) [3]Шлюз в другую подсеть в настройках TCP/IP-протокола как настроен ?
vic_774N (2006-04-04 10:45:00) [4]Уточнение - с моей стороны адрес 10.1.31.114 порт динамический (1100 - 5000) изменяется при каждом запуске программы. Удаленный порт 2544 адрес широковещательный (255.255.255.255), порт 0 адрес 10.1.28.66.
Собственно нужно заставить программу воспринимать удаленную машину, как машину в моей подсети
vic_774N (2006-03-30 17:14:00) [5]Вот ссылка на мою переписку по этой проблеме http://www.revoltgames.com/forum/index.php?showtopic=194&st=0entry1947
vic_774N (2006-03-30 17:12:00) [6]адрес моей машины известен - 10.1.31.114, адрес другой машины тоже известен 10.1.28.66, порты используются одинаковые 0 и 2544
Сергей М. (2006-03-30 17:09:00) [7]А откуда тебе известен тот самый "нужный адрес" ?
vic_774N (2006-03-30 17:04:00) [8]
> Значит эти "Другие игры" не используют в кач-ве трансп.уровня
> UDP, тем паче - в режиме бродкаста.
Так лучше отловить пакеты "на месте" и затем переадресовать на нужный адрес ?
Сергей М. (2006-03-30 16:41:00) [9]
> Другие игры похожего типа работают без проблем
Значит эти "Другие игры" не используют в кач-ве трансп.уровня UDP, тем паче - в режиме бродкаста.