I have a laptop (with Ubuntu) and a router (with OpenWrt).

When I check the version for both, the laptop says I have version 2.05 for multithreads and the router says I have 2.05 for pthreads.

Both have an IP address in the same subnet.

When I run client commands on the laptop or the router (i e. iperf -c router IP address), I get a connection refused error. If I run server commands (i.e. iperf -s) on either, the iperf header pops up like it's checking the network but then nothing else ever happens and I have to hit ctrl+C to kill the process.

Then I tried putting iperf on a second router with OpenWrt and trying the commands between the two routers and the same thing happend.

This is my first time using iperf so I am not sure if it just isn't working or if there is a configuration step I am missing. I've tried a couple of different tutorials, but the results are the same above for the different commands.

Is there a configuration step that I missed?Is there a specific line I am supposed to write to start iperf on the server and client?If I did everything correctly, could it not be working because one has multithread installed and the other has pthread installed?Does anyone have a good iperf tutorial for first time users?

Thanks for any help in advance!

1 Answer 1


You have to run the iperf in server mode on one device

iperf -s

and iperf in client mode on the other


at the same time.

  • That's what I was doing wrong. I was trying to run it on one device at a time. Thank you! It's working now.
    – user461262
    Jul 27, 2015 at 15:38

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .