ok so i have a networking problem I think.
Here is the situation
I have a pretty beefy computer acting as the host - if i run eqemu, i can run it out of a vm successfully, even multiple VMs work sucessfully, but no configuration i've tried was able to let me run it from teh host itself?!?!?! wtf right? here is the configuration INTERNET -> (2 external ips) -> switch -> 2 routers -> 2 switches -> server (2 nics) Server has 2 nics, and is connected to both external ips. If I load two VMs and setup eqemu for each of the external ips, I can run two servers, players can connect to both and it all works great. If I try and run one server off of the host directly, players are able to connect sometimes, but mostly I get a stream state closed, unable to identify connection before it closed type error messsages. SOME people can still connect though, which makes it annoying, what is wrong? I don't know. The reason I want to run out of the host is that it seems that the VM is making looting lag really bad for some reason, but running off a "sortof stand alone" box and looting (and other stuff) is instant If anyone has tips for optimizing my vm (or teachign my noober ass to use linux) that would probably be sufficient my "server" is windows 7 ultimate, and the VMs ive been succesfull with are win xp 32bit and win7 64bit Right now i am running the server from a computer that only has one nic and things are lightning fast, but i dont want the additional electricity usage. |
So, you have 2 VMs each on the same server and with unique LAN addresses, and you also have a unique LAN address for the server itself?
I assume you are using port range forwarding in your routers to forward to your 2 VM addresses? You won't be able to run the 2 VMs and your server at the same time, as that would require 3 public addresses since you can only port forward to 1 address at a time per network. If you switch your port forwarding to point to your server on one of your networks, then it should work. You just won't be able to run both of your VMs at the same time as well. |
i think I miscommunicated. (I am familiar with networking enough to know that i need an ext ip for each server)
2 vms running on server -> i kill one of them and use the external ip for host i go to router config and reroute everything from that ext ip to the host local ip unable to get that ip working for host with eqemu that is the problem. |
and as i said before SOME people can connect, it is not consistent, and not based on specific client, some SoF SoD and titanium peopel can connect and others cannot
|
I don't know why some would be able to connect and others not. It is the same network that was working for your VMs, so the only factors here are your network config (mainly port range forwarding), and your server config file. Maybe post your server config file (minus any passwords)? If you are setting the IP fields that have a comment above them not to change them, then that could definitely cause odd issues. I do networking for a living, so I am sure we can figure this out :)
|
Thanks for the offer of help
I work on databases and embarrassingly i don't know much about networking beyond some basic things i've tickled my way into. Before we begin, I am using DD-WRT version 24-sp2 for my router My server local lan address for the nic I want to use is 192.168.2.113 In my Router The router ip address is 192.168.2.1 I have port forwarded the following port 9000, 7778 to 192.168.2.113 I have port range forwarded the following to Ports 7002 to 7500 to 192.168.2.113 My External Ip address for that adapter is: 173.34.35.197 Here is a copy (EDITED HEAVILY) of my server config.. minus some details like db name, users and passwords. Code:
<?xml version="1.0"> |
I'm running a bunch of other stuff on there too, but none of it uses port 9000 and i have tried with none of it running.. i can list it all if you like.
|
i loaded the server so people can try and connect to it... ill be back in a few hours after i run some errands to try and resolve this.
thanks in advance for your help... you have been an outstanding member of the community i enjoy following your advice and faqs (I like to read faqs, i am not fond of committing the crime of PEBCAK if i can avoid it by RTFM). |
whoops had the telnet / 9000 ip wrong in the pasted config. fixed it
i had pasted it in while i was editing and forgot to repaste because i was distracted. |
Have you tried commenting these lines out?
Code:
<!-- Only specify these two if you really think you need to. (read: You don't) --> Also, you mentioned that you were using port forwarding for 9000 and 7778. You should only be using port range forwarding. Port forwarding is for forwarding 1 port to another, like if you wanted to convert port 9000 to port 21 or something. Port range forwarding is for forwarding a range of ports (or a single port) to a specific IP. |
aha....
no im not using my own login server ok... ill comment those two lines out and update the router to use port range forwarding then ill see if people can connect. thanks. |
ok so now players trying to connect to teh test server are all unable to connect.
and on the server side, i am not seeing any error messages or connect messages. |
You might want to check port 9000 and make sure it is pointed to the right IP on your 173.34.35.197 network. Since you have 2 NICs, maybe you have the wrong IP? Have you checked "ipconfig /all" from command prompt? I tried to connect to your test server with wireshark running and the sniffer log only showed my repeated connection attempts to your server on port 9000 with no response back.
|
Seems like a simple test of disabling one network card and seeing if it works would narrow the problem down quite a bit.
|
Ok ill try disabling a nic. when i get home.. if that works.. which i hope it doesnt... then what do i do?
Also the ip settings all seem to be right. ill post them when i get home. |
the ip has changed for 192.168.2.x so don't get all excited noticing its 2.100 instead of 2.113 now :P
also i found dmz was on for some reason to an ip address not in use (old ip).. i disabled dmz dunno what problems that might have been causing... ipconfig /all Code:
Microsoft Windows [Version 6.1.7600] Code:
<?xml version="1.0"> All of these are port range forwarded to 192.168.2.100 as line items in my router config 7002-7500 5998-5999 9000-9000 7778-7778 |
oh and commenting out those "two lines" just made it so that i would receive no notification of a failed connection attempt by a player, and they would be stuck trying to connect for 15 minutes before getting booted.
|
Do you have any other PCs in your 192.168.2.x network that you could try connecting to your test server from? That will verify that it at least works for connecting as it will bypass any port or routing issues from the external network as it connects locally.
I have never tried a dual NIC and dual ISP setup for EQEmu, so I am not completely sure what other problems that might cause that could be different than the standard ones. With your 2 LANs being in separate IP space now, that should reduce some potential routing issues. I am just not sure how the server decides which NIC to use offhand. I assume it would just be listening on port 9000 for any connection to come in and when one does, it would just reply through the same NIC it came from. It sounds like it could be getting confused on which NIC to use. Did you try disabling your other NIC yet to see what happens? Having a DMZ set on your test server's network could definitely cause some issues. That is basically like having all ports forwarded to 1 IP, so if the IP for the DMZ was pointing to somewhere other than your test server, it would probably override your port range forwarding settings and cause connections to fail. Since you have a special network setup, you may be one of those special cases that does require those IP fields to be set in your config. Everything looks correct as far as I can tell. What I don't get is that you said some users can connect and others cannot. If even 1 person can connect, all should be able to. If they aren't, maybe it is something on their end or something else with the setup on your server. Maybe I can try connecting when you have it set the way you did and see what the sniffer shows if I fail to connect. |
I've had similar symptoms (some players can connect, others can't) problem in the past when I didn't have the full range of 7000-7100 forwarded. Unfortunately I don't know enough about it to speculate 'why' :)
|
It works locally.
|
I tried netstat /anb
Port 9000 is being listened to by 0.0.0.0 can i force he two nics to listen to 9000 separately? |
Also im gonna resarch the ip of the people that DID get in... maybe they are my neighbors
|
Why do you have such a fucked up network setup? If you can't support it, you shouldn't run it.
|
Quote:
actually, my network setup works great! and if your familiar with networks and computers, you will note that it isnt strange at all, in fact it is quite a normal setup for a network of this size (20+ devices on the local network). all of the other services (video,cctv,ftp,www,etc) whether run off teh host or in a VM running on it work very well, nobody has connectivity issues, and it is just this particular locus of interest that is problematic. my eqemu server is running just fine, but on another box (not preferred) that is all, i started this post out of pure selfish greed to keep more of my money in the bank and not pay for electricity of another computer (my backup server), that is all. |
ok so i checked out the random people who are able to connect, they live all over the US, and i am in canada.. so wtf right?
|
I didn't really dig through the code that much, but it looks like all of the sockets are bound using INADDR_ANY which should listen on all interfaces. Packets sent on a socket bound with INADDR_ANY usually go through the lowest numbered interface, so if that's not the same address you're expecting to receive on the NAT could be screwing it up. That's why I recommended disabling one of the cards to test if that works.
I'd also recommend setting up static addresses in your router so you don't need to change your config every time a DHCP address changes. |
lerxst2112,
your suggestions are excellent.. tomorrow night i will have time to try it out. I will start by disabling a nic, and then if that doesn't work. ill switch which one is disabled. from another thread c0crete suggested netstat -an | find /i "9000" here is the output from that if you are curious: Code:
TCP 0.0.0.0:9000 0.0.0.0:0 LISTENING |
So like as of today my network has changed its mind
everyone who tried has connected.and played on my test server wtf right? |
I don't know what IP you had the DMZ pointed to before, but disabling that may have very well fixed your issue.
|
Davood follow this post http://www.eqemulator.org/forums/showthread.php?t=35057
|
Ok its back.
No explanation some people.can connect others cannot i give up. im gonna keep the main server on a separate box and run the test server in a vm |
oops necroed an old thread by accident
|
All times are GMT -4. The time now is 12:39 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.