The port in my earlier example 100, was just an example number. When you turn on the option of using the
http://<MyNameHere>.subsonic.org it just assigns the name to your IP and uses the port that the server is running on. So it was running for example 8081 on my computer. Because of work I need it to run on port 80. So I would set up port forwarding on my router. A packet coming in on port 80 from the Internet would go through the router and get changed into 8081 because of the port forwarding. Anything coming from the computer get turned into a port 80 reply in the router and sent out over the Internet. Using the
http://<MyNameHere>.subsonic.org doesn't work though because it tries to tell an external computer to come to my home IP but use port 8081. It will work on the home LAN because port 8081 is open on the LAN, but externally only port 80 is open.
The reason it is bad to run something on port 80 is because you have to run a program as root to use any port below 1024. Normal users in Linux can't open ports below 1024. OK, so why not run it in root? Well if there is a security hole in Subsonic somewhere, then a hacker might have root access to my machine. If I run as a normal user or have a limited account for the subsonic server, then even if they do get in they can't do much.
Now I know people are going to say there are IP tables and other ways around this in the OS. I was just looking for a one button solution.
Sorry for the confusion and thank you for trying to help.