私の家にはギガビットネットワークがセットアップされており、Ubuntuベースのボックスがいくつかあります。完全な好奇心から、2つのボックス間の速度を確認したいと思います。スピードなどは問題ありませんが、気になるのはオタクだけです。さらに、結果によって、改善の余地があるかどうか、または何かが間違って構成されているかどうかがわかります。
では、Ubuntuボックス間のネットワーク速度を適切にテストするにはどうすればよいですか?
ベストアンサー
iperf
を使用しています 。これは、一方の端でサーバーモードで実行し、ネットワークの反対側にある別のコンピューターから接続するという点で、クライアントサーバー構成です。
両方のマシンの1つが実行されます:
sudo apt-get install iperf
iperf
を開始します いずれかのマシン上のサーバー:
iperf -s
次に、もう一方のコンピューターで、iperf
に伝えます クライアントとして接続するには:
iperf -c <address of other computer>
クライアントマシンでは、次のように表示されます。
[email protected]:~$ iperf -c tim
------------------------------------------------------------
Client connecting to tim, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.4 port 37248 connected with 192.168.0.5 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 1.04 GBytes 893 Mbits/sec
もちろん、サーバーマシンでファイアウォールを実行している場合は、ポート5001での接続を許可するか、-p
でポートを変更する必要があります。 フラグ。
昔ながらのnc
でもほぼ同じことができます (netcat)あなたがそのように傾いているなら。サーバーマシン上:
nc -vvlnp 12345 >/dev/null
そして、クライアントはdd
を介してギガバイトのゼロをパイプすることができます nc
上 トンネル。
dd if=/dev/zero bs=1M count=1K | nc -vvn 10.10.0.2 12345
デモとして:
$ dd if=/dev/zero bs=1M count=1K | nc -vvn 10.10.0.2 12345
Connection to 10.10.0.2 12345 port [tcp/*] succeeded!
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 9.11995 s, 118 MB/s
そこでのタイミングはdd
によって与えられます ただし、パイプが処理する速度でしか出力できないため、十分に正確である必要があります。それに不満がある場合は、すべてをtime
でまとめることができます。 電話してください。
結果はメガバイトであることに注意してください したがって、8を掛けてメガビットを取得します -1秒あたりの速度。上記のデモは944mbpsで実行されています。