Eu testei no Ubuntu 18.04 LTS o venerável netcat. O netcat vem do OpenBSD:
$ dpkg -l|grep netcat
ii netcat-openbsd 1.187-1
amd64 TCP/IP swiss army knife
Quando eu uso nc -v -v -v -l -p 1234
para abrir o servidor e, posteriormente, nc -v -v -v localhost 1234
para abrir o cliente, observo o seguinte comportamento:
^C
, isso fechará o cliente e o servidor ^C
, isso fechará apenas o servidor sem afetar o cliente Por que o comportamento é assimétrico? O cliente não deve ser fechado se o servidor estiver fechado?
Parece que depois que o servidor é fechado, digitar qualquer linha de texto no cliente finalmente faz com que o cliente feche também.