Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have been at this for a while tonight and thought I would seek some help before I hit the sack. I have successfully downloaded Apache and can run it without any issues on a fedora 16 box acting as the web server. I was able to make pages that can be viewed locally.

To summarize

From the Fedora Box I can access my pages via a web browser at

  • 127.0.0.1 as well as its local IP address.

From a windows box on the same home network I can access the page from

  • its local IP address.

From both machines I can successfully ping the global IP address (provided by whatsmyip.org)

As far as I know the issue seems to be at the router. I had to reload a backup twice tonight because I kept breaking stuff (Remember folks, saving is FTW). Could any of the following issues with the router or web server be the problem? The following list sums up what I have attempted and whats enabled at the moment.

  • Currently the router has NAT enabled.
  • The router firewall is disabled
  • I have attempted port forwarding of port 80. I used the web server local address as the forward port
  • HTTP has been enabled in the linux firewall on the web server
  • The internet comes into the house as follows
    • ISP Provided Modem >> My personal Router >> Individual Device

Edit: According to my ISP Port 80 is blocked in the following fashion. Could this pose a bigger problem or is RedGrittyBrick's answer a way around it

  • Port = 80
  • Transport = TCP
  • Protocol = HTTP
  • Direction = Inbound
share|improve this question
    
on which device have you enabled port forwarding? –  daya Jan 13 '12 at 6:02
    
@daya On the router. And in case anyone is curious its an EnGenius ESR9850 –  sealz Jan 13 '12 at 6:14
add comment

2 Answers

up vote 1 down vote accepted

Port forwarding

When you set up port forwarding, you need to have three parameters correct:

  • the external port, usually 80 for HTTP.
  • the internal IP-address of the server, often 192.168.1.x
  • the internal port for HTTP service on the internal server, again usually 80.

ISP port blocking

Note that a web-server on an ADSL line will have poor performance and may break the terms of your ISP service - for this reason your ISP might block incoming traffic. Try setting the external port to a high number (e.g. 30080) leaving the internal port at 80 then give an external browser a URL http://<external IP>:30080/

share|improve this answer
    
After some additional research it seems that my ISP may block port 80. Would I set the external port in the httpd.conf file? I have tried 123.123.123.123 as well as 123.123.123.123:80. –  sealz Jan 13 '12 at 12:12
    
Or would this be more along the ligns of what I need: rootatwc.com/blog/article/1 –  sealz Jan 13 '12 at 12:23
    
@harper89: No the external port is set in the router's port-forwarding configuration. The port number of the internal web server can remain the same. This is sometimes called Port Address Translation (PAT). If your router can't do PAT as part of port-forwarding then and only then would it be necessary to change the port the webserver listens to (in which case you can make it listen to two port numbers for convenience: 80 AND 30080 say) –  RedGrittyBrick Jan 13 '12 at 12:23
    
@harper89: that blog article applies if your router is very basic and lacks port-forwarding on a per-port basis. –  RedGrittyBrick Jan 13 '12 at 12:26
    
Thanks I will play around with it after work, someone else +1 him again for me. –  sealz Jan 13 '12 at 12:28
show 1 more comment

I am assuming your issue is that you cannot access the web server from its public address from the local network - from the same network that the server resides on.

This is because most domestic routers do not support hairpinning, which is the technique of doing the double nat / unnat that is required to manage the connection going in and out of the same interface.

When you are pinging the global address, it is most likely the router that is responding, not the web server.

Considering using split DNS to access the server, where internally the dns name resolves to the private address, and externally resolves to the public address.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.