Meu entendimento é que um soquete TCP consiste no número da porta IP +, portanto, alterar o IP interrompe essa conexão. O nc não tem como saber se o IP foi alterado, por isso continua enviando dados para o IP original até que a sessão expire.
Veja o RFC 793 (Protocolo de Controle da Transmissão), especificamente a seção 2.7:
2.7. Estabelecimento de conexão e limpeza
Para identificar os fluxos de dados separados que um TCP pode manipular, o TCP fornece um identificador de porta. Como os identificadores de porta são selecionados independentemente por cada TCP, eles podem não ser exclusivos. Para fornecer endereços exclusivos dentro de cada TCP, concatenamos um endereço de Internet que identifica o TCP com um identificador de porta para criar um soquete que será exclusivo em todas as redes conectadas juntas.
Sugiro usar o Wireshark ou outro sniffer de pacote para assistir ao tráfego e ver em ação.