Corresponder conta / ipaddress de usuários conectados a uma área de trabalho remota

0

A área de trabalho remota está sendo executada no Windows7. Eu não tenho direitos de administrador.

Usando nestat , consigo obter uma lista de todos os endereços IP conectados remotamente:

C:\>netstat -n | find "3389" | find "ESTABLISHED"
  TCP    10.*.4.10:3389        10.*.4.*1:50031       ESTABLISHED
  TCP    10.*.4.10:3389        10.*.4.*2:50032       ESTABLISHED
  TCP    10.*.4.10:3389        10.*.4.*3:50033       ESTABLISHED
  TCP    10.*.4.10:3389        10.*.4.*4:50034       ESTABLISHED
  TCP    10.*.4.10:3389        10.*.4.*5:50035       ESTABLISHED

No PC, temos várias contas (por exemplo, USER1, USER2, USER3, USER4, USER5).

Estou escrevendo um programa que exigirá como entrada uma lista desses usuários mapeados para a conta em que estão atualmente conectados - eu preciso fazer isso no prompt de comando.

A saída desejada pode ter esta aparência:

(o formato realmente não é tão importante, se eu conseguir a informação de alguma forma, eu vou lidar com isso de alguma forma)

  10.*.4.*1:50031        USER1
  10.*.4.*2:50032        USER2
  10.*.4.*3:50033        USER3
  10.*.4.*4:50034        USER4
  10.*.4.*5:50035        USER5
    
por Igor L. 18.05.2016 / 13:03

1 resposta

1

Isso pode fazer você ir na direção certa, embora forneça apenas dados para o usuário "atual":

tracert %CLIENTNAME% | find "Tracing" > %TEMP%\ip.txt
set CLIENTIPINFO=<%TEMP%\ip.txt
echo %USERNAME% - %CLIENTIPINFO%

Talvez um utilitário de terceiros seja útil? Não posso garantir a confiabilidade deste aplicativo, mas funcionou em um dos nossos servidores de desenvolvimento: link

    
por 18.05.2016 / 14:40