EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   General::Server Discussion (https://www.eqemulator.org/forums/forumdisplay.php?f=601)
-   -   Adventure! Personal server open to external ips. (https://www.eqemulator.org/forums/showthread.php?t=41632)

dracir 12-08-2017 05:02 AM

Adventure! Personal server open to external ips.
 
Hey. I have had a lot of fun lately. I tested my private server and it ran great.
My next adventure, if you care to join, is to allow friends in different houses to connect.


In other words. Opening up my personal server to external IP's.

Here is my todo list:
------------------------------------------------------------------
COLLECTION OF IP'S
192.#.#.# private ip
174.#.#.# public ip
default gateway 192.#.#.#
Localhost
127.0.0.1??? Localaddress?


USE AS GUIDE
Www.eqemulator.org/forums/showthread.php?t=35057

PORTS USED
Tcp/UDP
7000-7800
9000-9100
3306
5998-5999

CHECKLIST
[ ] Make sure it's set to public server in peq database
[ ]Verify firewall has ports open(figure out how to do that)
[ ] figure out how to open router ports correctly
[ ] Figure out which IP address goes where while updating files.
-->Update: login.ini
-->Update: eqemu_config.xml
[ ]Shoot some troubles.
---------------------------------------------------------------------------

Feel free to shout encouraging things at me. Maybe toss a tip of two. I'll try and keep this updated as I go. More info for others I suppose.

I have no idea what I'm doing, fyi. I'm working off a fresh install with akka's wiki guide.
http://wiki.eqemulator.org/p?Akkas_P...aller&frm=Main
---------------------------------------------------------------------------
Private IP = [cmd] C:/Users/JaneDoe>ipconfig = IPv4 address
Public IP = google "What is my ip" = instantly lists your public IP
~~I dont think the default gateway is used in anything. I just figured i would add it to the list anyway

COLOR CODING:
Magenta = Questions I have.
Red = (instructional) IP's that need to be set or rearranged.
Yellow = Ports. Static. Unchanging. These indicate a few of the ports used, and must be opened to external interaction.

dracir 12-08-2017 08:17 PM

Current - Private Network Files(not available for external yet)
 
Files(Of course remove the [brackets] and fill in with the correct information)

eqemu_Config.xml
Quote:

<?xml version="1.0">
<server>
<world>
<shortname>Avaria</shortname>
<longname>Vesper Chronicles</longname>
<address>[Private IP]</address>

<!--<loginserver1>
<legacy>1</legacy>
<host>login.eqemulator.net</host>
<port>5998</port>
<account></account>
<password></password>
</loginserver1>-->

<loginserver1>
<host>[Private IP]</host>
<port>5998</port>
<account></account>
<password></password>
</loginserver1>



<tcp ip="[private ip]" port="9001"/>
<telnet ip="0.0.0.0" port="9000" enabled="true"/>

<key>[Bunch of numbers and letters]</key>

<http port="9080" enabled="true" mimefile="mime.types" />
</world>

<chatserver>
<host></host>
<port>7500</port>
</chatserver>

<mailserver>
<host></host>
<port>7500</port>
</mailserver>

<zones>
<defaultstatus>0</defaultstatus>

<ports low="7000" high="7400"/>
</zones>

<database>
<host>[localhost]</host>
<port>3306</port>
<username>root</username>
<password>eqemu</password>
<db>peq</db>
</database>

<qsdatabase>
<host>[localhost]</host>
<port>3306</port>
<username>root</username>
<password>eqemu</password>
<db>peq</db>
</qsdatabase>

<webinterface>
<port>9081</port>
</webinterface>

<launcher>
</launcher>

<files>
</files>
<directories>
</directories>
</server>
~~TCP IP---was set to [127.0.0.1] I wasn't sure if this was an external ip. So i changed it to my private ip and it seems to work. This ip is what the zones are initialized on if i remember correctiy.
Login.ini
Quote:

[database]
host = [localhost]
port = 3306
db = peq
user = root
password = eqemu
subsystem = MySQL

[options]
unregistered_allowed = TRUE
reject_duplicate_servers = FALSE
trace = TRUE
world_trace = FALSE
dump_packets_in = FALSE
dump_packets_out = FALSE
listen_port = 5998
local_network = [private IP]
auto_create_accounts = TRUE

[security]
plugin = EQEmuAuthCrypto
mode = 5

[Titanium]
port = 5998
opcodes = login_opcodes.conf

[SoD]
port = 5999
opcodes = login_opcodes_sod.conf

[schema]
account_table = loginserver_server_accounts
world_registration_table = loginserver_world_server_registration
world_admin_registration_table = loginserver_server_admin_registration
world_server_type_table = loginserver_server_list_type
Ports displayed in use with the files.
IP's that need to be configured properly to support external IP.

Currently. This exact setup, after changing the bracketed areas to respective IP, is working for my local server. Only accepting internal IP's.

dracir 12-08-2017 08:25 PM

https://imgur.com/9Si7u2F
https://imgur.com/9Si7u2F

This is my port forwarding screen. Currently on my router, i have no port forwarding options set.
To allow external IP's i am pretty sure i need to set the ones that the applications are using.

Is it as simple as just adding them like shown in the picture?


--------------------------------------------
Still unsure about opening up firewall ports. Or if its necessary. I did find a link if i end up having to do this. Would love some feedback on this as well.
https://docs.microsoft.com/en-us/sql...-engine-access

Nerdgasm 12-08-2017 09:48 PM

Quote:

Originally Posted by dracir (Post 256661)
https://imgur.com/9Si7u2F
https://imgur.com/9Si7u2F

This is my port forwarding screen. Currently on my router, i have no port forwarding options set.
To allow external IP's i am pretty sure i need to set the ones that the applications are using.

Is it as simple as just adding them like shown in the picture?


--------------------------------------------
Still unsure about opening up firewall ports. Or if its necessary. I did find a link if i end up having to do this. Would love some feedback on this as well.
https://docs.microsoft.com/en-us/sql...-engine-access


Yes. It's literally that simple mate. =) If you need further help you can skype me and I can help you. -- Sinclipse is the user name.

dracir 12-08-2017 10:14 PM

Thanks for the reply. I set up ports on router.
Using the firewall guide I found that the akkas installer already opened firewall ports.

Now. I opened router ports for my private IP.

I am unable to connect from Neighbors Wifi(ie external IP) still. - I am able to connect through internally loggin into my wifi.


Do I need to open firewall ports on the other client computer as well?
Eqhost.txt is set to private IP*
and
Secondly, I believe I need to change some IP around in my configuration. Doing something with public IP, correct?

~~I added localaddress ~ 127.0.0.1

That was the only real difference between IP config setups listed in the earlier forum post. Still not working.

EDIT: I don't see any outbound firewall ports open. Should i set those as well?

Nerdgasm 12-09-2017 02:55 AM

Quote:

Originally Posted by dracir (Post 256663)
Thanks for the reply. I set up ports on router.
Using the firewall guide I found that the akkas installer already opened firewall ports.

Now. I opened router ports for my private IP.

I am unable to connect from Neighbors Wifi(ie external IP) still. - I am able to connect through internally loggin into my wifi.


Do I need to open firewall ports on the other client computer as well?
Eqhost.txt is set to private IP*
and
Secondly, I believe I need to change some IP around in my configuration. Doing something with public IP, correct?

~~I added localaddress ~ 127.0.0.1

That was the only real difference between IP config setups listed in the earlier forum post. Still not working.

EDIT: I don't see any outbound firewall ports open. Should i set those as well?

Add me on Skype, it's easier to help you that way mate. =) Or you can join my discord server and I'll help ya https://discord.gg/Y22Dp6

dracir 12-10-2017 12:49 AM

SO CLOSE! Akkas Installer - setting up private login server for external IP
I got the server running for external users(able to login and play) using the config below. I ran into a major issue with this setup though. I am unable to login locally now. It probably has to do with not being able to directly ping my Public IP. I'm so close! Could use some guidance.
-->External Users Connect, setting thier eqhost to my publicIP.
-->I am just unable to login to servers locally with that setup in eqhost. When i set eqhost to my privateIP. I get to server select and see the server. World.exe registers them logging into character select. moments later. back to server select with error 1017: loss connection.

Quote:

<?xml version="1.0">
<server>
<world>
<shortname>Avaria</shortname>
<longname>Vesper Chronicles</longname>
<address>[Public IP]</address><!--This use to display Private IP. Now it is using Public IP-->

<loginserver1>
<host>[Public IP]</host><!--This use to be commented out. For some reason. I am unable to connect externally if i do not have both public and private login servers running-->
<port>5998</port>
<account></account>
<password></password>
</loginserver1>

<loginserver2>
<host>[Private IP]</host><!--no change-->
<port>5998</port>
<account></account>
<password></password>
</loginserver2>



<tcp ip="[private ip]" port="9001"/><!--This can also be 127.0.0.1, i have changed it back to this.-->
<telnet ip="0.0.0.0" port="9000" enabled="true"/>

<key>[Bunch of numbers and letters]</key>

<http port="9080" enabled="true" mimefile="mime.types" />
</world>

<chatserver>
<host></host>
<port>7500</port>
</chatserver>

<mailserver>
<host></host>
<port>7500</port>
</mailserver>

<zones>
<defaultstatus>0</defaultstatus>

<ports low="7000" high="7400"/>
</zones>

<database>
<host>[localhost]</host>
<port>3306</port>
<username>root</username>
<password>eqemu</password>
<db>peq</db>
</database>

<qsdatabase>
<host>[localhost]</host>
<port>3306</port>
<username>root</username>
<password>eqemu</password>
<db>peq</db>
</qsdatabase>

<webinterface>
<port>9081</port>
</webinterface>

<launcher>
</launcher>

<files>
</files>
<directories>
</directories>
</server>
Other than that, I haven't changed anything. Like i said above. Finally i am able to have others connect to my game servers and play. I just can't connect locally. Changing the <address> field to my local IP allows me to login locally, but then removes the ability to login externally.

dracir 12-10-2017 01:57 AM

LATE NIGHT THEORY: It works without using [public IP] for the EqEmu's public hosting service(i can connect locally and externally). So, to me that means that there is somethig in Akkas installer that is hardcoded to redirect from thier IP. Or the EqEmu public hosting routing redirects it for us.

Quote:

Are you trying to ping your public address from within your network? That requires the router perform loopback. Most home routers do not support that, so you cannot ping your own IP address from within the local network connected to that address.
-->[ 1 ] Find a way to allow my router to perform a loopback. Letting me connect to my Public IP.

OR
Quote:

If you are trying to ping computer to computer here is why it will not work. Your linksys routers get a routable ip address from the broadband provider. They (by default) hand out private addresses in the 192.168.1.x range to each computer that requests one. The 192.168.x.x, 10.0.0.0 and 172.16.0.0-172.31.255.255 are RFC 1918 Private address space. These addresses are not routed across the internet. They are for internal use only.
-->[ 2 ] Find a way to redirect users from my public IP to my private IP - and set <address> back to private IP</address>
-->[ 3 ] Find a way to run two seperate server <address>es, with one database. So i can have both ways working.
-->[ 4 ] Find out a simpler way of doing all this. And do that instead.

I like option one. Because it actually seems like something i could figure out in about a week. The other things. I just don't have the expertise to figure out. I'm sure option 2 is doable. Option 3 would run into so many different issues i don't even know why i added it. Option 4 probably ties into option 2.
Please help my poor soul Gods of EQEmu.




Sources:
(random sites, just figured i would list them - no idea if they are safe sites or not)

The_Beast 12-10-2017 07:37 AM

<loginserver1>
<legacy>1</legacy> <---- Make sure this is in there
<host>public</host>
<port>5998</port>
<account></account>
<password></password>
</loginserver1>

<loginserver2>
<legacy>0</legacy> <---- Make sure this is in there
<host>private</host>
<port>5998</port>
<account></account>
<password></password>
</loginserver2>

dracir 12-10-2017 11:21 AM

Thanks The_Beast! Appreciate the input. I updated the code. No effect. I decided to set them both to <legacy>1</legacy>. It removed the server from the list - hah.

I can see the servers on both lists; set the way you explained (or while legacy is unset). I get the 1017 error being on the same network with code set as <address>Public</address>.


If there is anyone using Akkas Installer - with a server setup publicly through your personal IP - I would love to see your configuration files. :D Maybe there is something special i need to do to my router besides port forwarding. Or setup outbound firewall rules. Akkas installer only presets inbound firewall rules.

Quote:

You can get multiple external addresses, but it will cost. Ask your ISP sales dept.
i found out i could get a second public IP from my ISP. but that costs something. :( I guess that will be my last resort.



Sources:

Uleat 12-10-2017 12:03 PM

I always tell people to use this format for their login.ini:
Code:

local_network = xx.xx.xx.
..rather than:
Code:

local_network = xx.xx.xx.xx
..or:
Code:

local_network = xx.xx.xx

Not sure what is the absolute correct method..but, that goes back to one of Huppy's install guides.

dracir 12-10-2017 12:11 PM

Quote:

Originally Posted by Uleat (Post 256685)
I always tell people to use this format for their login.ini:
Code:

local_network = xx.xx.xx.
..rather than:
Code:

local_network = xx.xx.xx.xx
..or:
Code:

local_network = xx.xx.xx

Not sure what is the absolute correct method..but, that goes back to one of Huppy's install guides.

OMG you beautiful beatiful snowflake you.
That did it.

I could kiss you.
Code:

local_network = xx.xx.xx.
is the correct format for login.ini

Maze_EQ 12-12-2017 05:20 PM

Probably should be in the support forum....tbh


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

Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.