Você deve adicionar uma opção a nc . A opção depende da versão do nc que você está executando. Por exemplo, no meu caso (Kubuntu), a opção é -k . Na página do manual,
-k Forces nc to stay listening for another connection after its current connection is completed. It is an error to use this option without the -l option.
Eu não posso prometer que -k funciona (a menos que você esteja no Ubuntu, é claro), você terá que procurar por algo similar. Por exemplo, no meu Debian, -k não existe, mas você encontra:
-q seconds after EOF on stdin, wait the specified number of seconds and then quit. If seconds is negative, wait forever
Editar:
Para verificar se funciona, em um computador:
nc -k -l 0.0.0.0 10000 > out.txt
Em um segundo computador:
echo Hello | nc IP_address_of_first_pc 10000
Emita o comando acima algumas vezes, então interrompa o comando nc no pc1, verifique o número de linhas em out.txt.