I run a relatively small virtual environment out of my basement for basic services such as web hosting, file serving, and small media center. I try to keep close tabs on the performance of my environment through routine checks, but I also wanted a quick way of knowing whether or not all my services were actually activated.

What I'm using now

So a few months back, I developed a small bash script that I just called "status.sh". It's probably the ugliest piece of code ever to exist, but it works, so I kept using it.

The program (if you can even call it that) is structured pretty rudimentarily: it's just a bunch of if statements that determine whether an IP responds to either a ping or a netcat TCP probe, and depending on the result, states that service is either "up" or "down."

A single variable, $(hostlist), contains a bunch of the if-statement triggers. I designed it that way because I also run a separate script that I've named "networkNotifier.sh," which sends my phone a notification if any of the servers are listed as "down." If I were to temporarily shut one of my servers down, I would be getting endless texts, so I made the $(hostlist) variable to be able to temporarily pull addresses of servers that I know are offline without deleting or commenting out whole blocks of code.

What I'm looking for

I'm looking for a simplistic server monitor program that only runs ICMP pings and TCP probes to check if a server is responding, and if not, triggers a script.

Please don't recommend anything that requires I install 3rd party software on every one of my servers. I'm looking for something that I can install/run on a dedicated monitoring server that probes the network. I don't need stats like CPU usage or disk usage of each server, just an up/down status.

1 Answer 1


I realize this is a very old question, but if anyone happened to come across it, I wrote a clean solution to this in Java, and it's all on Github if anyone wants it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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