Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We recently started hosting our public website internally. We are running dotnetnuke on windows server 2003 using IIS 6. Externally the site is super fast, but when you access the site internally it is considerably slower. When you access the site via the private IP it is a little faster than using the domain name, although not by much. Any thoughts of why this could be happening?

share|improve this question

Based on the info you've provided I would hazard a guess that your requests are going out your firewall and then coming back into your network. If you're using the same namespace internally as externally you have to play games with routing and/or proxying to keep the requests internal. Otherwise they can get resolved to your public IP which will get served by the external interface of your firewall. Far from ideal.

Can you put a sniffer on one of the conversations to see where the browser is sending the request and where it's coming back from? Also look at the HTTP response headers to see if there are any Via: headers in there which would indicate that there's a proxy in the middle of the request/response chain.

share|improve this answer
+1, sounds about right. – Le Comte du Merde-fou Sep 23 '09 at 18:54
I'm on the fence. It sounds right, except that the poster says that using the private IP is "a little faster than using the domain name, although not by much". – Evan Anderson Sep 23 '09 at 19:11
it could be that their site writes out full urls for images so maybe the initial page load is faster, but still doing the full path for the rest of the content. – Roy Rico Sep 23 '09 at 21:32
I think they'll need to do some type of configuration where DNS requests for their domain from their internal network returns the internal IP, not the external IP. – Roy Rico Sep 23 '09 at 21:34

What do your DNS settings look like? Do you have a record for the domain name pointing to the internal IP of the IIS server?

share|improve this answer

To add to what's already been suggested:

Browsing to the private ip address is faster because the traffic stays internal. Browsing to the name is slower because external DNS resolution has to occur (I'm assuming you don't host your public DNS namespace) and in addition, the traffic is being routed out of your network and back in again because it's being routed to the public ip address. You should be able to confirm this by running a tracert to from an internal client and see what route it takes.

share|improve this answer

Your Answer


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