Назад

Деление Ака

Автор: ????: Дата: 09.25.2009

У меня такой вопрос как разделить 1 акк на 2 сервера как скажем на ZenyRO:Ultra и Dream чтобы был 1 аккаунт.
И второй как сделать регу на ТХТ афинку)

Автор: Кира: Дата: 09.25.2009

На мотре тхт и рега норм О_О

Автор: Sanasol: Дата: 09.25.2009

На мотре txt??? Тебе плохо? На мотре вообще не афина если уж на то пошло.

Автор: Cole McCormick: Дата: 09.25.2009

тама переквашенная jAthena

Автор: Sanasol: Дата: 09.25.2009

да не то чтобы jAthena там уже наверно motrAthena ))))

Автор: Кира: Дата: 09.25.2009

АА блин моно поподробней чет нифига не выходитпорты второй афины меняю конект чар атены второго серва настроен к первому логин в логине пише REFUSIED а так написано что цепляет и патом ерор=\

Автор: Sanasol: Дата: 09.25.2009

Dual server setup running:
2 seperate sqls, 1 Login, 2 map & Character Servers On Seperate Cpus


Ok. Considering I myself searched for quite a while for a decent guide and still never came up with one, I began to wonder if a guide actually existed.
-- The answer is yes, however it is not geared for this particular setup. Nor was it public.

I have seen both one for dual CPUS, text version only, and one for 1 CPU runing 2 servers, but what about the people that want the freedom of 2 individual servers running on seperate cpus?

This is for you.

Before I even start on the specifics of the guide, I must first give credit where it's due:
I'm using references from 2 individual sources neither being really public.
http://wiki.syafi.com/
http://ead.syafi.com/
(And no i didnt give you the direct links as I feel it's best you look and search a bit. Almost 90% of all questions can be answered here.)
I also want to thank shazeya directly for his assistance. Without his support I wouldn't even have a running server as when I first started I didn't even know what port forwarding was.

The guide.
(messy atm, get over it I'll be back to clean it up soon.)
We are talking about multiple eAthena here, specifically, two Athena servers on seperate hosts.

(?) Why do we want two Athenas on the seperate hosts?
--Simply put it is lighter on your cpu's ram if you run off seperate cpus.
Plus, With them running off seperate computers its easier to use one for developing.

I am going to show you exactly how to set this up and then I'm going to also give you the support functions I used to allow you to run a hidden server. Yes Hidden!

Shaz once told me. "Forget about which servers are running and concentrate on the network..."
... So what do you expect is step one? Exactly...

Your network.

I will assume that by now you have atleast gotten one server running correctly.
If not I suggest you follow the guides below and come back when you do.
FOR WINDOWS USERS - > http://ead.syafi.com/tiki-index.php?page=Windows+Index+
FOR LINUX USERS - > http://ead.syafi.com/tiki-index.php?page=Linux+Index+
________________________________________________________________________________
___

Supposing that everything is setup correctly, I'm going to backtrack a bit into the above guides and leave off with the port forwarding of server 1.
For Purposes of port testing you want to turn your firewall off until you have your ports set.
Again to do this see the above guides.

CODE
Open your router by going to start -> run -> to access your routers configurations.
(may use depening on your router setup. You may also open the net browser and do the same.)

Once your in your router find your setup for port forwarding.

On your main Computer (main server)
you must find your lan IP
CODE
To do this go to start -> run -> type CMD then type ipconfig /all


Note the local IP address found here.
Forward the following ports as follows to this local IP address. (Advanced users feel free to substitute the ports as needed.)

FOR TCP!
CODE
Origination port -> to destination port
Any -> 6900 for your login server
Any -> 6121 for your char server
Any -> 6221 for your map server


NOW UDP!
CODE
Origination port -> to destination port
Any -> 6900 for your login server
Any -> 6121 for your char server
Any -> 6221 for your map server

What this does, is tells your computer that all incomming data from any port that is set with a destination of 6900 should go to 6900.
If It's not meant for 6900 your computer ignores it. Same for 6121 and 6221.
*Note I use 6221 not 5121 for my map server, this keeps my main server running on a smaller range of ports and is recomended.

Now your ports are forwarded for your main server.

Go to your eAthena folder and add these lines to the following files:
(note FQDN is = to your no-ip url without http://www.)

char server:
CODE
userid: s1 (AS DEFINED BY YOUR SQL SETUP)
passwd: p1 (AS DEFINED BY YOUR SQL SETUP)
server_name: *INSERT SERVER NAME*
login_ip: *INSERT YOUR LAN IP*
login_port: 6900
char_ip: *YOUR WAN IP or FQDN *
char_port: 6121


map server:
CODE
userid: s1 (AS DEFINED BY YOUR SQL SETUP)
passwd: p1 (AS DEFINED BY YOUR SQL SETUP)
char_ip: *INSERT YOUR LAN IP or 127.0.0.1*
char_port: 6121
map_ip: *YOUR WAN IP or FQDN *
map_port: 6221


login server:
CODE
login_ip: 127.0.0.1 (note that this setting means it runs locally)
login_port: 6900


inter_conf.txt:
CODE
// MySQL Login SQL Server
login_server_ip: 127.0.0.1
login_server_port: 3306
login_server_id: ragnarok
login_server_pw: ragnarok
login_server_db: ragnarok


// MySQL Character SQL server
CODE
char_server_ip: 127.0.0.1
char_server_port: 3306
char_server_id: ragnarok
char_server_pw: ragnarok
char_server_db: ragnarok


// MySQL Map SQL Server
CODE
map_server_ip: 127.0.0.1
map_server_port: 3306
map_server_id: ragnarok
map_server_pw: ragnarok
map_server_db: ragnarok


// MySQL Log SQL Database
CODE
log_db_ip: 127.0.0.1
log_db_port: 3306
log_db_id: ragnarok
log_db_pw: ragnarok
log_db: log


Subnet_ Athena:
CODE
subnet: 255.255.255.0:LANIP:LANIP (or 127.0.0.1 for both.)


You then need to add a line to the login db in my sql.
CODE
open your mysql -> open the login tab and add:
idnum:2
login name: ragnarok2
pass: ragnarok2
sex:S

this is so that the second server can connect to your computer.
you then need to go into your SQL permissions and allow the new user ragnarok2 to have global access to the login file.

We are now done with the server 1 (AKA MAIN) setup.

____________________________________________

Now we must do the same for the second (AKA TEST) server.

On your second server (TEST server)

Set up your second server aka TEST server the same way you did for the MAIN server by following the guides below.
FOR WINDOWS USERS - > http://ead.syafi.com/tiki-index.php?page=Windows+Index+
FOR LINUX USERS - > http://ead.syafi.com/tiki-index.php?page=Linux+Index+

Port forwarding on TEST server.
CODE
Open your router by going to start -> run -> to access your routers configurations.
(may use depening on your router setup. You may also open the net browser and do the same.)


Once your in your router find your setup for port forwarding.
On your main Computer (main server) you must find your lan IP
CODE
To do this go to start -> run -> type CMD then type ipconfig /all


Not the local IP address found here.
Forward the following ports as follows to this local IP address. (Advanced users feel free to substitute the ports as needed.)

FOR TCP!
CODE
Origination port -> to destination port
Any -> 7900 for your login server
Any -> 7121 for your char server
Any -> 7221 for your map server


NOW UDP!
CODE
Origination port -> to destination port
Any -> 7900 for your login server
Any -> 7121 for your char server
Any -> 7221 for your map server

(7900 isnt really needed for the setup for this guide but has uses later)
*Note I use 7221 for my test map server, this keeps my main server running on a smaller range of ports and is recomended.

Now your ports are forwarded for your TEST server.
Now go to your eAthena folder and add these lines to the following files.
(note FQDN is = to your no-ip url without http://www.)

char server:
CODE
userid: ragnarok2
passwd: ragnarok2
server_name: *INSERT SERVER NAME*
login_ip: *INSERT YOUR MAIN SERVERS LAN IP*
login_port: 6900 (notice its the main servers login port!)
char_ip: *YOUR WAN IP or FQDN *
char_port: 7121


map server:
CODE
userid: ragnarok2
passwd: ragnarok2
char_ip: *INSERT YOUR LAN IP or 127.0.0.1*
char_port: 7121
map_ip: *YOUR WAN IP or FQDN *
map_port: 7221


login server:
CODE
login_ip: 127.0.0.1 (note that this setting means it runs locally)
login_port: 7900

(note this isnt needed but will be used for something else later.)

inter_conf.txt:
// MySQL Login SQL Server
CODE
login_server_ip: *INSERT YOUR MAIN SERVERS LAN IP*
login_server_port: 3306
login_server_id: ragnarok2
login_server_pw: ragnarok2
login_server_db: ragnarok2


// MySQL Character SQL server
CODE
char_server_ip: 127.0.0.1
char_server_port: 3306
char_server_id: ragnarok2
char_server_pw: ragnarok2
char_server_db: ragnarok2


// MySQL Map SQL Server
CODE
map_server_ip: 127.0.0.1
map_server_port: 3306
map_server_id: ragnarok2
map_server_pw: ragnarok2
map_server_db: ragnarok2


// MySQL Log SQL Database
CODE
log_db_ip: 127.0.0.1
log_db_port: 3306
log_db_id: ragnarok2
log_db_pw: ragnarok2
log_db: log


Subnet_ Athena:
CODE
subnet: 255.255.255.0:LANIP:LANIP (or 127.0.0.1 for both.)


You then need to add a line to the login db in my sql.
CODE
open your mysql -> open the login tab and add:
idnum:2
login name: ragnarok2
pass: ragnarok2
sex:S

This is so that the second server can connect to your computer.
You then need to go into your SQL permissions and allow the new user ragnarok2 to have global access to the login file.

Running your servers
To run your servers you will first run your main server's login map and char servers.
Once they have loaded, or atleast the Login server has loaded, Run the Character and map servers on your TEST server.

Congrats your servers online.

_______________________________________
Advanced options complements of Fatalis RO.

Ok, so here's the deal, you run your server, you login and you should see server options.
One being the main server.
One being the test server.
(the names here are defined by the setting in the char conf.txts we edited earlier.)
Basically you log in to one and boom you play on it.

I'm sure that hearing about a hidden server earlier sparked curiosity.
Here's how WE do it.

Remember the earlier setting for the Test servers login that I stated were not needed?
Well they still arent needed, not to run on a dual login....

...But, What if your not wanting a dual login?

Now you may ask, What do you mean? Why not?
-Well let's say you want to use the test server for testing new additions to the game, but you don't want the players to know it's being worked on until its released.
Well since the login is dual login, you can't restrict them from logging in unless you turn it off.
You can turn off character select, but then the developers or other staff can't login to the test server... So heres what we do.

To isolate the test server for testing you simply have to edit the following on your test server conf folder:

char server:
CODE
userid: ragnarok2
passwd: ragnarok2
server_name: *INSERT SERVER NAME*
login_ip: *INSERT TEST SERVER IP OR 127.0.0.1*
login_port: 7900 (notice its the TEST servers login port!)
char_ip: *YOUR WAN IP or FQDN *
char_port: 7121


// MySQL Login SQL Server
CODE
login_server_ip: *INSERT TEST SERVER IP OR 127.0.0.1*
login_server_port: 3306
login_server_id: ragnarok2
login_server_pw: ragnarok2
login_server_db: ragnarok2


Now your server will read off of the SQL login table on the TEST server.
You can disable the option to use _M _F functions to create a login if you like and manually add your staff to the db.
Leaving the _M _F functions on however, won't hurt anything if you continue reading.

Hidden SERVER? WTF?
Yeah, it's possible to hide a running server from your players. It involves a few edits, but I'll walk you through them.

First you need to make sure your Sclientinfo.xml allows 2 entries.
With dual login it will only need to read one, but to use it as a seperate server it requires you to add a second connection.

CODE


korea
sakray

SERVER NAME
SERVER NAME DESC

NO-IP FQDN OR WAN IP

6900 (AKA MAIN SERVER LOGIN PORT)
20
07
REGISTRATION LINK URL

2000001 (ACCOUNT# FOR YOUR GMS- SHOWS GM SPRITE)



SERVER NAME Test Server
SERVER DESC Test Server
NO-IP FQDN OR WAN IP

7900(AKA TEST SERVER LOGIN PORT)
20
07
REGISTRATION LINK URL

2000001





OK, so now your server is running on its own login. You distribute this Sclientinfo.xml to your players.

What this does is before your players input thier login id and pass, it selects the server they play on. Basically it allows you to select the server your logging into.

But what if I told you there was a way to hide the test server from your players?
Hiding your test server from being able to be logged in from the login panel will allow the server to remain online while you test it. It wont need to be turned off as its not accessable to players.

I bet your saying "Oh yeah awesome ... but what about gms.... if the logins hidden how do I connect?"

I'ts simple. Hiding the login is as simple as forcing your players to select the main server. This is done when you set up your clients diff.

When you hex (patch your client with the diff patcher) you will ultimately make 2 server clients.
One will have the option to bypass server selection (this is the one you distribute to your players).
The other, Does not, And can be hosted seperately with a password protected zip/rar file.

What it does, is your players are forced to login to the first selection on the sclientinfo meaning the main server, while your gms are allowed to still select the server of choice.

You can even do the editing and allow players to access the test server for feedback or whatever, by simply changing the settings back to what they were for dual login as shown below.

char server:
CODE
userid: ragnarok2
passwd: ragnarok2
server_name: *INSERT SERVER NAME*
login_ip: *INSERT YOUR MAIN SERVERS LAN IP*
login_port: 6900 (notice its the main servers login port!)
char_ip: *YOUR WAN IP or FQDN *
char_port: 7121


// MySQL Login SQL Server
CODE
login_server_ip: *INSERT YOUR MAIN SERVERS LAN IP*
login_server_port: 3306
login_server_id: ragnarok2
login_server_pw: ragnarok2
login_server_db: ragnarok2


The extra connection on the sclientinfo.xml will only be seen by your gm staff, and wont allow a login if the server isn't attached.
Basically all your doing here is changing the login database.

Also when you are making a gm hexed client (with the diff) why not add a few more features according to what you will need. Such as 10x zoom for map spying or dual window for testing.

You can also add ignore pallet and sprite errors to the normal player clients so that they don't get dced. I wouldn't recommend adding it to the gm client though, if you do that, you wont be able to add new sprites or fix problems with sprites later.

A-17

Автор: Sanasol: Дата: 09.25.2009

достаточно подробно?

Автор: Кира: Дата: 09.25.2009

Ммм это немного не то xD здесь как поднять просто 2 серва на одном хосте а это мне не надо.

Автор: Sanasol: Дата: 09.25.2009

Там на 1 логин сервер 2 серва..... т.е. также как на зениро

Автор: Кира: Дата: 09.25.2009

Присмотрись.Там написано как редактировать каждый из серверов и даже логин сервер второго серва который наф не нужен)Так что гайдик не тот)

Автор: Sanasol: Дата: 09.25.2009

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

Автор: Gira: Дата: 09.25.2009

используй 1 базу для 2 серверов=)

Автор: Sanasol: Дата: 09.25.2009

Гира ты не в тему. ты не понял суть.

Автор: Sanasol: Дата: 09.25.2009


Вот смотри только что без гайдов настроил 2 серва.



____________

Автор: heilige: Дата: 09.25.2009

Раз уж на то пошло, на моторе эмуль собственной разработки и он координально отличается от jAthena (похоже только ядро), хотя бы тем, что он "раскушан" на 5 частей и на нем присутствует куча команд и 2(ака advance) класс профессий и разбросан по дедикам.
По поводу тхт версии, да можно сделать регистрацию через сайт, но при одном условии:
сервер находится там же, где и сайт, и желательно под Windows платформой.

Кстати, если есть у кого - киньте ссылку на jAthena последний ревизии, я в ней поколупаюсь.

Автор: unded: Дата: 09.25.2009