Netcat no Mac OS X

31

Mais alguém não consegue nc -lp 8888trabalhar no Mac OS X? Existe outra maneira de fazer isso funcionar?

kzh
fonte
Como isso não funciona? Isso retorna um erro?
#
Não estou perto de um mac no momento, mas ele retorna o uso. nc -lp 8888funciona na minha caixa do Ubuntu.
kzh
Nunca tinha ouvido falar disso até ler um livro no Docker. Eles também mencionam algo chamado socat, que supostamente é esse comando nos períodos. Mais informações aqui stackoverflow.com/questions/16808543/install-socat-on-mac e aqui linux.die.net/man/1/socat e aqui youtube.com/watch?v=ZnwZA1GRqkw
JGFMK

Respostas:

35

Parece-me que a -popção não faz nada na versão OS X do netcat. Para fazê-lo funcionar, devo fazê-lo nc -l localhost 8888.

kzh
fonte
7
A menos que instalado a partir de homebrew, então nc -l -p 8888funciona.
precisa saber é o seguinte
2
De man nc: -l ... It is an error to use this option in conjunction with the -p, -s, or -z options. ... Você provavelmente vai querer ficar com @ do kzh comando lá
fatuhoku
@fatuhoku Eu verifiquei apenas meu manual, e yest ele diz que lá, mas o estranho é que se eu fizer nc -lp 8888ou nc -l -p 8888que, então, tomar -pa porta de escuta média. Portanto, minha cópia distribuída não ouve seu próprio manual!
Kzh 11/10
Acordado! Os sinalizadores são um pouco expressivos demais ... deveriam ter se recusado a fazer qualquer trabalho útil, enviar uma mensagem e sair!
Fatuhoku 11/10
Funciona também com nc -l 8888
polym
13

Veja como isso está funcionando para mim no OS X 10.10, com a versão BSD instalada ou a da Homebrew:

Versão BSD

Ao usar a versão BSD que acompanha o OS X, um servidor pode ser iniciado assim

/usr/bin/nc -l 9999

Homebrew

  • Instale usando o Homebrew: brew install netcat
  • Isso instalará a v0.7.1 do http://netcat.sourceforge.net/
  • Pode-se usar o comando ncou netcat. ncé um alias para netcat.

Para iniciar um servidor:

nc -l -p 9999

Para iniciar um cliente:

nc targethost 9999

Para obter a página de manual desta versão, é necessário usar man netcat, pois man ncabrirá a página de manual da versão BSD.

nwinkler
fonte
3

O nc no MacOS tem muitos bugs, e a Apple não fez nenhum patch por anos. o netcat da homebrew é uma versão muito baixa. use o ncat do nmap

JZ
fonte
2

Eu precisava testar um serviço da Web sobre SSL, suportado pelo ncat (feito pela equipe do nmap).

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

https://nmap.org/ncat/

Colin
fonte