Ubuntu 18.04 LTS에서 고대 netcat을 테스트했습니다. OpenBSD의 netcat:
$ dpkg -l|grep netcat
ii netcat-openbsd 1.187-1
amd64 TCP/IP swiss army knife
nc -v -v -v -l -p 1234
서버와 클라이언트를 차례로 열면 다음 nc -v -v -v localhost 1234
동작이 관찰됩니다.
- 클라이언트가 shutdown 을 사용하면
^C
클라이언트와 서버가 모두 종료됩니다. - 서버가 다운되었을 때 사용하면
^C
클라이언트에 영향을 주지 않고 서버만 종료됩니다.
행동이 비대칭인 이유는 무엇입니까? 서버가 종료되면 클라이언트도 종료되어야 하는 것 아닌가요?
서버가 종료된 후 클라이언트에 텍스트 줄을 입력하면 결국 클라이언트도 종료되는 것 같습니다.