web-dev-qa-db-ja.com

断続的なネットワーク障害/速度低下の可能性を診断します。ツール?

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. 
4
mikewaters

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
7
user9517

私はこれを次のような小さなシェルスクリプトで行います:

#!/bin/bash
while true; do
  date >> mylogfile.txt
  ping -c 5 sometestnode >> mylogfile.txt
  sleep 5
done

次のようにスクリプトを実行して、ログアウト後も実行を継続します。

Nohup scriptname.sh &

適切な時間待機したら、プロセスを強制終了してログファイルを確認するだけです。もちろん、これはあなたが望むように微調整することができます。

1
JakePaulus