Respostas:
Outro dia encontrei uma jóia hiddem da Microsoft, projetada para testar portas:
"Portqry.exe é um utilitário de linha de comando que você pode usar para ajudar a solucionar problemas de conectividade TCP / IP. O Portqry.exe é executado em computadores com Windows 2000, com Windows XP e com Windows Server 2003. O utilitário relata o status da porta TCP e UDP em um computador que você seleciona. "
Qual versão do Windows? Para Windows 8 / Server 2012 e posterior, o seguinte funciona no PowerShell:
Test-NetConnection 128.159.1.1 -Port 80
Alguns usuários do Google também vão encontrar alternativas que usam o .NET Framework diretamente (já que o PowerShell permite fazer isso) para sistemas executando versões inferiores do Windows que não estarão Test-NetConnection
disponíveis.
Se você não tem aversão ao uso de utilitários de terceiros, o Nmap também é um ótimo amigo e funciona a partir da linha de comando.
$connection = (New-Object Net.Sockets.TcpClient).Connect($target,$port); If ($connection.Connected) { $connection.Close() }
Use o comando telnet para conectar-se ao servidor na porta especificada e veja se uma conexão pode ser estabelecida.
Sucesso:
$ telnet my_server 25
220 my_server ESMTP Postfix
Falhou:
$ telnet my_server 23632
Connecting To my_server...Could not open connection to the host, on port 23632:
Connect failed
O Telnet funcionará para o TCP.
O Netcat é uma ferramenta melhor para esse tipo de coisa, incluindo UDP, mas alguns softwares AV consideram uma 'ferramenta hacker maligna'
o comando a seguir listará todas as portas em uso na máquina ...
netstat -a
A saída contém o protocolo, endereço local, endereço externo e estado atual
Use a porta netcat do Windows :
>nc -zvv www.google.com 80
www.google.com [108.177.96.103] 80 (http) open
sent 0, rcvd 0
>
>nc -zvv www.google.com 888
www.google.com [108.177.96.147] 888 (?): TIMEDOUT
sent 0, rcvd 0: NOTSOCK
>