このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
bash:script:13_simple_check_packets_loss [2014/11/14 10:22] – matsui | bash:script:13_simple_check_packets_loss [2015/05/14 00:58] (現在) – [Macの場合] matsui | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====== 13 簡単なパケロスチェックプログラム ====== | ||
+ | |||
+ | ===== Pingパケロスチェック ===== | ||
+ | |||
+ | 60回ずつpnigを打ち続けるプログラム | ||
+ | 毎日00: | ||
+ | <code console> | ||
+ | #!/bin/sh | ||
+ | |||
+ | IP=$1 | ||
+ | LOG_DIR=" | ||
+ | LOG_FILE=${LOG_DIR}/ | ||
+ | LOTATE_TIME=" | ||
+ | |||
+ | if [ ! -d ${LOG_DIR} ];then | ||
+ | mkdir ${LOG_DIR} | ||
+ | fi | ||
+ | |||
+ | while true; | ||
+ | do | ||
+ | date " | ||
+ | ping ${IP} -c 60 >> ${LOG_FILE}; | ||
+ | |||
+ | if [ " | ||
+ | D=`date " | ||
+ | LOTATE_FILE=`echo ${LOG_FILE} | sed " | ||
+ | if [ ! -e ${LOTATE_FILE} ];then | ||
+ | cp $LOG_FILE $LOTATE_FILE | ||
+ | echo -n > $LOG_FILE | ||
+ | fi | ||
+ | fi | ||
+ | done | ||
+ | </ | ||
+ | |||
+ | ===== Pingパケロス時Tracerouteチェック ===== | ||
+ | |||
+ | 1秒毎にpingを打って、パケロスが発生した時にtracerouteを打つプログラム | ||
+ | 毎日00: | ||
+ | <code console> | ||
+ | #!/bin/sh | ||
+ | |||
+ | IP=$1 | ||
+ | LOG_DIR=" | ||
+ | LOG_FILE=${LOG_DIR}/ | ||
+ | LOTATE_TIME=" | ||
+ | |||
+ | if [ ! -d ${LOG_DIR} ];then | ||
+ | mkdir ${LOG_DIR} | ||
+ | fi | ||
+ | |||
+ | while true; | ||
+ | do | ||
+ | ping ${IP} -c 1 -w 1 > /dev/null | ||
+ | if [ $? -eq 0 ];then | ||
+ | echo `date " | ||
+ | else | ||
+ | echo `date " | ||
+ | traceroute -n ${IP} >> ${LOG_FILE}; | ||
+ | fi | ||
+ | |||
+ | if [ " | ||
+ | D=`date " | ||
+ | LOTATE_FILE=`echo ${LOG_FILE} | sed " | ||
+ | if [ ! -e ${LOTATE_FILE} ];then | ||
+ | cp $LOG_FILE $LOTATE_FILE | ||
+ | echo -n > $LOG_FILE | ||
+ | fi | ||
+ | fi | ||
+ | |||
+ | sleep 1 | ||
+ | done | ||
+ | </ | ||
+ | |||
+ | ===== Macの場合 ===== | ||
+ | |||
+ | Macはpingのオプションがちょっと違うので、ちょっとだけ変更する。 | ||
+ | |||
+ | <code console> | ||
+ | ping ${IP} -c 1 -w 1 > /dev/null | ||
+ | ↓ | ||
+ | ping -c 1 -t 1 ${IP} > /dev/null | ||
+ | </ | ||
+ | |||
+ | {{tag> |