WAN経由で2つの特定のネットワークエンドポイント間に接続の問題があるかどうかを確認するために、一定期間継続的に実行できる単純な(linux cli)ツールはありますか?
あるリモートサイトで速度低下/ドロップが発生しており、ネットワークのどちら側に障害があるのかを調べています。
[〜#〜]編集[〜#〜]
受け入れられた答えは 'mtr'を推奨しています。将来の参照のために、mtrは次の関連オプションを受け入れます。
--report
This option puts mtr into report mode. When in this mode, mtr will run for
the number of cycles specified by the -c option, and then print statistics
and exit.
This mode is useful for generating statistics about network quality.
Note that each running instance of mtr generates a significant amount of
network traffic. Using mtr to measure the quality of your network may result
in decreased network performance.
--report-cycles COUNT
Use this option to set the number of pings sent to determine both the
machines on the network and the reliability of those machines.
Each cycle lasts one second.
mtr を見てください。 tracerouteとpingが1つのツールに統合され、2つのホスト間のパスを継続的に監視します。以下のような出力が得られます。 Ubuntuの場合はmtr-tiny、CentOSの場合はmtrのパッケージとして利用できます。
My traceroute [v0.75]
somehost.lan (0.0.0.0) Thu Aug 18 20:52:49 2011
Keys: Help Display mode Restart statistics Order of fields quit
Packets Pings
Host Loss% Snt Last Avg Best Wrst StDev
1. somehost.lan 0.0% 56 0.3 0.3 0.2 0.5 0.0
2. 192.168.1.254 0.0% 55 82.8 48.1 2.9 100.6 31.5
3. 94-192-160-1.zone6.bethere.co.uk 76.4% 55 11038 11232 11038 11450 156.1
4. 10.1.3.245 25.9% 55 17.6 17.6 16.8 20.6 0.7
5. ???
6. ???
7. linx1-hex.webfusion.com 96.3% 55 23.6 23.8 23.6 24.1 0.3
8. ???
9. supanames-22.supanames.co.uk 0.0% 55 31.4 31.4 30.5 38.0 1.0
私はこれを次のような小さなシェルスクリプトで行います:
#!/bin/bash
while true; do
date >> mylogfile.txt
ping -c 5 sometestnode >> mylogfile.txt
sleep 5
done
次のようにスクリプトを実行して、ログアウト後も実行を継続します。
Nohup scriptname.sh &
適切な時間待機したら、プロセスを強制終了してログファイルを確認するだけです。もちろん、これはあなたが望むように微調整することができます。