The domain or ip in FSListenHost (code/ryzom/server/frontend_service.cfg) must be reachable by all clients.
I will assume that you created the following dyndns (or no-ip):
and that your shard local ip is:
Set up your router with the dyndns and add some rules to map the following ports of your router to your shard:
TCP 80 (admin web)
TCP 443 (account creation from client)
TCP 40916 (client login/patch)
UDP 47851 to 47860 (game)
The clients from Internet will be able to reach your shard using the dyndns resolution.
Add your shard local ip and your dyndns in your local client hosts file (on the same line):
The clients from your local network will be able to reach your shard using the hosts file resolution.
Set FSListenHost in code/ryzom/server/frontend_service.cfg:
FSListenHost = "mydns.dyndns.org";
Set StartupHost in your client.cfg:
StartupHost = "mydns.dyndns.org:40916";
Note: With most of the routers, we can't reach a local machine from LAN using the external IP.
If not enough, you will find the complete list of port to open here: