After doing several hit and trials with my Airtel modem Beetel 220BXI finally I have got success in bringing my local Apache webserver live on internet. Though I have used Beetel 220BXI, but below should work with all modern Routers.
The steps I am describing here doesn’t require any kind of alteration from router’s admin functions. Here are the steps how this can be achieved :
Download port forwarding utility from below link. ( you will need to register to download the zip file)
Extract the zip file, you will find compiled PortForward.exe inside it. .. just run it. It will display a screen something like below :
Now add an entry to forward your choice of port something like below. In my case Apache was running at 8081 so I have specified 8081 for external and internal both the ports. The utility also comes with a built in webserver to testing purpose, incase you don’t have any kind of service available for test you can use port 9542 as external and internal ports. Make sure that you have checked the “Start Web server and listen to port number button”.
Click save changes and exit button to apply the mapping.
Now, to test the service you need to check the URL from outside sources ( proxies). Click “full internet test” button to check whether your service is working or not. I usually use http://pdfmyurl.com/ to check URL’s which are not accessible locally.
So final URL for outside world would be http://184.108.40.206:8081/ in my case. Now, there is a problem. Internet service providers allocate dynamic IP’s, each time your IP will keep changing, whenever modem is reset or there is a power problem. To solve this, you can use a free service from www.no-ip.com. This service allows you to use a domain name instead of dynamic IP addresses. You will require to choose a domain name there and download and run their utility to your local system.
With above noIp utility, you public IP information will be updated automatically and you will be able use some named address, something like http://myservice.no-ip.org:8081 .