Qual é a maneira mais simples de testar um servidor de soquete simples

18

Eu tenho um servidor que escuta em um soquete as conexões de entrada e gera um texto de boas-vindas ("Hello world"). Qual é a maneira mais simples de testar isso com ferramentas simples do sistema operacional (aqui OS X)? Eu imagino algo como uma boa e velha aplicação do terminal RS232:

mac:~ mike$ terminal 192.168.92.123 1234
Hello world
>
Mike L.
fonte
Esta é uma porta, não um soquete. Se você realmente deseja testar um soquete, use nc -Uno OS X e no Linux, use socat, por exemplo socat - UNIX-CONNECT:/tmp/memcached.sock.
Simon Woodside

Respostas:

30

Depende do tipo de teste que você deseja executar? Se você deseja testar o estabelecimento de uma conexão e o envio de alguns dados, posso pensar em dois testes simples. Use netcat(nc) para "ecoar" alguns dados em um soquete remoto ou use o telnet para conectar-se a eles interativamente.

Se o servidor estiver escutando no foobar.com, porta 1234, você poderá testá-lo assim:

bro@host:~ $ echo "Some data to send" | nc foobar.com 1234

Mesmo endereço / porta como acima, mas torne a sessão interativa:

bro@host:~ $ telnet foobar.com 1234
Trying foobar.com...
Connected to foobar.com.
Escape character is '^]'.
Type some data to send here
Tim Bielawa
fonte
Obrigado, eu tentei o telnet, mas o tempo limite expirou. Como descobri, era um problema de firewall.
Mike L.