Проблема с различными подсетями

Теги:
 

sys

разработчик l2j-сервера
Иммется проблема доступа к серверу из различных подсетей.

Немного о том как скорфигурированы 2 интерфейса сервера:
1. Lan: ip: 10.0.1.5 подсеть: 10.0.0.0/8
2. Демилитаризованая зона: ip: 89.179.54.5 подсеть: 89.179.54.0/24

На 2й интерфейс посредством роутинга и бимапа на роутере загнаны еще 2 подсети:
> 10.221/16 роутинг
> 10.152/16 бимап в 89.179.54.5 (на 89.179.54.5 обратный маршрут естествено есть)

Сервер живет на хосте la2.kaluga.org

Далее конфиги сервера.
Логин сервер, loginserver.properties
code text
  1. LoginserverHostname=*
  2. ...


Гейм сервер, server.properties
code text
  1. # Bind ip of the gameserver, use * to bind on all available IPs
  2. GameserverHostname=*
  3. GameserverPort=7777
  4.  
  5. ExternalHostname=89.179.54.5
  6. InternalHostname=10.0.1.5
  7.  
  8. AdvIPSystem = True
  9.  
  10. # Bind ip of the loginserver, use * to bind on all available IPs
  11. LoginserverHostname=*
  12. LoginserverPort=2106
  13. LoginTryBeforeBan=20
  14.  
  15. # The Loginserver host and port
  16. LoginPort=9014
  17. LoginHost=la2.kaluga.org
  18.  
  19. ...


Гейм сервер, advipsystem.properties
code text
  1. IPAdress1 = 10.0.1.5
  2. NetMask1 = 10.0.0.0/255.0.0.0
  3. IPAdress2 = 89.179.54.5
  4. NetMask2 = 89.179.54.0/255.255.255.0,10.221.0.0/255.255.0.0,10.152.0.0/255.255.0.0


Таким образом, все из лана (10.0.0.0/8) могут подключаться и играть без проблем.
Все остальные подсети не могут. Спасайте.

PS. На этой машине стоят и успешно работают другие игровые сервера(wow, халфлайф, UT и п.р.)
 
Это сообщение редактировалось 29.01.2007 в 15:43
UA SoulKeeper #29.01.2007 16:09
+
-
edit
 

SoulKeeper

разработчик L2J Fortress

Переписывай функции определения IP в логин сервере либо делай редирект с одной сети на другую.

Имхо, первое легче. Я в свое время его делал...
Разыскивается десятка с два датапакеров :) http://la2.wrk.ru/forum/viewtopic.php?id=50882  
+
-
edit
 

SAM333

новичок
Попробуй вот так
ExternalHostname=*
InternalHostname=*
У меня на сервер с трех подсетей и с инета заходят.
 

sys

разработчик l2j-сервера
SoulKeeper> Переписывай функции определения IP в логин сервере либо делай редирект с одной сети на другую.
SoulKeeper> Имхо, первое легче. Я в свое время его делал...
Ни доступа к исходникам, ни знания явы, а так же ни малейшего представления о том как сделать редирект в подсетях... В общем поэтому и пишу.
 

Drac

разработчик l2j-сервера

ExternalHostname=*
InternalHostname=*
Слушает все подсети такая настройка.
 

sys

разработчик l2j-сервера
Drac> ExternalHostname=*
Drac> InternalHostname=*
Drac> Слушает все подсети такая настройка.
Не помогает.
Дал почитать этот топик админу серверов наших вот что он ответил:

проблема не в конфигах а втом что сервак почему то сам пытется решить через какой интерфес слать а не полузуется системной функуией.. а т.к. у нас редкий случай что есть перекрывающиеся сети то отсюда и трабл.. просто сервре пытается отвечать не через тот интерфейс.. хотя в яве может так и должно быть... но другие сервера на данной машине живут нормально.. и проблем нет

и еще от него:

проблема не в прослушке подсетей а в ответе сервера.. точнее в том через какой интерфейс он пытается отвечать.. и соответсвенно вся десятка по усмотрению сервера уходит черех 10/8 интерфейс.. а не как в таблице маршрутизации прописано..
 

sys

разработчик l2j-сервера
В общем как я сделал в итоге:

Логин сервер, loginserver.properties
LoginserverHostname=*

Гейм сервер, server.properties
code text
  1. # Bind ip of the gameserver, use * to bind on all available IPs
  2. GameserverHostname=*
  3. GameserverPort=7777
  4.  
  5. # This is transmitted to the clients connecting from an external network, so it has to be a public IP or resolvable hostname
  6. ExternalHostname=89.179.54.5
  7.  
  8. # This is transmitted to the client from the same network, so it has to be a local IP or resolvable hostname
  9. InternalHostname=10.152.199.24
  10.  
  11. AdvIPSystem = True
  12.  
  13. # Bind ip of the loginserver, use * to bind on all available IPs
  14. LoginserverHostname=*
  15. LoginserverPort=2106
  16. LoginTryBeforeBan=20
  17.  
  18. # The Loginserver host and port
  19. LoginPort=9014
  20. LoginHost=la2.kaluga.org


Гейм сервер, advipsystem.properties
code text
  1. IPAdress1 = 10.152.199.24
  2. NetMask1 = 10.152.0.0/255.255.0.0
  3. IPAdress2 = 89.179.54.5
  4. NetMask2 = 89.179.54.0/255.255.255.0,10.221.0.0/255.255.0.0
 
UA MorbidAngel #12.03.2007 11:54
+
-
edit
 

MorbidAngel

разработчик L2J Fortress

Тебе тут вабще не нужна advipsystem...
 

sys

разработчик l2j-сервера
Думаешь? По другому не возбуждалось. Сервер отвечает не по маршрутизации, а так как ему вздумается.
 
UA MorbidAngel #13.03.2007 18:22
+
-
edit
 

MorbidAngel

разработчик L2J Fortress

Эти хосты нужны всего 1 раз - когда клиент залогинился.....сервер просто определяет какой адресс дать клиенту. Так как у тебя 2 ип белый(89.179.54.5) и серый(10.0.1.5) то тебе стандартной логики раздачи адресов клиентам с головой хватит!
code text
  1.  
  2. ExternalHostname=89.179.54.5
  3. InternalHostname=10.0.1.5
  4.  
  5. AdvIPSystem = False
 
AD Реклама Google — средство выживания форумов :)

sys

разработчик l2j-сервера
А фиг там!
10.152/16 которая в бимапе на 89.179.54.5 не видится.
 

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru