Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Lineage II (https://forum.zone-game.info/forumdisplay.php?f=34)
-   -   Настроить сервер Lineage Interlude на 3 локальных сети (https://forum.zone-game.info/showthread.php?t=2070)

megaBOT 11.10.2008 10:12

Настроить сервер Lineage Interlude на 3 локальных сети
 
вообщем проблема такая...

есть сервер, имеющий 3 сетевые карты... то есть есть выход на 3 сети, которые не видят друг друга...

как настроить игровой сервер на 3 ипа, чтобы каждая сеть могла заходить на этот сервер...

в каждой сети много диапазонов ипов...

подскажите пожалуйста....

заранее спасибо...

Bliznecserj 12.10.2008 11:54

Ответ: Настроить сервер Lineage Interlude на 3 локальных сети
 
Цитата:

Сообщение от megaBOT (Сообщение 21049)
вообщем проблема такая...

есть сервер, имеющий 3 сетевые карты... то есть есть выход на 3 сети, которые не видят друг друга...

как настроить игровой сервер на 3 ипа, чтобы каждая сеть могла заходить на этот сервер...

в каждой сети много диапазонов ипов...

подскажите пожалуйста....

заранее спасибо...

Подключение типа "мост" Настраиваете одинаковые маски подсети и ИП адреса только с разными цифрами на конце А дальше все как при камунизме))))

Джамшуд 14.10.2008 00:46

Ответ: Настроить сервер Lineage Interlude на 3 локальных сети
 
а кто нить может дать внятный ответ как настроить опции ла2эму сервера чтоб с 2 разных провайдеров могли заходить одновременно на гейм сервер люди?

Первый провайдер(постоянный айпи): 217.66.26.197
Диапазон:
10.0.0.0/255.0.0.0, 217.66.16.0/255.255.240.0, 217.173.16.0/255.255.252.0, 217.173.28.0/255.255.252.0, 89.251.144.0/255.255.248.0, 83.151.0.0/255.255.240.0, 217.173.20.0/255.255.252.0, 217.173.24.0/255.255.252.0, 217.198.11.24/255.255.255.248, 217.198.13.104/255.255.255.248, 217.198.15.32/255.255.255.252, 217.198.15.78/255.255.255.255, 217.198.15.98/255.255.255.255

Второй провайдер: 91.144.154.168

Диапазон:
91.144.152.0/22, 91.144.154.0/22, 91.144.155.0/22, 91.144.156.0/22, 10.10.0.0/16, 10.20.0.0/16, 10.40.0.0/16, 10.165.0.0/16, 10.181.0.0/16, 10.182.0.0/16, 10.183.0.0/16, 10.184.0.0/16, 10.185.0.0/16, 10.186.0.0/16, 10.187.0.0/16, 10.15.0.0/16, 10.25.0.0/16, 10.35.0.0/16, 10.166.0.0/16, 10.167.0.0/16, 10.168.0.0/16, 10.169.0.0/16, 10.170.0.0/16, 10.171.0.0/16, 10.172.0.0/16, 10.173.0.0/16, 10.174.0.0/16, 10.175.0.0/16, 10.176.0.0/16, 10.186.0.0/16, 10.187.0.0/16,10.16.0.0/16, 10.190.0.0/16, 10.22.0.0/16, 10.18.0.0/16, 192.168.0.0/16

желательно наглядно рассувать :) эту каку в
Код:

---------------------------------
# Section: Network Connection Setup
# ---------------------------------
# Bind ip of the gameserver, use 0.0.0.0 to bind on all available IPs
GameserverHostname = *.*.*.*
GameserverPort = 7777

# This is transmitted to the clients connecting from an external network,
# so it has to be a public IP or resolvable hostname
ExternalHostname = *.*.*.*

# This is transmitted to the client from the same network,
# so it has to be a local IP or resolvable hostname
InternalHostname = *.*.*.*

InternalNetworks =
OptionalNetworks =

# The Loginserver host and port
LoginPort = 9014
LoginHost = *.*.*.*

# ---------------------
# Section: Subnet Setup
# ---------------------
# Define optional networks and router IPs
#
# Format:
#
# Subnet = host, net/mask; host, net/mask, net/mask
#
#          host - IP address (200.100.200.100) or
#                fully qualified domain name (example.org)
#
#          net/mask - mask 192.168.0.0/16 or 192.168.0.0/255.255.0.0
#                    would be 192.168.*.*
#
# External - external hostname, you defined in server.properties
# Internal - internal hostname, you defined in server.properties
#
# Example:
# Subnet =

Subnet = Internal,
Subnet = External,

помогите, закидаю спасибками :help:

zenn 14.10.2008 01:17

Ответ: Настроить сервер Lineage Interlude на 3 локальных сети
 
эм... Я думаю наврятли... бо ты баян мутиш .... Нет смысла вшивать на 2 внешних IP. ето лишние конфликты и замарочки

Джамшуд 14.10.2008 09:55

Ответ: Настроить сервер Lineage Interlude на 3 локальных сети
 
ну когда стоял у нас офф с4 тупо спасло установка 2-х логин серверов, причем для одного из провайдеров статус показывал что выключен сервер, но нормально заходило
а в этой яве я хз, не разу не пробовали двух провайдеров подцепить, но ребята это же реально, делают же на яву заход с разных провайдеров + заход с внехи еще

просто кто то знает и молчид :(

PROGRAMMATOR 14.10.2008 11:54

Ответ: Настроить сервер Lineage Interlude на 3 локальных сети
 
megaBOT, проблема решаема, но нужна правка ядра, делов на пять минут.
Если интересно, то вот как это сделать на эмуляторе L2jServer:

Лезем и находим в директориях файл ServerList.java, открываем его:

PHP код:

public ServerList(L2LoginClient client)
    {
        
_servers = new FastList<ServerData>();
        
_lastServer client.getLastServer();
        
        for (
GameServerInfo gsi GameServerTable.getInstance().getRegisteredGameServers().values())
        {
            if (
gsi.getStatus() == ServerStatus.STATUS_GM_ONLY && client.getAccessLevel() > 0)
            {
                
// Server is GM-Only but you've got GM Status
                
addServer(client.usesInternalIP() ? gsi.getInternalHost() : gsi.getExternalHost(), gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), gsi.getStatus(), gsi.getId());
            }
            else if (
gsi.getStatus() != ServerStatus.STATUS_GM_ONLY)
            {
                
// Server is not GM-Only
                
addServer(client.usesInternalIP() ? gsi.getInternalHost() : gsi.getExternalHost(), gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), gsi.getStatus(), gsi.getId());
            }
            else
            {
                
// Server's GM-Only and you've got no GM-Status
                
addServer(client.usesInternalIP() ? gsi.getInternalHost() : gsi.getExternalHost(), gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), ServerStatus.STATUS_DOWNgsi.getId());
            }
        }
    } 

Добавим нужные нам функции

PHP код:

addServer("192.168.0.1"gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), gsi.getStatus(), gsi.getId());
            
addServer("192.168.0.2"gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), gsi.getStatus(), gsi.getId());
            
addServer("192.168.0.3"gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), gsi.getStatus(), gsi.getId()); 

IP-адреса ясное дело, измените на свои, добавляем это всё в код что я приводил выше.

PHP код:

public ServerList(L2LoginClient client)
    {
        
_servers = new FastList<ServerData>();
        
_lastServer client.getLastServer();
        
        for (
GameServerInfo gsi GameServerTable.getInstance().getRegisteredGameServers().values())
        {
            
addServer("192.168.0.1"gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), gsi.getStatus(), gsi.getId());
            
addServer("192.168.0.2"gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), gsi.getStatus(), gsi.getId());
            
addServer("192.168.0.3"gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), gsi.getStatus(), gsi.getId());
            
            if (
gsi.getStatus() == ServerStatus.STATUS_GM_ONLY && client.getAccessLevel() > 0)
            {
                
// Server is GM-Only but you've got GM Status
                
addServer(client.usesInternalIP() ? gsi.getInternalHost() : gsi.getExternalHost(), gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), gsi.getStatus(), gsi.getId());
            }
            else if (
gsi.getStatus() != ServerStatus.STATUS_GM_ONLY)
            {
                
// Server is not GM-Only
                
addServer(client.usesInternalIP() ? gsi.getInternalHost() : gsi.getExternalHost(), gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), gsi.getStatus(), gsi.getId());
            }
            else
            {
                
// Server's GM-Only and you've got no GM-Status
                
addServer(client.usesInternalIP() ? gsi.getInternalHost() : gsi.getExternalHost(), gsi.getPort(), gsi.isPvp(), gsi.isTestServer(), gsi.getCurrentPlayerCount(), gsi.getMaxPlayers(), gsi.isShowingBrackets(), gsi.isShowingClock(), ServerStatus.STATUS_DOWNgsi.getId());
            }
        }
    } 

Всё, главное в логине указать правильный порт, а на IP-адреса вписанные в конфиг он не будет обращать внимания. Один минус данного способа, это то что все три сервера будут отображаться в клиентах всех сетей, но зайти они смогут только на тот, который привязан к их IP-адресу.Если у вас есть более красивое решение проблемы то, дерзайте.

Джамшуд, пробуйте реализовать этим способом, если нет, то загляните на форум L2Emu.

С Ув. Юрий

Джамшуд 14.10.2008 12:14

Ответ: Настроить сервер Lineage Interlude на 3 локальных сети
 
PROGRAMMATOR, если дело это 5 минут, у Вас есть возможность сделать это и выложить сборочку чтоб проверить?
я в яве не волоку, и боюсь напартачить :(

ой стерите сообщение я читал пост когда он еще не был дописан

Юрий, огромное спасибо!

нас полностью устраивает такое решение проблемы
когда ставили птс с4 и интерлюд тоже так почти делали но там все проще было

PROGRAMMATOR 14.10.2008 12:19

Ответ: Настроить сервер Lineage Interlude на 3 локальных сети
 
У меня интернет через GPRS, так что это неудобно как минимум. Да напартачить там нечего, если напортачили то, просто выбьет ошибку при компиляции. Кстати, компилятор выклал на сайте, компилит за "два щелчка" мышью :)

Добавлено через 15 минут
Цитата:

Сообщение от PROGRAMMATOR (Сообщение 21162)
Юрий, огромное спасибо!

Незачто, обращайтесь!

megaBOT 18.10.2008 22:37

Ответ: Настроить сервер Lineage Interlude на 3 локальных сети
 
PROGRAMMATOR, не могли бы Вы подробно написать как именно залезть в это ядро ? где оно находится ? чем его редактировать ? по порядку пожалуйста...

Добавлено через 10 часов 14 минут
Цитата:

Сообщение от Bliznecserj (Сообщение 21099)
Подключение типа "мост" Настраиваете одинаковые маски подсети и ИП адреса только с разными цифрами на конце А дальше все как при камунизме))))

не понимаю тебя =)

может по пунктам распишешь ? если не сложно...

Gawric 19.10.2008 10:14

Ответ: Настроить сервер Lineage Interlude на 3 локальных сети
 
подключением типа МОст, это когда у тебя 2 и более интерфейсов сети, в XP выделяешь 2 интерфейса и тыкаеш Создать мост, получается 1 интерфейс на 2 сетевухах, выдаеш ему IP вот и все)) у тебя 2 сети на одном IP, сразу скажу в XP Мосты просто Гальные!!!!!!!! Куча просто куча галов rout вообще непонятно как там происходит)).
ПРоще не париться наверное и купит маршрутизатор и через него эти все дела творить!!!!


Текущее время: 05:58. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot