¿Cuáles son las diferencias entre ncat, nc y netcat?

20

No estoy seguro de cuándo usar nc, netcato ncat. Si uno es la versión obsoleta de otro? Si uno solo está disponible en una distribución? Si es el mismo comando pero con diferentes nombres?

De hecho estoy un poco confundido. Mi pregunta proviene de querer hacer una prueba de velocidad de red entre dos servidores CentOS 7. Encontré varios ejemplos usando ncy ddpero no muchos usando netcato ncat.

¿Podría alguien aclararme esto, por favor?

Pozinux
fuente

Respuestas:

23

ncy netcatson dos nombres para el mismo programa (normalmente, uno será un enlace simbólico al otro). Sin embargo, para mayor confusión, hay dos implementaciones diferentes de Netcat ("tradicional" y "OpenBSD"), y toman diferentes opciones y tienen diferentes características.

Ncat es la misma idea, pero del proyecto Nmap. También existe socat, que es una idea similar. También hay /dev/tcpuna función Bash (opcional).

Sin embargo, si está buscando hacer pruebas de velocidad de red, todas las respuestas anteriores son la respuesta incorrecta. Estás buscando iperf3 ( sitio 1 o sitio 2 o código ).

derobert
fuente
¿Quiere decir que probar la velocidad de la red (prueba rápida) con dd y nc no es confiable?
Pozinux
3
@Pozinux dd / nc debería darle un ancho de banda promedio, pero ninguna de la información adicional útil que le proporciona iperf3 (fue estable, experimentó un inicio lento de TCP, hubo retransmisiones, etc.). Todos estos son muy útiles (casi obligatorios) para solucionar problemas de ancho de banda inesperadamente bajo, o incluso para entender lo que significa "tienes X mbps".
derobert
Ok, gracias, no sabía sobre esta herramienta.
Pozinux
7

Mirando los paquetes en Debian, hay dos implementaciones diferentes de netcat ( nc), creo que ambos se instalan netcaty están ncenlazados al mismo binario (aunque usan el sistema de "alternativas" de Debian para controlar cuál de las implementaciones aparece con el nombre principal). Esos dos son netcat-traditional(el "clásico" netcat, escrito por Hobbit . Carece de muchas características que se encuentran en netcat-openbsd ") y netcat-openbsd(" la reescritura de Netcat de OpenBSD, incluida la compatibilidad con IPv6, proxies y Unix enchufes ").

ncates la versión de netcat del Proyecto Nmap que afirma ser "una reimplementación muy mejorada del venerable Netcat".

Los tres parecen tener la misma funcionalidad básica, como poder abrir un socket y conectarse o escuchar, pero para cualquier cosa por encima de eso, es posible que desee consultar el manual de su versión. (El OpenBSD no es compatible -epara ejecutar un comando después de la conexión, por ejemplo).

ilkkachu
fuente