Por que o ^ C no cliente netcat fecha o servidor enquanto o ^ C no servidor não fecha o cliente?

1

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:

  • Se o cliente for fechado com ^C , isso fechará o cliente e o servidor
  • Se o servidor for fechado com ^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.

    
por juhist 23.06.2018 / 17:41

0 respostas