4

Let's say I am getting no connection to a website over http, ie. "Oops! Google Chrome could not connect to x" returns in a browser. What steps can I take to determine if the server is completely offline or whether there are still some services active?

So far, I have:

  • confirmed an A record is returning.

  • getting 'destination host unreachable' from ping.

  • nmap replies with no services, saying that 1000 scanned ports are filtered.

  • nping fails to initiate a TCP handshake saying 'no route to host'.

Peter
  • 1,450
  • 2
  • 15
  • 26

4 Answers4

10

You're thinking about this the wrong way. You shouldn't care if the server is down, you should care if the service that it is offering is down. The offered service is purely conceptual. It could be composed of one or many actual technologies like HTTP, HTTPS, SSH or whatever else you are leveraging.

Don't monitor the server - monitor the service. If you're running a web server, does it really matter that you can ping it? Not really. Does it matter that your monitoring software's agent of choice can't connect to the web server running on it? Absolutely.

In a way, your questions is kind of specious. For all intents and purposes if you're running a web server and you can't connect to it's web page then your server is down regardless of what other services or connectivity is available.

  • If it's not completely down, it may be a source of bad data to other servers. STONITH (shoot the other node in the head) tools exist for this reason. – sendmoreinfo Jun 15 '13 at 19:40
7

The remote server is not under your control/responsibility

In this case you can only guess if the remote server is up using network tools. If the website you are trying to check is public, you can use a third-party to check for you.

The remote server is under your control/responsibility

  • if this is a physical machine, it probably has some DRAC, iLO, HMC or any other vendor specific remote access capability.

  • if it is a virtual machine, you should also have direct console access from your hypervisor or your VPS Hosting provides an AJAX term or something similar.

dawud
  • 14,918
  • 3
  • 41
  • 61
  • This does not really answer my question. I actually have more information about the server based on the commands I ran rather than your "check for you" site that performs the equivalent of loading the site in a browser. – Peter May 05 '13 at 00:56
  • 4
    As a matter of fact, if the server is blocking all network traffic, all the info you can get using those commands won't tell you if the server is not down. You need direct access. – dawud May 05 '13 at 07:17
  • @dawud - Yes as you said, which is why after testing for DNS record, site availability from your location and a far removed second party (pingdom, et al.), your next check is to check cPanel utilities, SSH session (direct access) or open a ticket with your hosting provider. If'n ya don't own the site, you contact somebody who cares (site owner). – Fiasco Labs Jun 15 '13 at 20:54
0

You can use the service "Down or just me" to check domains and IP addresses for availability from many servers worldwide.

  • The information is valid, upvoted only to counter someone's downvote. However, this answer is a direct subset of dawud's [answer](http://serverfault.com/a/505042/140016). – Deer Hunter Jun 15 '13 at 21:55
-1

OS?

In case of Linux getting 'destination host unreachable' from ping, would mean either server being down or not having network connection. There is no way to differentiate between the two case without access to DRAC, ILO, VPS console, etc. 'confirmed an A record is returning' - without further info this doesn't mean much, you could get that from your upstream caching nameservers. Or the nameserver may not be hosted on the same server.

Sandor Marton
  • 1,544
  • 9
  • 12
  • 1
    That's not even true? According to you, I could block ICMP connections and you would conclude that my server is offline. – Peter May 05 '13 at 03:55
  • I mean if you control the server and you sure there is no firewall blocking. – Sandor Marton May 05 '13 at 12:59
  • Also if its firewalled you won't get 'destination host unreachable' , though i may be wrong with this and would depend on OS/type of the router before the server (quick test shows that linux router returns 'destination host unreachable' only if the destination doesn't respond to ARP requests, and doesn't have the MAC of dest in his ARP cache. When ICMP is firewalled, nothing is returned) – Sandor Marton May 05 '13 at 13:08
  • The *only* thing that a failure to respond to ping can tell you is that the server is failing to respond to ping. These days that has very little to do with whether or not the service you're actually interested in is up or not. – Rob Moir Jun 24 '13 at 05:19