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 04-20-2008, 09:29 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default Multiple PCs Running Zone Servers

First let me say that I have searched for this in the past and have found some information, but it wasn't nearly enough to get this running properly. I have only seen people post their config files, but from what I can tell so far, it seems like it takes much more than that to get this working properly. I experimented around quite a bit the other night and could not get this working the way I wanted.

What I want is to have my Server PC run all zones dynamically with the exception of a few zones that I want to run on a secondary PC statically.

So, I assume that I set the launcher_zones table to look like:

(Using navicat btw)

launcher | zone | port
zone | potimeb | 7250
zone | veeshan | 7260
zone | solrotower | 7270

I have my router to forward ports 7000 - 7249 to my Server PC and ports 7250 - 7500 to my Secondary PC. So, setting the launcher to these ports should send those zone requests to the Secondary PC (at least I think). Do I need to open any other ports to allow this, or does it communicate directly PC to PC on my LAN via the router? That is what I would imagine anyway. I only have the zone server ports and port 9000 forwarded atm. Do I need to open 3306 or 9080 or anything?

And here are the config files I was trying.

Server PC Config (IP 192.168.1.101):
Code:
<?xml version="1.0">
<server>
	<world>
		<shortname>stormhaven</shortname>
		<longname>Storm Haven - Custom Legit [sh.makeforum.org]</longname>

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

		<!-- 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>

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

	<!-- Database configuration, replaces db.ini.  Defaults shown -->
	<database>
		<host>localhost</host>
		<port>3306</port>
		<username>un</username>
		<password>pw</password>
		<db>peq</db>
	</database>

</server>
Secondary PC Config (IP 192.168.1.100):
Code:
<?xml version="1.0">
<server>
	<world>
		<shortname>stormhaven</shortname>
		<longname>Storm Haven - Custom Legit [sh.makeforum.org]</longname>

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

		<!-- Sets the ip/port for the tcp connections.  Both zones and console (if enabled).  Defaults are shown -->
		<tcp ip="192.168.1.101" 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>

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

	<!-- Database configuration, replaces db.ini.  Defaults shown -->
	<database>
		<host>192.168.1.101</host>
		<port>3306</port>
		<username>un</username>
		<password>pw</password>
		<db>peq</db>
	</database>

	<!-- Directory locations.  Remote Directory -->
	<directories>
		<quests>\\192.168.1.101\c\eqemu\quests</quests> -->
	</directories>
</server>

Next, I started the server from the server PC, but waited to hit <any key> to start zones loading until it was fully loaded on the Server PC and after I started zone.exe on the Secondary PC. I then hit the spacebar on the Server PC to start the dynamic zones all loading.

It seems like the results I am getting are that I can't zone to other zones and after trying multiple configs and setups, it seemed like it kept making the zones I set to load statically load with a dynamic port instead. I am guessing that is because it wasn't able to connect to the secondary zone server so it just loaded them dynamically.

Does anyone here know exactly what it takes to set one of these up the way I want? I have been able to get it to load all zones on the secondary PC, but I can't get it to split zones between the 2 PCs. I would MUCH appreciate if someone could provide a nice list of steps or walkthrough/guide on setting this up properly. Or if there is a post or wiki about it that someone knows of, I would appreciate being pointed in the right direction.

I know most of the preferred servers run multiple zone servers. If one of you guys see this and wouldn't mind telling me what I did wrong, that would be awesome!

Thanks in advance!

Oh, and here is a PM from Aramid that might give more info on what he found when testing this out.

Quote:
Yes, I was running all my zones on the 2nd server, but I generally like a challenge.

So, it took me until 3:00am to get it working, but I did and I will try to explain it as best as I can.

It seems it does NOT matter what you put in the eqemu_config.xml file as far as the port for the zones go. I had my 2nd server setup to use ports 7200-7300 and I put STATIC Zones in the DB and had them load up on 7200-7201-7203.

Well, The World Server wants to send you to that zone on the port it wants to. ie: I would log in my character and he was in POK. PoK was running on the 2nd server with ports 7200-7300 forwarded on the router. It would timeout and go back to the login screen. When checking the eqemu_debug_world.log, it would show me connection, being sent to pok, but not on the port that I booted the zone up with, but like 7009 which was not being forwarded to the 2nd server.

Anyway, to keep this from being a Novel, here what I finally did.

Set the configs up as you think they should be as far as the zone ports are concerned.

Create your 2 zone launchers in the DB and set the zones you want static on the 2nd server. and then configure your dynamic zones on the world server. I put my static on 7200-7201-7202.

The dynamics don't get assigned ports as you know.

Now, start the World Server and wait until it is fully booted up with the 5 dynamic zones.
Once it is completely booted up, boot up your 2nd Zone Server.

Now, run the Templates that comes with the Emulator and run on port 9080 by default. Go to the ZONES Link, not the status link and wait untill it shows you ALL of the zones it should be showing X Dynamics and 3 Statics. Notice what PORTS are assigned to them. These are the ports you must forward on your router to the machine where they are loaded up on... at least I thought.
I ended up having to forward the UDP ports before it would work. My router LinkSys RV082 has the TCP and UDP ports seperate and you can config each one individually. Once I forwarded the UDP ports, it all worked being setup the way I said above. The EMU Templates was what finally got me to thinking about which ports were forwarded to where... You'll see when you look at it... If you do get in touch with CaveDude, let me know what he tells you.
Sorry for the typos, but I'm half asleep now..

BTW, this was tested from the outside in. The servers are on my Comcast Cable connection and I logged in from my AT&T DSL line.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #2  
Old 04-20-2008, 10:13 PM
Aramid
Discordant
 
Join Date: May 2006
Posts: 356
Default

But it WORKS on my test servers... Did you load up the Web Templates in EQEMU and look at what ports it was loading the zones up in and then forward your router accordingly?
It takes some time for ALL of the zones to get fully loaded, so be patient for them all to appear. This is what I did and also found that I had to forward the UDP ports with the same ranges, why I don't know. I am using an RV082 LinkSys router and until I did, I still could not connect to a zone on the ZONE only server.
After I got it working, I shut it all down and restarted it and the port forwarding held true and I was able to access all of the zones I had loaded up.

I am beginning to think that you don't need to set ports in the 7000 range on the Zone only server because they are used by WORLD , not zone. It says it right there in the config file.
ie:<!-- Sets port range for world to use to auto configure zones -->
__________________
Random Segments of Code....

Last edited by Aramid; 04-21-2008 at 06:16 AM..
Reply With Quote
  #3  
Old 04-21-2008, 12:53 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Ya, I think the setting in the config file is just the max port range you want set for dynamic zones to have access to.

So, does anyone know if the players connect directly to the secondary zone server PC, or do they go through the main server that is running the world to get there?

I did notice that zones were being loaded on other ports besides the 7000 range. I think most of them were in the 2000 range when actually loaded. So, in order to set this up properly, I need to forward the 2000 range ports that I see in the templates to my secondary server in my router config? Or are those 2000 ports something else that can be ignored?

Sorry if I am over-complicating this lol. I just don't want to have my server down for a couple hours again working on this tonight. Trying to verify as much as I can before I start messing with it again.

Does anyone know exactly how this works and how to get it setup? I don't want to have sloppy configs or open up extra ports that don't need to be opened.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #4  
Old 04-21-2008, 05:39 AM
Aramid
Discordant
 
Join Date: May 2006
Posts: 356
Default

One more time...
Did you look at the ZONES in the EQEMU Web Templates to see what PORTS to Forward on your router?
__________________
Random Segments of Code....
Reply With Quote
  #5  
Old 04-21-2008, 06:39 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Sorry Aramid, lol. Just trying to get as much info as I can before trying the changes again. I don't like having the server down for a long period of time while I mess with this stuff. I would like to get it right on the first try (well this time anyway).

I tried opening up the templates, but they all show some weird errors and don't display properly. Do I need to have something special configured or running to get them to work? I tried opening up port 9080 to see if that made a difference, but I don't see any. Do I have to access it from another machine for it to work or something? I have some Apache and PHP stuff setup on this PC, but that doesn't seem to make them work either. I have tried loading them in IE and Firefox, but both get the same issues. I didn't see any kind of config file to mess with.

It seems like the templates are calling to use perl, but perl isn't working for them. Any ideas?

Also, my router lets me forward TCP or UDP packets or both. I just set them all to both.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #6  
Old 04-21-2008, 07:22 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

So, I have tried using http://localhost:9080 to get to my server and it prompts me to login. But, no matter what login I try to use, it isn't working. I have tried accounts on my server and accounts for my database, but none work.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
Reply

Thread Tools
Display Modes

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 10:19 PM.


 

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 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3