Can anyone tell me how to make the Public/External IP static without paying sh!t to the ISP's??
Look for some Dynamic DNS service that gives you a domain which always adapts to your IP. Therefore. even if your ip changes from 2.134..232.23 to 123.231.43.56 you'll still have the same domain that points to it. As a personal rule, you should almost never use an IP to identify your server. Because IPs can change. But if you have a domain then people won't have to remember your new IP.
EDIT:
Take No-IP (http://www.noip.com/free) for example. Here's the video from their page showing how things work.
https://youtu.be/HHK6bZeLhME
Thanks, Will try it.
One more ques, I have some files in my server which needs to be downloaded, if i get a domain, and my IP changes, the player will need to download the files again?
The files are sent by the server. Therefore, if a player is able to connect to the server then he will receive the files. Make sure you do your port forwarding correctly and you shouldn't have issues.
I don't mean that, as ya know, my public IP changes, so if i get a domain, then there's no use of IP, but if my External IP changes, will the players are in need to download those files again?
Well, since the downloaded files are identified by their server IP and thus your IP changed. I believe they will in fact be re-downloaded. But I'm not sure. Maybe the server will be smart and use the domain name :D (maybe!)
I've seen it use the domain name if you add it by domain in your favorites list.
If they join via the masterlist, it will have to re-download every time your IP changes.
Okay, Got it! Thanks @S.L.C and @Thijn