Simple shellscript to test connections with any given hosts

I used to run this via Nagios in order to check connectivity between hosts on our datacenter.
A simple but effective little script to run a quick but important test [common scenario — multiple hosts running multiple components].

#!/bin/bash

Help(){
        echo "Usage: $0 -h <host ip> -p <port>"
        exit 0
}

err=""
telnet=$(which telnet) || err="telnet";
timeout=$(which timeout) || err="timeout";

if [ ! -z "$err" ] ; then
         echo "Command not found: $err"
         exit 0
fi

while getopts h:p: OPTION ; do
      case $OPTION in
                h)
                    HOST=$OPTARG
                ;;
                p)
                    PORT=$OPTARG
                ;;
       esac
done

if [ -z "$HOST" ] || [ -z "$PORT" ] ; then
        Help
fi

# Initiating connection
CONN=`timeout -9 10 telnet $HOST $PORT`

if [[ $CONN =~ "Connected to $HOST" ]] ; then
        exit 0
else
        exit 1
fi

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s