Eu acredito que a funcionalidade do ipv4 e ipv6 é de fato um resultado da confusão em torno de haver várias implementações (garfos) ou versões completamente diferentes. Se você pesquisar, tropeçará nas menções de nc6
. Essa implementação parece estar nas distros baseadas no BSD.
Eu tentaria instalar nc6
em sua distribuição específica e executá-la em vez de nc
obter suporte ao ipv6.
Mais pesquisa
Consegui encontrar esse commit datado de 2018-01-11- adicionar patch IPv6 que claramente está adicionando a funcionalidade IPv6 de volta ao que você está chamando de versão mais recente do netcat.
NOTA: Só tenho acesso ao nc 7.50 nos meus sistemas e, como você descreve, suporta ambos -4
e -6
.
Eu suspeito que o que você acha que é uma versão mais recente do netcat é de fato uma versão muito mais antiga: http://nc110.sourceforge.net/ .
Se você quiser uma lista exaustiva das várias implementações, isso está disponível na pergunta da Wikipedia sobre o Netcat .
A versão original do netcat era um programa Unix. A última versão (1.10) foi lançada em março de 1996. 1
Na maioria das distribuições Linux, o GNU netcat ou a versão NMAP parecem ser o que a maioria está usando:
Existem várias implementações em sistemas POSIX , incluindo reescritas a partir do zero, como GNU netcat [5] ou OpenBSD netcat, 6 o último dos quais suporta IPv6 e TLS . A versão do OpenBSD foi portada para o FreeBSD base 7 e Windows / Cygwin. 8 O Mac OS X vem com o netcat instalado a partir do OSX 10.13 ou os usuários podem usar o MacPorts para instalar uma variante. [9] Existe também uma versão do netcat para Microsoft Windows disponível. [10]
Por exemplo, no CentOS 7.x:
$ nc --version
Ncat: Version 7.50 ( https://nmap.org/ncat )
$ rpm -qf /bin/nc
nmap-ncat-6.40-13.el7.x86_64
socat
ferramenta. Aparentemente, tem muito mais opções, e as seguintes:socat tcp6-listen:2222
fizeram o trabalho.