Instala y configura iperf3 en pfSense para probar la velocidad en red local

iperf3 es una de las mejores herramientas para medir la velocidad en la red local, ya sea una red cableada o inalámbrica. Este programa utiliza un modelo cliente-servidor, por tanto, es necesario tener tanto un equipo que actúe como servidor de iperf3, para que el equipo que actúe como cliente iperf3 pueda comprobar la velocidad en la red local. El sistema operativo pfSense permite la instalación de iperf3 para comprobar la velocidad de la red local, hoy en RedesZone os vamos a enseñar cómo hacerlo para comprobar el rendimiento.

En RedesZone llevamos utilizando muchos años el popular programa jperf basado en iperf2, pero la nueva versión de iperf3 es completamente distinta a la segunda versión, por tanto, no son compatibles entre sí. iperf3 nos permitirá medir el rendimiento de una red local en LAN, e incluso podremos realizar pruebas LAN-WAN y también WiFi de manera fácil y rápida, sin depender de medidores de velocidad de Internet externos, todo se quedará en nuestra propia red local doméstica. Esta herramienta iperf3 permite hace uso del protocolo TCP, UDP y SCTP para la realización de las pruebas de rendimiento, y también es compatible con redes IPv4 como redes IPv6.

¿Por qué instalar iperf3 en pfSense?

pfSense es un sistema operativo orientado a firewall, que también puede hacer las funcionalidades de router, tanto en entornos domésticos «avanzados» como en pequeñas y medianas empresas. Cuando tenemos una arquitectura de red router-on-stick, y el propio pfSense es el que gestiona todas las VLANs que tengamos en la red, es posible que el enlace troncal entre el pfSense y el switch principal se nos quede corto.

Gracias a la posibilidad de instalar iperf3 en el pfSense, podremos comprobar la velocidad máxima que conseguiremos en un equipo de la red local, teniendo en cuenta el cableado desde el principio hasta el final, la potencia del hardware donde hayamos instalado pfSense y si realmente es capaz de gestionar el tráfico que le lancemos. Cuando en pfSense tenemos múltiples servicios, como cientos de reglas en el cortafuegos, un IDS/IPS configurado en la LAN y/o WAN, o utilidades como ntopng para ver en tiempo real todos los flujos de datos, es posible que el rendimiento del pfSense no sea el adecuado por falta de potencia, y tengamos que afinar las diferentes reglas. Es en estos casos cuando iperf3 cobra protagonismo, tanto para medir el rendimiento en la red local como también para medir el rendimiento inter-vlan routing.

Para instalarlo, simplemente tenemos que irnos a la sección de «System / Package Manager», en la sección de «Installed Packages» tendremos todos los paquetes instalados actualmente, por defecto no viene instalada esta herramienta.

Nos vamos a la sección de «Available Packages» y buscaremos por «iperf», y procedemos a instalarlo como cualquier otra herramienta.

Una vez instalado, podremos ver en la sección de «Installed Packages» que ya lo tenemos, concretamente tenemos la versión iperf3 3.9.

Una vez instalado, ahora tendremos que ejecutarlo.

Funcionamiento de iperf3 en pfSense

En la sección de «Diagnostics» podremos ejecutar tanto el iperf3 cliente como el servidor. Si ejecutamos el cliente, en nuestro equipo deberemos configurar el iperf3 servidor, y viceversa, si configuramos el servidor iperf3 en pfSense, en nuestro equipo tendremos que configurar el iperf3 en modo cliente para realizar todas las pruebas de rendimiento.

A ambas herramientas, tanto el cliente como el servidor, se puede acceder desde el menú de «Diagnostics», pero posteriormente desde cualquiera de ellos podremos acceder al cliente y servidor.

Cliente

En el menú de interfaz gráfica de usuario tendremos las principales opciones de configuración que tiene el cliente iperf3:

  • IP del servidor
  • Puerto TCP o UDP del servidor
  • Protocolo TCP o UDP
  • Formato de salida, bits/sec o bytes/s.

Y otras opciones relacionadas con los buffers que podemos dejar vacías para que coja los valores por defecto. Una vez que hayamos introducido todos los datos del servidor iperf3 que ya se está ejecutando, pinchamos en «Run iperf client» y se ejecutará el test de rendimiento.

Aquí solamente debemos meternos siempre que nuestro equipo actúe de servidor iperf3, y queramos comprobar la velocidad de descarga. Normalmente en una red cableada estamos en un entorno Full-Dúplex, por lo que la velocidad de descarga y subida debería ser la misma, a no ser que esté la red con mucho uso en descarga o subida, que entonces podríamos tener diferencias.

Servidor

En el menú de interfaz gráfica de usuario tendremos las principales opciones de configuración que tiene el servidor iperf3:

  • Puerto TCP o UDP del servidor
  • Formato de salida, bits/sec o bytes/sec

Un detalle muy importante, es que el servidor iperf3 detectará si estamos enviando tráfico TCP o UDP y actuará en consecuencia, por defecto se usa el puerto 5201 como suele ser habitual en iperf3. Otras opciones disponibles en la sección de servidor, es el «Interval» que nos irá indicando el ancho de banda, jitter y pérdidas en tiempo real.

Una vez que hayamos configurado estos tres parámetros, pinchamos en «Run iperf Server» y ya podremos empezar a lanzar pruebas de rendimiento desde nuestro PC cliente.

Un detalle importante, es que, si el servidor o cliente iperf3 está activado, se nos mostrará en el menú principal en el estado de los diferentes servicios. Lo recomendable es no dejar el iperf3 funcionando si no vamos a estar realizando test de rendimiento, tal y como tenemos nosotros ahora mismo:

En el cliente iperf3 que ejecutemos en el PC, ya sea con sistema operativo Windows o Linux, deberemos poner la siguiente orden:

iperf3.exe -c 192.168.1.1 -P 50 -p 5201 -f g -t 5 ./iperf3 -c 192.168.1.1 -P 50 -p 5201 -f g -t 5
  • -c 192.168.1.1: actúa en modo cliente con la IP definida.
  • -P 50: mandamos un total de 50 conexiones TCP
  • -p 5000: hacemos uso del puerto 5000, el por defecto es 5201
  • -f g: mostramos la velocidad en Gbps
  • -t 5: lanzamos el test durante 5 segundos.

Dependiendo de las opciones que queramos configurar, modificaremos los valores detrás de los argumentos. Esperamos que con este pequeño tutorial sepáis cómo sacar el máximo partido a iperf3 en el pfSense, y comprobar la velocidad en la red local y en la comunicación inter-vlan.