Vous connaissez netcat ? Un vieux protocole bien connu des admins système et des utilisateurs Linux permettant de diffuser un flux TCP/IP (voir UDP) sur un réseau alias « le couteau suisse du TCP/IP » comme dirait l’autre. J’avais vu ça en première année d’école sur Linux et jusqu’à récemment je ne savais pas qu’il était incorporé de base sous Mac OS, l’occasion de partager avec vous son utilisation simple.

Pourquoi utiliser NetCat ?

Honnêtement avec les outils existants aujourd’hui pour le transfert de fichiers en réseau, il y a a peu de chance que vous utilisiez cette méthode qui reste compliquée pour l’utilisateur lambda… Cependant, il permet de faire des choses un peu plus avancées que le simple transfert et reste un outil à connaitre pour votre culture.

Pour rappel, sous Mac vous pouvez transférer en:

  • Utilisant un logiciel de cloud comme Dropbox pour échanger vos fichiers ( passage par Internet, donc exit les fichiers volumineux si vous n’êtes pas fibrés).
  • Utiliser un protocole comme AFP ou SAMBA après avoir partagé un élément de votre Finder dans préférences systèmes/partage/partage de fichiers

partage-fichier-mac-os

  • Utiliser AirDrop, le système de partage sans fil d’Apple qui vous permet de partager un fichier entre Mac/Mac ou iOS/iOS (pas encore iOS/Mac mais je pense que ça va venir) sans même être sur le même réseau…
  • Envoyer un eMail (la méthode de vos parents surement 😉, pas pratique quand on a un fichier de 2 Go à transférer)
  • Utiliser un système de partage de fichier comme WeTransfert (cela passe là aussi par Internet… pas pratique en cas de fichiers lourds si vous n’êtes pas fibrés).

Pourquoi l’utiliser alors ? Et bien pour plusieurs raisons. D’une part il est mutli plateforme et vous pourrez ainsi échanger des fichiers avec n’importe quel OS doté de netcat (c’est un vieux protocole, même un vieux Mac pourrait donc l’utiliser). D’autre part, il suffit simplement d’avoir un terminal (et un navigateur dans notre cas) pour l’utiliser simplement ce qui peut s’avérer utile selon la machine que vous utilisez.

Comment ça marche ?

NetCat utilise donc votre connexion locale pour transférer des fichiers ce qui permet d’avoir débits proportionnels à la qualité de votre connexion entre vos deux postes. Sur le poste numéro 1 nous allons ouvrir un flux TCP/IP et partager notre fichier et sur le poste 2 nous irons chercher son contenu.

Je vous invite donc à ouvrir le terminal pour un petit test :

  • La machine 1 ( MacBook Pro 15″, ip : 192.168.0.29 )
  • La machine 2 (iMac 21″, ip : on s’en fout, tant que la plage est la même et que les ordinateurs communiquent entre eux).

Pour ouvrir le flux TCP/IP voici la commande :

nc -l 8000

Le flux est alors ouvert, en serveur sur le port 8000 (à condition que ce dernier soit utilisable, netcat peut aussi être utilisé pour du scan de port sur un réseau, ou du ping sur un serveur pour tester sa connexion).

Pour partager un fichier sur le flux TCP :

nc -l 8000 < chemin/de/mon-fichier.jpg

netcat

Pour récupérer le fichier sur la machine distante, vous pouvez utiliser votre navigateur et taper dans l’url, l’adresse ip de la machine 1 : le port utilisé. S’il s’agit d’une image par exemple :

Screen Shot 2014-04-05 at 17.49.34

On retrouve bien notre fichier image partagé et l’utilisateur, sur le poste 2 peut enregistrer l’image.

Récupérer le contenu en terminal sur notre poste 2 :

Il vous suffit d’aller récupérer le flux via la commande :

nc 192.168.0.29 8000 < /chemin/ou/vous/voulez/recuperer/le/fichier.jpg

Sachez, pour finir, que le transfert du fichier met fin à la la session de transfert et met fin au streaming du flux TCP sur l’hôte utilisant netcat. Le port utilisé est fermé.

Et voilà, vous en savez en peu plus sur netcat. Si vous voulez vraiment bucher la commande, l’ensemble des options (port scanning etc…) est détaillé dans le manuel.

man nc dans votre terminal

Catégories : Apple

blank

matthieu

Account manager chez un géant de la tech. Passionné par le numérique et le business qu'il génère. Également entrepreneur et formateur à mes heures perdues.

2 commentaires

blank

Sam · 6 avril 2014 à 12 h 24 min

Je chat de Neo et Trinity 🙂 .

Je ne connaissais pas cette utilisation, c’est fun 😀 .

    blank

    matthieu · 7 juin 2014 à 16 h 50 min

    Gné ? 🙂

Laisser un commentaire

Emplacement de l’avatar

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.