Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Windows Servers

Support::Windows Servers Support forum for Windows EQEMu users.

Reply
 
Thread Tools Display Modes
  #1  
Old 03-28-2008, 02:41 AM
rambus
Fire Beetle
 
Join Date: Nov 2006
Posts: 3
Default Is there anyone know how to run eqemu across mutiple sever

I wish to run eqemu across two seprate servers, one is for zone.exe and the other is for world.exe and database. can i ask how to make the configuration?
Reply With Quote
  #2  
Old 03-28-2008, 05:05 AM
TheLieka
Developer
 
Join Date: Oct 2004
Location: THE ATL (wut wut)
Posts: 325
Default

I've never done it before personally, but I believe you'd do it like this:

Server 1 (World Server):
Have the following in your eqemu folder:
World.exe
EMuSharedMem.dll
eqemu_config.xml
eqtime.cfg
opcodes.conf
patch_Anniversary.conf
patch_Live.conf
patch_Titanium.conf
.\worldui
.\templates
spells_us.txt

Server 2 (Zone Server):
Have the following in your eqemu folder:
.\quests
.\maps
.\plugins
Zone.exe
eqemu_config.xml
eqlaunch.exe (if you use it)
EMuSharedMem.dll
eqtime.cfg

eqemu_config.xml for both servers:
Code:
<?xml version="1.0">
<server>
	<world>
	    <shortname>Whatever Your Server's Short Name Is</shortname>
	    <longname>Whatever Your Server's Long Name Is</longname>
	           	           
	<!-- Only specify these two if you really think you need to. -->
 	<!-- <address>127.0.0.1</address> -->
	<!-- <localaddress>127.0.0.1</localaddress> -->
	   
	<!-- Loginserver information.  -->
	 <!--    <loginserver>  -->
	   <!--      <host></host>  -->
	    <!--     <port></port>  -->
	    <!--     <account></account>  -->
	    <!--     <password></password>  -->
	    </loginserver>
	   
	    <!-- Sets the shared key used by zone/launcher to connect to world -->
	    <key>Some Long String of Text That You Come Up with (must be the same on both servers)</key>

	    <tcp ip="Read explanation of this at the bottom of the post" port="9000" telnet="disable"/>

	    <!-- Enable and set the port for the HTTP service. -->
	    <http port="9080" enabled="true" mimefile="mime.types" />
	</world>

	<!-- Database configuration, replaces db.ini. -->
	<database>
	    <host>IP Address of Server 1</host>
	    <port>3306</port>
	    <username>MySQL Login Name</username>
	    <password>MySQL Password</password>
	    <db>Database Name</db>
	</database>
</server>
After that's all said and done, set up port forwarding on your router/firewall to send requests over tcp/udp 9000 to your world server's IP address, then ports 7000 - 7100 to your zone server's IP address (depending on how many zones you want to run, each one will need a port, and they increment from 7000 - whatever the last one is).

You will also need to make sure that MySQL is configured to allow your MySQL Login name to connect from the zone server. If you're using "root", the default option in MySQL is to not allow it to connect from any machine other than "localhost". So you'll need to fix that too.

Again, I've never done it, but I believe that would work.

Explanation of "<tcp ip=" tag.
DNS Name of Server 1 (this must be accessible by the public, and zone server, you can accomplish this by creating a host record for the public DNS record, then specifying name and IP in the host record on zone and world servers - i.e. myserver1.dyndns.org = 72.34.56.123 to the public (your public IP), so on your zone server's host file (assuming you're using window: c:\windows\system32\drivers\etc\hosts - open with notepad), you'd make an entry for: myserver1.dyndns.org <tab> 192.168.1.65 (your world server's private IP address). Then on your world server's host file, you'd make an entry for: myserver1.dyndns.org <tab> 192.168.1.65 (your world server's private IP address). Now, when the world or zone servers try to access myserver1.dyndns.org, they will get the internal IP address of your world server, and when players outside of your network try to access myserver1.dyndns.org, they will get your public IP.

Thanks,
Dax
__________________
Daxum



Former ServerOp - Vallon Zek / Tallon Zek Emu Server - Legit / Guild PvP - (2007 - 2011 RIP)

Last edited by TheLieka; 03-28-2008 at 01:09 PM..
Reply With Quote
  #3  
Old 03-28-2008, 06:33 AM
TheLieka
Developer
 
Join Date: Oct 2004
Location: THE ATL (wut wut)
Posts: 325
Default

actually the .conf files need to be in the eqemu folder on the Zone server.

Dax
__________________
Daxum



Former ServerOp - Vallon Zek / Tallon Zek Emu Server - Legit / Guild PvP - (2007 - 2011 RIP)
Reply With Quote
  #4  
Old 03-28-2008, 03:30 PM
rojadruid
Discordant
 
Join Date: May 2005
Location: Smith Falls, Ontario, Canada
Posts: 283
Default

There is a post by me around here some where explaining my setup. I run a number of different computers together for my server. I run anywhwre from 2 to 5 computers to get the server load spread out. Mysql and world with 10 dynamics or soo and the rest of the computers 1 to a continent. with this setup I have 181 zones static 20 dynamic. runs fine with no problems. its all about your xml config file.
__________________
Rojadruid

Innoruuk Server [legit]
Server Admin.
Server Status: UP
Reply With Quote
  #5  
Old 03-28-2008, 04:34 PM
rambus
Fire Beetle
 
Join Date: Nov 2006
Posts: 3
Default

Thx TheLieka for the reply. I had tried this method, but it took about 15mins to boot up the remote zone and when ppl trying to enter this zone, time out occured. Dose anyone know this issue? Or, maybe I forget some contents?
Reply With Quote
  #6  
Old 03-28-2008, 11:36 PM
Aramid
Discordant
 
Join Date: May 2006
Posts: 356
Default

Here is where ROJADRUID shows his config files. Take a look and see if your is different...

http://www.eqemulator.net/forums/showthread.php?t=23916
__________________
Random Segments of Code....
Reply With Quote
  #7  
Old 03-30-2008, 10:15 AM
Ven-elexver1
Sarnak
 
Join Date: Dec 2007
Posts: 60
Default

Sup guys. I have been wondering how to boost my server also . I run one pc its sad. 1.2gb,512mb ram,cable 5mb .Have 20 zones Dynamic and one static .only had 6 players on at one time for me lag is not bad but I'm at the server for others I'm not sure. i have a 2 puter also 1.2gb ,256mb ram,router to the cable 5mb.I only use it for game play but i could maybe set it to lighten the load on my first PC. so on PC 2 i will need navicat and mysql set up the same as pc 1 right ? or is it done from the files on pc 1 ? In short what do i need on PC 2 as in programs ?
Reply With Quote
  #8  
Old 03-30-2008, 05:43 PM
Aramid
Discordant
 
Join Date: May 2006
Posts: 356
Default

I did this on 2 Linux Boxes today and it's working, so it should work on Windows as well..

The 1st Box has the World running and the 2nd box is running the Zones

You will need to setup a user that can access the MySQL DB from another address and grant them full permissions on the database.

Leave your 1st setup alone and run world on it. Do NOT load up eqlaunch. No changes are necessary to the XML file.

On the second computer to run Zones, all you need for MySQL is the client. Setup the XML file with the host being setup using the 1st computers Lan IP address. For the world local address, also use the 1st computers Lan IPaddress for both the address and localaddress. In the area to set IP/PORT for the tcp connections, also put the 1st machines local ip address aloing with port 9000. The rest I left alone.

Now, only run eqlaunch zone on the 2nd machine.

Now, REMEMBER, you have to change the ZONE PORTS on your ROUTER to forward to the ZONE computer instead of the WORLD computer.

I've only run Dynamic Zones so far, tomorrow I'll setup statics. I'm also running the EQBOTS code as well.

Here is the xml file on my WORLD SERVER:
Code:
<?xml version="1.0">
<server>
	<world>
		<shortname>ROS</shortname>
		<longname>ROSWELL AREA 57</longname>

		<!-- Only specify these two if you really think you need to.  (read: You don't) -->
		<!-- <address>XX.XXX.XXX.XX</address> The WAN IP ADDRESS goes here.
		<!-- <localaddress>XX.XX.XX.XX</localaddress> --> The LOCAL LAN IP Address Goes here

		<!-- Loginserver information.  Defaults shown -->
		<loginserver>
			<host>eqemulator.net</host>
			<port>5998</port>
			<account></account>
			<password></password>
		</loginserver>

		<!-- Server status.  Default is unlocked -->
		<!--<locked/>-->
		<!-- <unlocked/> -->

		<!-- Sets the ip/port for the tcp connections.  Both zones and console (if enabled).  Defaults are shown -->
		<tcp ip="localhost" port="9000" telnet="disable"/>

		<!-- Sets the shared key used by zone/launcher to connect to world -->
		<key>some long random string</key>
		
		<!-- Enable and set the port for the HTTP service.  Defaults are shown -->
		<http port="9080" enabled="true" mimefile="mime.types" />
	</world>

	<!-- Chatserver (channels) information.  Defaults shown -->
	<chatserver>
		<host>channels.eqemulator.net</host>
		<port>7778</port>
	</chatserver>

	<!-- Mailserver (in-game mail) information.  Defaults shown -->
	<mailserver>
		<host>channels.eqemulator.net</host>
		<port>7779</port>
	</mailserver>

	<zones>
		<defaultstatus>0</defaultstatus>

		<!-- Sets port range for world to use to auto configure zones -->
		<ports low="7000" high="7500"/>
	</zones>

	<!-- Database configuration, replaces db.ini.  Defaults shown -->
	<database>
		<host>localhost</host>
		<port>3306</port>
		<username>YourDBUserName</username>
		<password>Your DB Password</password>
		<db>YOUR DB</db>
	</database>

	<!-- Launcher Configuration -->
	<launcher>
		<!-- <logprefix>logs/zone-</logprefix> -->
		<!-- <logsuffix>.log</logsuffix> -->
		<!-- <exe>zone.exe or ./zone</exe> -->
		<!-- <timers> restart="10000" reterminate="10000" initial"20000" interval"2000" </timers> -->
	</launcher>

	<!-- File locations.  Defaults shown -->
	<files>
		<!-- <spells>spells_us.txt</spells> -->
		<!-- <opcodes>opcodes.conf</opcodes> -->
		<!-- <logsettings>log.ini</logsettings> -->
		<!-- <eqtime>eqtime.cfg</eqtime> -->
	</files>
	<!-- Directory locations.  Defaults shown -->
	<directories>
		<!-- <maps>Maps</maps> -->
		<!-- <quests>quests</quests> -->
		<!-- <plugins>plugins</plugins> -->
	</directories>
</server>
Here is the ZONE COMPUTER's XML File:

Code:
<?xml version="1.0">
<server>
	<world>
		<shortname>ROS</shortname>
		<longname>ROSWELL AREA 57</longname>

		<!-- Only specify these two if you really think you need to.  (read: You don't) -->
		<!-- <address>XX.XX.XX.XX</address>Put the LOCAL LAN ADdress of the WORLD Server here.
		<!-- <localaddress>XX.XX.XX.XX</localaddress> -->Put the LOCAL LAN ADdress of the WORLD Server here as well.

		<!-- Loginserver information.  Defaults shown -->
		<loginserver>
			<host>eqemulator.net</host>
			<port>5998</port>
			<account></account>
			<password></password>
		</loginserver>

		<!-- Server status.  Default is unlocked -->
		<!--<locked/>-->
		<!-- <unlocked/> -->

		<!-- Sets the ip/port for the tcp connections.  Both zones and console (if enabled).  Defaults are shown -->
		<tcp ip="XX.XX.XX.XX port="9000" telnet="disable"/>Put the LOCAL LAN ADdress of the WORLD Server here.

		<!-- Sets the shared key used by zone/launcher to connect to world -->
		<key>some long random string</key>
		
		<!-- Enable and set the port for the HTTP service.  Defaults are shown -->
		<http port="9080" enabled="true" mimefile="mime.types" />
	</world>

	<!-- Chatserver (channels) information.  Defaults shown -->
	<chatserver>
		<host>channels.eqemulator.net</host>
		<port>7778</port>
	</chatserver>

	<!-- Mailserver (in-game mail) information.  Defaults shown -->
	<mailserver>
		<host>channels.eqemulator.net</host>
		<port>7779</port>
	</mailserver>

	<zones>
		<defaultstatus>0</defaultstatus>

		<!-- Sets port range for world to use to auto configure zones -->
		<ports low="7500" high="7200"/>
	</zones>

	<!-- Database configuration, replaces db.ini.  Defaults shown -->
	<database>
		<host>XX.XX.XX.XX</host>Put the LOCAL LAN ADdress of the WORLD Server here to conenct to MySQL Server
		<port>3306</port>
		<username>Your DB USername</username>
		<password>Your Db Password</password>
		<db>Your DB</db>
	</database>

	<!-- Launcher Configuration -->
	<launcher>
		<!-- <logprefix>logs/zone-</logprefix> -->
		<!-- <logsuffix>.log</logsuffix> -->
		<!-- <exe>zone.exe or ./zone</exe> -->
		<!-- <timers restart="10000" reterminate="10000" initial="20000" interval="2000"> -->
	</launcher>

	<!-- File locations.  Defaults shown -->
	<files>
		<!-- <spells>spells_us.txt</spells> -->
		<!-- <opcodes>opcodes.conf</opcodes> -->
		<!-- <logsettings>log.ini</logsettings> -->
		<!-- <eqtime>eqtime.cfg</eqtime> -->
	</files>
	<!-- Directory locations.  Defaults shown -->
	<directories>
		<!-- <maps>Maps</maps> -->
		<!-- <quests>quests</quests> -->
		<!-- <plugins>plugins</plugins> -->
	</directories>
</server>
For the actual eqemulator code, I just copied it all from one to the other so nothing would be missing. It's working and thru the router...
__________________
Random Segments of Code....
Reply With Quote
  #9  
Old 04-05-2008, 09:25 AM
Ven-elexver1
Sarnak
 
Join Date: Dec 2007
Posts: 60
Default

Sweet TY for the help.
Reply With Quote
  #10  
Old 02-17-2009, 11:07 PM
enkendu
Fire Beetle
 
Join Date: Nov 2002
Posts: 27
Cool 2 World servers

Ok, my questions is sorta like these, i would like to run two servers of EQ one a non-legit and one a progressive, (1) is it possible to run them both on the same machine? my machine is very much able to handle the load, and if this is possible (2) question 2 would be, how would i make it so that whoever logged into my login server would see both of my EQ servers in the servers list?


is that possible? to have one login server direct players to two worlds? i use minilogin through Hamachi.

any leads or help would be appreciated
Reply With Quote
  #11  
Old 02-18-2009, 11:17 PM
Yeormom
Discordant
 
Join Date: Apr 2004
Location: 127.0.0.1
Posts: 402
Default

If you run two servers from the same IP address, they must each have different port numbers. They will both show up and players can connect to both if all ports are properly forwarded assuming you are using a router.

If your machine has plenty of power behind it, the safest way to run multiple servers from the same machine is to virtualize it. Since your obviously running Windows, download Microsoft Virtual Server 2005 R2 and you'll be good to go! There is no charge to license MSVSS now thanks to increased competition.
__________________
Yeorwned
Bane of Life [Custom Classic/PvP]
Reply With Quote
  #12  
Old 02-19-2009, 07:18 PM
enkendu
Fire Beetle
 
Join Date: Nov 2002
Posts: 27
Default

Thank you for the info, now i just have to figure out all the IP stuff.
Reply With Quote
  #13  
Old 02-20-2009, 08:57 PM
rojadruid
Discordant
 
Join Date: May 2005
Location: Smith Falls, Ontario, Canada
Posts: 283
Default

I belive that port 9000 is hardcoded into either the client or the server and is not changeable if its in the client but the server might be possible but never heard of it being done.
__________________
Rojadruid

Innoruuk Server [legit]
Server Admin.
Server Status: UP
Reply With Quote
  #14  
Old 02-22-2009, 01:55 AM
enkendu
Fire Beetle
 
Join Date: Nov 2002
Posts: 27
Default

so what if i have 2 machines? one machine running one server and the other machine running the other server? but both machines directing thier world IP to the same login server? that way i would only need one login? would that work? or would that be the same as running both servers from the same machine?
Reply With Quote
  #15  
Old 02-22-2009, 10:30 AM
rojadruid
Discordant
 
Join Date: May 2005
Location: Smith Falls, Ontario, Canada
Posts: 283
Default

Quote:
Originally Posted by enkendu View Post
so what if i have 2 machines? one machine running one server and the other machine running the other server? but both machines directing thier world IP to the same login server? that way i would only need one login? would that work? or would that be the same as running both servers from the same machine?

This should work as thats the way the public login server works.
__________________
Rojadruid

Innoruuk Server [legit]
Server Admin.
Server Status: UP
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 03:42 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3