Fiddler Issue: Slow running HTTP requests on local IPs (i.e. 192.168.1.*)

Posted by Dan on Sep 20, 2006 @ 5:18 PM

For those of you using Fiddler HTTP Debugger (which is a great tool I've blogged about many times in the past,) there appears to be an issue when using IP addresses. This is especially noticable when using private subnet IP addresses (such as 192.168.1.*.)

The problem I was seeing was that requests to my developer server came to a crawl when using Fiddler. Speed to external domains was working fine. If I turned off capturing, speed resumed. I finally was able to figure out that by setting up a DNS entry, speed would resume.

Since this was slowing me down, I sent Eric Law, the developer of Fiddler, an e-mail message reporting the problem. He was very quick in researching the problem.

Turns out in .NET when you do a DNS.Resolve() on an IP address, the class actually sends the request to a DNS server to have the IP address resolved. In my case, it was this roundtrip to the server that was causing me performance problems.

Eric also discovered that the DNS.Resolve() method doesn't have any kind of caching mechanism, which you'd assume it would.

So anyway, for those of you running into the same issue I was, try giving yourself a DNS name to speed things up as a temporary fix. I'm sure this fix will be in the next release of Fiddler (as I've already tested the fixed code.)

So thanks to Eric for his quick turnaround in this fix, and I guess it's a warning to .NET developers who are using the DNS.Resolve() method.

Categories: JavaScript, qForms, HTML/ColdFusion, Flex/Flash, Java, Source Code

4 Comments

  • Yup, this will be fixed in v1.2.1.

    .NET2.0 has a cool IPAddress.TryParse method, but in .NET1.1, you have to wrap IPAddress.Parse in an exception handler (or parse manually).
  • hi there,

     Even if the .NET version of DNS.Resolve() does NOT have caching , the Windows OS maintains a cache in the kernel layer unless you have disabled it in the Registry.

    BR,
    ~A
  • I put the IP in the HOSTS file and it totally worked!!!

    We've been trudging for weeks here.

    THANKS A LOT !!!
  • If you do not have access to your local dns a quick fix would be set hosts file:

    c:\windows\system32\drivers\etc\hosts

    ex.: 192.168.0.6  www.test.com

Comments for this entry have been disabled.