Serving external with local client

Jural

Member
I've search the forms, but haven't found the information I'm looking for. I'm running a server, currently it can either be configured to server external network clients or local network clients, but not both. Server and local clients are not on the same system. ( Server maintenance error if set for local network on external clients, and vice versa. )

Has anyone found a solution for this issue?
 

Soly

Member
Configure your server to "serve external clients" and use one "external client" yourself
  1. Bind to your internal IP (ex: 192.168.1.X) and ensure it's static.
  2. Configure your router to forward the required ports to that address.
  3. Configure your client to connect to your external IP.
 

Jural

Member
( External )
tethealla.ini: # [Server IP address to bind to (your private IP)] = 192.168.x.x , [Override IP] = y.y.y.y (external ip)
ship.ini: # [Your IP address ] = y.y.y.y (external ip) , [The IP address or host name of the login server] = 192.168.x.x
In this case external connects, local network ( using external ip, or configured for local ) will not connect [error server may be down]

Do I have a incorrect address bound on the external? I've tried 2 routers, stock from ISP and my custom Gentoo build I have for development, same results on both. Forgot, if I leave ship.ini as auto or bind as local ip, externals cannot connect to ship.

[EDIT] forgot to mention in both cases internal client will hit patch server.

*note ip's are all static

( Internal : Not relevant )
tethealla.ini: # [Server IP address to bind to (your private IP)] = 192.168.x.x , [Override IP] = 192.168.x.x
ship.ini: # [Your IP address ] = 192.168.x.x, [The IP address or host name of the login server] = 192.168.x.x
In this case internal connects, external will not connect [error server may be down]
 
Last edited:

Soly

Member
Lets say my IPs are ext - int
respectively external and internal IP addresses real numbers don't really matter for the example

1. Edit the client to have both IPs as ext
2. Configure the router to forward ports 11000, 11001, 12000, 12001, 5278, 5279 to int
Note(probably what I missed before): my router has an option "Enable Lan loopback" if I set this, the client with ext will work, if you don't have that, for a local client set the IP as int.
3. Snippet of the configuration on tethealla.in and ship.ini
Code:
tethealla.ini
# Server IP address to bind to (your private IP)
int

ship.ini
# Your IP address (This is the IP address sent to users who are connected to your server...)
# Use "auto", without the quotes, to have the logon server determine your IP address.
auto
# The IP address or host name of the login server to register the ship to.
int
 

tofuman

Administrator
Staff member
I've covered this in the past. Your router needs to support Nat loop back. Best thing to do is to google your router model with Nat loop back.

Alot of routers support this however some routers provided by ISPs don't.

Once you have that working ensure as Soly says you use the external client.
 

Broomop

Member
Enable DMZ or port forward the ports along the lines of tcp 11000,11001,12000,5279,5278 there might be a couple of ports for the communication of the ship but its not needed if its all local. With 11000 and 11001 as a test im sure the patch server will work. However this is just from the top of my head right now. When i get home i will give you a more detailed port list.
 
Top