J'ai essayé les deux versions principales de netcat: GNU et BSD. (Le mien est la version BSD).
Sur la version GNU, la commande $ nc -l -p 12345 fonctionne bien mais avec BSD, l'option -l (écouter) ne peut pas être utilisée en conjonction avec -p (port local).
Je ne comprends pas pourquoi il y a une telle différence entre ces deux versions? Dans la version BSD, lorsque j'utilise l'option -p, il appelle automatiquement -l (écouter)?
Merci ;-)
Ps: https://bugs.launchpad.net/ubuntu/+source/netcat-openbsd/+bug/590925/comments/3 -p est différent entre les deux. La version OpenBSD l'utilise pour définir un port source pour les connexions distantes, tandis que le nc traditionnel l'utilise pour spécifier le port local sur lequel il écoutera en mode écoute.
-l
prend le port pour écouter, il-p
n'est donc pas nécessaire du tout. Je ne sais pas ce qui se-p
passe-l
. Je ne sais pas pourquoi il y a une différence.netcat-traditional
pour GNU etnetcat-openbsd
etnetcat
pour BSD.Réponses:
Dans la version BSD, -l prend le port pour écouter, donc -p n'est pas du tout nécessaire. Je ne sais pas ce que -p fait sans -l. Je ne sais pas pourquoi il y a une différence. - icktoofay <- le mérite de la solution revient à ce type ... mais je ne pense pas qu'il ait un compte sur SU, juste SO.
la source