O que você está procurando é algo conhecido como "negociação do tipo terminal", geralmente abreviado como "termtype". Isso permite que o software cliente com reconhecimento de telnet negocie um tipo de terminal fora da banda usando escaneamentos de telnet.
Para a metade do cliente, telnet
tentará automaticamente negociar o tipo de terminal. netcat
, por outro lado, não assume que o servidor remoto entenda as fugas de telnet por padrão, e você precisará executá-lo com a opção -t
para ativar a negociação de telnet.
Para a metade do servidor, acredito que seria sua implementação e está fora do escopo do assunto do ServerFault. Ler o RFC1091 seria um bom começo.