Netcat unter Mac OS X

31

Kann noch jemand nc -lp 8888mit Mac OS X arbeiten? Gibt es eine andere Möglichkeit, dies zum Laufen zu bringen?

kzh
quelle
Wie geht das nicht Gibt es einen Fehler zurück?
Heavyd
Ich bin gerade nicht in der Nähe eines Mac, aber es gibt die Nutzung zurück. nc -lp 8888Funktioniert auf meiner Ubuntu-Box.
kzh
Hatte noch nie davon gehört, bis ich ein Buch über Docker gelesen hatte. Sie erwähnen auch etwas, das socat genannt wird und angeblich dieses Kommando für Sterioden ist. Weitere Informationen hier stackoverflow.com/questions/16808543/install-socat-on-mac und hier linux.die.net/man/1/socat und hier youtube.com/watch?v=ZnwZA1GRqkw
JGFMK

Antworten:

35

Es sieht für mich so aus, als ob die -pOption in der OS X-Version von netcat nichts bewirkt. Damit es funktioniert, muss ich tun nc -l localhost 8888.

kzh
quelle
7
Sofern nicht von Homebrew installiert, dann nc -l -p 8888funktioniert.
user1338062
2
Von man nc: -l ... It is an error to use this option in conjunction with the -p, -s, or -z options. ... Du willst wahrscheinlich einfach bei @ kzhs Befehl
bleiben
@fatuhoku Ich habe gerade mein Handbuch durchgesehen und ja, dort steht das, aber das Seltsame ist, wenn ich das tue nc -lp 8888oder nc -l -p 8888es wird dann -pbedeuten, dass ich den Port lausche . Meine verteilte Kopie hört sich also kein eigenes Handbuch an!
kzh
Einverstanden! Flags sind ein bisschen zu ausdrucksstark ... es hätte sich einfach weigern sollen, nützliche Arbeit zu verrichten, eine Nachricht auszugeben und zu beenden!
Fatuhoku
Funktioniert auch mit nc -l 8888
polym
13

So funktioniert das für mich unter OS X 10.10, entweder mit der installierten BSD-Version oder der von Homebrew:

BSD-Version

Bei Verwendung der mit OS X ausgelieferten BSD-Version kann ein Server wie folgt gestartet werden

/usr/bin/nc -l 9999

Homebrew

  • Installation mit Homebrew: brew install netcat
  • Dadurch wird Version 0.7.1 von http://netcat.sourceforge.net/ installiert.
  • Man kann entweder den Befehl ncoder verwenden netcat. ncist ein Alias ​​für netcat.

So starten Sie einen Server:

nc -l -p 9999

So starten Sie einen Client:

nc targethost 9999

Um die Manpage dieser Version zu erhalten, muss man verwenden man netcat, wie man ncdie Manpage der BSD-Version öffnen wird.

nwinkler
quelle
3

nc unter MacOS hat zu viele Fehler und Apple hat jahrelang keinen Patch mehr ausgeführt. Das Netcat von Homebrew ist eine sehr niedrige Version. Verwenden Sie stattdessen ncat von nmap

JZ
quelle
2

Ich musste einen Webservice über SSL testen, der von ncat (vom nmap-Team erstellt) unterstützt wird.

brew install nmap
ncat -C --ssl api.somecompany.com 443

https://nmap.org/ncat/

Colin
quelle