Qual é a diferença entre socat e netcat?

38

Entendo que o socat é descrito como uma versão "mais avançada" do netcat, mas qual é a diferença real? Seria correto dizer que tudo o que você pode fazer no netcat também pode fazer no socat? E o contrário (tudo o que você pode fazer com o socat também pode ser feito no netcat)?

bantic
fonte

Respostas:

26

O socat pode fazer coisas de linha serial, o netcat não pode. O socat pode executar funcionalidades bastante avançadas, como fazer com que vários clientes escutem em uma porta ou reutilizar conexões.

Marcin
fonte
11

O Netcat é como socat apenas com os tipos de endereço STDIO, TCP, TCP-LISTEN, UDP e UDP-LISTEN com menos opções para esses tipos de endereço.

Qual é o objetivo da sua pergunta? Quando usar qual? Nesse caso, a resposta é: use o netcat se ele puder resolver seu problema; use socat caso contrário.

Mark Wagner
fonte
2

Simplificando (muito, muito), o netcat é um telnet que você pode usar em scripts. Plus is pode ser usado como um ouvinte simples, se você quiser. E sim, o socat pode fazer mais coisas que o netcat, mas para verificar se é um superconjunto, você precisa comparar as opções da linha de comando.

adamo
fonte