内容へ移動
fl8 Wiki
ユーザ用ツール
ログイン
サイト用ツール
検索
ツール
文書の表示
以前のリビジョン
バックリンク
最近の変更
メディアマネージャー
サイトマップ
ログイン
>
最近の変更
メディアマネージャー
サイトマップ
現在位置:
Dokuwiki.fl8.jp
»
bash
»
script
»
13 簡単なパケロスチェックプログラム
トレース:
bash:script:13_simple_check_packets_loss
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== 13 簡単なパケロスチェックプログラム ====== ===== Pingパケロスチェック ===== 60回ずつpnigを打ち続けるプログラム 毎日00:00にローテートする <code console> #!/bin/sh IP=$1 LOG_DIR="./logs" LOG_FILE=${LOG_DIR}/${IP}_ping.log LOTATE_TIME="0000" # 00:00 if [ ! -d ${LOG_DIR} ];then mkdir ${LOG_DIR} fi while true; do date "+%Y%m%d-%H%M%S" >> ${LOG_FILE}; ping ${IP} -c 60 >> ${LOG_FILE}; if [ "$(date "+%H%M")" = "${LOTATE_TIME}" ];then D=`date "+%Y%m%d"` LOTATE_FILE=`echo ${LOG_FILE} | sed "s/.log$/_${D}.log/g"` if [ ! -e ${LOTATE_FILE} ];then cp $LOG_FILE $LOTATE_FILE echo -n > $LOG_FILE fi fi done </code> ===== Pingパケロス時Tracerouteチェック ===== 1秒毎にpingを打って、パケロスが発生した時にtracerouteを打つプログラム 毎日00:00にローテートする <code console> #!/bin/sh IP=$1 LOG_DIR="./logs" LOG_FILE=${LOG_DIR}/${IP}_traceroute.log LOTATE_TIME="0000" # 00:00 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 "+%Y%m%d-%H%M%S"` " Ping OK" >> ${LOG_FILE}; else echo `date "+%Y%m%d-%H%M%S"` " Ping NG" >> ${LOG_FILE}; traceroute -n ${IP} >> ${LOG_FILE}; fi if [ "$(date "+%H%M")" = "${LOTATE_TIME}" ];then D=`date "+%Y%m%d"` LOTATE_FILE=`echo ${LOG_FILE} | sed "s/.log$/_${D}.log/g"` if [ ! -e ${LOTATE_FILE} ];then cp $LOG_FILE $LOTATE_FILE echo -n > $LOG_FILE fi fi sleep 1 done </code> ===== Macの場合 ===== Macはpingのオプションがちょっと違うので、ちょっとだけ変更する。 <code console> ping ${IP} -c 1 -w 1 > /dev/null ↓ ping -c 1 -t 1 ${IP} > /dev/null </code> {{tag>bash network}}
bash/script/13_simple_check_packets_loss.txt
· 最終更新: 2015/05/14 00:58 by
matsui
ページ用ツール
文書の表示
以前のリビジョン
バックリンク
文書の先頭へ