There are some types of Internet provision that will not work with hosting a server, of any kind. I decided to make a graphic of it to explain better... it's crude and simplistic, but I hope it helps clarify for the neophyte why they absolutely need a home router that is directly connected to the internet.
A way around being behind NATs (translated network addresses) could be to tunnel out to a public server which would listen on the matching desired port -- but having said public server would be necessary in the first place.