Quelles sont les différences entre ncat, nc et netcat?

20

Je ne sais pas quand utiliser nc, netcatou ncat. Si l'un est la version obsolète d'un autre? Si l'un n'est disponible que sur une seule distribution? Si c'est la même commande mais avec des noms différents?

En fait, je suis un peu confus. Ma question vient de vouloir faire un test de vitesse réseau entre deux serveurs CentOS 7. Je suis tombé sur plusieurs exemples en utilisant ncet ddmais peu en utilisant netcatou ncat.

Quelqu'un pourrait-il clarifier cela pour moi s'il vous plaît?

Pozinux
la source

Réponses:

23

ncet netcatsont deux noms pour le même programme (généralement, l'un sera un lien symbolique vers l'autre). Cependant - pour beaucoup de confusion - il existe deux implémentations différentes de Netcat ("traditionnel" et "OpenBSD"), et elles prennent des options différentes et ont des fonctionnalités différentes.

Ncat est la même idée, mais du projet Nmap. Il y a aussi socat, ce qui est une idée similaire. Il existe également /dev/tcpune fonction Bash (facultative).

Cependant, si vous cherchez à faire des tests de vitesse de réseau, toutes les réponses ci-dessus sont la mauvaise réponse. Vous recherchez iperf3 ( site 1 ou site 2 ou code ).

derobert
la source
Voulez-vous dire que le test (test rapide) de la vitesse du réseau à l'aide de dd et nc n'est pas fiable?
Pozinux
3
@Pozinux dd / nc devrait vous donner une bande passante moyenne, mais aucune des informations supplémentaires utiles qu'iperf3 ne vous donne (était-il stable, a-t-il connu un démarrage lent TCP, y a-t-il eu des retransmissions, etc.). Tous ces éléments sont très utiles (presque nécessaires) pour dépanner une bande passante étonnamment faible, ou même pour comprendre ce que signifie «vous avez obtenu X Mbps».
derobert
Ok merci, je ne connaissais pas cet outil.
Pozinux
7

En regardant les paquets dans Debian, il y a deux implémentations différentes de netcat ( nc), je pense que les deux installent avec netcatet sont ncliés au même binaire (bien qu'ils utilisent le système «alternatif» de Debian pour contrôler avec lequel l'une des implémentations apparaît avec le nom principal.) Ces deux sont netcat-traditional("le" classique "netcat, écrit par Hobbit . Il manque de nombreuses fonctionnalités trouvées dans netcat-openbsd.") et netcat-openbsd("la réécriture OpenBSD de netcat, y compris le support pour IPv6, les proxys et Unix prises. ").

ncatest la version de netcat du projet Nmap prétendu être "une réimplémentation très améliorée du vénérable Netcat".

Les trois semblent avoir les mêmes fonctionnalités de base, comme pour pouvoir ouvrir un socket et se connecter ou écouter, mais pour tout ce qui est au-dessus, vous voudrez peut-être consulter le manuel de votre version. (Celui d'OpenBSD ne prend pas en charge l' -eexécution d'une commande après la connexion, par exemple.)

ilkkachu
la source