For some hosts, ping www.example.com it resolves their IP but why does it fails with request time out? I have also tried to increase the ping response time but still the same result.


A ping is an ICMP packet. For comparison, web traffic or HTTP, is generally a TCP packet on port 80. A given server may be providing responses for the purpose of web traffic, but block ICMP (or be behind a firewall that blocks ICMP) and therefore you can:

  • Resolve the URL to its IP address
  • Connect and view the web content

But you cannot ping the IP address. The response "request timed out" is because your client sends the initial packet, waits for a reply (which will never come), and gives up at a preset timeout.

| improve this answer | |

Because it fails to connect to the host. Just because a DNS server knows the IP a host should have, does not mean that the host in question is running and accepting connections.

| improve this answer | |
  • Why would it not fail through browser? – cpx Feb 3 '11 at 11:14
  • 2
    @cpx: a ping request is not an HTTP request. The host may be responding to the latter but ignoring the former. – R. Martinho Fernandes Feb 3 '11 at 11:15
  • 2
    It's accepting TCP connections on port 80, but not ICMP connections. Nothing says a computer has to accept or respond to both. – Dan Grossman Feb 3 '11 at 11:15
  • 2
    ICMP does not establish connections. Why does this answer gets voted up higher than Pablo's for example? ICMP blindly dispatches a frame to the destination host and waits for a few seconds if something comes back. – sinni800 May 16 '11 at 12:07

Maybe the host is actually down, or may be the case that some sites, block ICMP traffic (protocol PING command relies on).

| improve this answer | |

Well, ping fails to www.microsoft.com too, for example. It is because those server computers use a restrictive firewall blocking the ICMP packets from unknown hosts.

Also ping does not "CONNECT" to a host, it just dispatches a single packet to them. TCP does connection handshakes and tries very hard to keep the connection. Ping just dispatches a ICMP packet which is not guaranteed to reach its destination. Just like UDP does, for data.

If it does not each its destination or the destination throws the packet away (firewall?), you don't get an answer.

This is completely independent from http traffic which uses TCP.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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