You'll need a dynamic host name pointing to your IP address.
(eg
www.no-ip.com)
Let's pretend your host is gremi.no-ip.com, and your server's IP will be 192.168.0.5.
If hosting the server on a machine that does NOT directly connect to the internet, open that machine's hosts file and add the line:
192.168.0.5 gremi.no-ip.com
Then, in LoginServer.ini, remove the account= and password= lines, and for the worldaddress= line put gremi.no-ip.com.
In boot5zones.bat, replace the first set of IPs with gremi.no-ip.com and the second set with 127.0.0.1 or gremi.no-ip.com.
On your router\NAT PC, forward the ports 5999 if using Minilogin, 9000 and 7995 through 7999 to the machine running the server (192.168.0.5).
If connecting from another machine in the local network, edit your hosts file as you did on the server machine (192.168.0.5 gremi.no-ip.com).
Now when you connect from an internal machine, the server will send "gremi.no-ip.com" to your client. Your client, with an edited hosts file, will map this to 192.168.0.5.
When connecting externally, gremi.no-ip.com will resolve to your router\NAT machine's external IP. Which will then be routed to 192.168.0.5.
This is basically how I'm setup, and it works great.