Quick Links

If you are experimenting with and learning about pinging a website, you may be surprised by the results based on "what" you ping. Today's SuperUser Q&A post helps clear things up for a confused and frustrated reader.

Today’s Question & Answer session comes to us courtesy of SuperUser—a subdivision of Stack Exchange, a community-driven grouping of Q&A web sites.

Screenshot courtesy of Cristianzambrano (Wikimedia Commons).

The Question

SuperUser reader Saransh Singh wants to know what the difference between pinging with and without http:// is:

I am trying to ping my website http://www.example.com/ and it resolves to an unknown IP address, then it times out.

what-is-the-difference-between-pinging-with-and-without-http-01

But when I ping example.com, it works. What am I missing or not understanding here?

Note: example.com was substituted for the actual website at SuperUser.

What is the difference between pinging with and without http://?

The Answer

SuperUser contributor DavidPostill has the answer for us:

The argument to ping is a host name (or an IP address). So the following will all work:

what-is-the-difference-between-pinging-with-and-without-http-02

On the other hand, this will not work as http://www.example.com/ is an HTTP Uniform Resource Locator (URL), not a valid host name (although part of it is a host name).

what-is-the-difference-between-pinging-with-and-without-http-03

A HTTP URL is made up of 4 parts:

  • Scheme — Always present
  • Host Name — Always present
  • Path or Stem — Always present but sometimes is null
  • Parameters — Optional

A ping will not normally recognize URLs as a valid destination host name.

Note

Not all URLs have the format mentioned above. A complete URL consists of a naming scheme specifier followed by a string whose format is a function of the naming scheme. The format of URLs is defined in the IETF specification Uniform Resource Locators (URLs). *This is a different website address from the one shown for URL above.

DNS Hijacking

An exception to the above can happen if the DNS server (which resolves host names to IP addresses) is configured to return a valid IP address even if an invalid host name is supplied. This can happen if an ISP is hijacking your DNS queries.

From the answer Why is ping resolving to an IP 198.105.254.228 for any random host name that i type? by Michael Hampton:

  • They are trying to be "helpful" by redirecting requests for nonexistent domains to a white label service that provides search results and advertising, from which everyone but you gets a cut of the revenue. Fortunately, they do have a preferences page where you can supposedly turn it off.

Make sure to read through the other helpful answers via the thread link shared below!


Have something to add to the explanation? Sound off in the comments. Want to read more answers from other tech-savvy Stack Exchange users? Check out the full discussion thread here.