
iperf
ローカルサーバーで実行しようとすると、適切な値が報告されます
iperf -c 127.0.0.1 -p 631
------------------------------------------------------------
Client connecting to 127.0.0.1, TCP port 631
TCP window size: 2.50 MByte (default)
------------------------------------------------------------
[ 3] local 127.0.0.1 port 42824 connected with 127.0.0.1 port 631
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 2.40 MBytes 2.01 Mbits/sec
しかし、リモートサーバーに接続すると、途方もなく大きな値が報告されます
iperf -c www.google.com -p 80
------------------------------------------------------------
Client connecting to www.google.com, TCP port 80
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local x.x.x.x port 45329 connected with 110.164.12.55 port 80
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 0.00 � ��s 14746527068517650432 Bytes/sec
何らかのオーバーフローが発生しているようです。インターネットに接続するために USB EVDO モデムからの PPP 接続を使用していますが、バージョンiperf
は ですiperf version 2.0.5 (08 Jul 2010) pthreads
。
なぜこうなった?
答え1
iperf では、両端にアクセスできる必要があります。一方の端では、iperf -s
別名サーバー モードを実行し、もう一方のiperf -c IP
端では、IP アドレスを使用してサーバーに接続するクライアントを実行します。クライアントをランダムに開いているポートにポイントするだけでは、動作しません。反対側に iperf サーバーが必要です。