iPerf3 is an awesome piece of software and a must for anyone that works in networking, wants to know if they’re getting the right wired/wireless speeds at home (if you ended up creating a 10Gb point-to-point connection from my blog post 10Gb in your homelab for under $70? then you’ll definitely want to test it with this), or wants to know why their Netflix streams look like crap. iPerf3 works off of a client/server model where you install it on one machine to run it in server mode, then install it on another machine to act as the client that connects to the server.
I run a lot of VMs in my homelab and got tired of remembering which ones had iPerf3 installed, so I figured I’d install it on a dedicated VM and make sure it’s always running in server mode. Here’s how I did it on a fresh install of Ubuntu Server 14.04.
Build an iPerf3 Server on Ubuntu Server 14.04
1. Make sure you’re fully updated.
sudo apt-get update -y
2. Now let’s install iPerf3 and Nano (if you don’t already have it). You can use vim if you want but Nano is easier if you’re a Linux noob.
sudo apt-get install -y iperf3 nano
3. We’ll go ahead and start on making a tiny little script that starts iPerf in server mode every time you reboot.
sudo touch /etc/init.d/iperf3 && sudo chmod +x /etc/init.d/iperf3
4. Use Nano to edit the file we just created.
sudo nano /etc/init.d/iperf3
5. Now, paste the following. Your screen will look like mine below.
!#/bin/bash /usr/bin/iperf3 -s &
Press Ctrl+x then Y and Enter to save.
6. Now, let’s get that ghetto little script and tell Ubuntu to run it when it boots. Your screen should look like mine below.
sudo update-rc.d iperf3 defaults
Reboot Ubuntu for good measure and then that’s it for the iPerf3 server! Now you just have to install it on another machine to use it as a client. That all depends on what OS you’ll be installing it on.
Here’s a few ways to install it on different operating systems.
Install iPerf3 on Ubuntu
Easy. Just use the same command we used above to install it.
sudo apt-get install iperf3 -y
Install iPerf3 on Windows
Go to the official download page and download the iPerf 3.1.2 zip file containing the x64 or x86 version. It contains two files: iperf3.exe and cygwin1.dll.
If you want a quick way to launch it from the command prompt, you can unzip both of those files into your c:\windows\system32 folder.
Install iPerf3 on Mac OSX
You can either install it from HERE or you could use one of the best tools you can ever use on a Mac: Homebrew. To install iPerf using Homebrew, first install Homebrew by pasting the following into the terminal.
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Now, just type the following in the terminal to install iPerf3.
brew install iperf3
Connect to the iPerf3 server to test your speed
Once you’ve got the client ready to go, all you have to do is type the following to do a standard network throughput test using iPerf.
iperf3 -c IP_ADDRESS_OF_IPERF_SERVER
For example, here is the output from one of my Server 2012 R2 VMs when I type “iperf3 -c 10.0.20.13”.
Pretty sweet, right?! This is an insanely handy tool that has a TON of options that you can use (the official iPerf documentation has a lot of examples you can check out). You can also add additional arguments to the script we created earlier if you want to run it differently from the defaults.
Now go off and start obsessively testing your wireless and Ethernet speeds to make sure you’re optimally streaming Game of Thrones in all of it’s beautiful, high-def glory (just not with your parents).