Ferramenta CLI nativa do Windows para mostrar a utilização da rede por endereço IP

Ferramenta CLI nativa do Windows para mostrar a utilização da rede por endereço IP

No Windows: Procurando uma maneira de linha de comando para extrair a taxa de transferência instantânea da rede (saída e entrada) está sendo consumida. As informações devem ser agrupadas por endereços IP.

Seria semelhante ao Monitor de Recursos do Windows -> Rede -> Atividade de Rede

Atividade de rede

Histórico: Temos 20 servidores Windows que gostaríamos de entender (1) quanta carga de rede ele está adicionando ao site e (2) com quais sistemas ele está se comunicando, coletando amostras instantâneas por um período de um mês. Não tenho acesso aos dados do roteador (por exemplo, ninguém sabe quem oferece suporte ao roteador). Eu entendo que o netsh trace pode ser uma opção, mas analisar esse rastreamento está um pouco além da minha compreensão.

Responder1

Encontrei um arquivo em lote no meu disco rígido, talvez possa ajudá-lo, desculpe, não me lembro de onde o tirei? mas de qualquer forma, experimente: basta copiar e colar este código abaixo e salvá-lo comoLista_Conexões.bate execute com duplo clique

@echo off
Title List connections
Mode 90,42 & Color 0A
setlocal enabledelayedexpansion
Set "Log=%~dpn0.txt"
If exist "%Log%" Del "%Log%"
::Used to convert PID to process names.
for /f "tokens=1 delims=" %%A in ('tasklist') do call :PID %%A

echo [Program:PID]       LocalIP:Port      RemoteIP:Port
(echo [Program:PID]      LocalIP:Port      RemoteIP:Port & echo;)>"%Log%"

echo.
for /f "tokens=1-27 delims=: " %%A in ('netstat -ano') do call :netstat %%A %%B %%C %%D %%E %%F %%G %%H %%I %%J %%K %%L %%M %%N %%O %%P %%Q %%R %%S %%T %%U
start "log" "%Log%"
pause>nul
exit /b

:PID
   set pid_%2=%1
   exit /b

:netstat
set type=%1
set srcIP=%2
set srcPort=%3
set dstIP=%4
set dstPort=%5
set state=%6
set pid=%7
set name=!pid_%pid%!

::Filter local connections away.
if "%state%"=="" exit /b
if not "%type%"=="TCP" exit /b
if "%srcIP%"=="Local" exit /b
if "%dstIP%"=="*" exit /b
if "%srcIP%"=="%dstIP%" exit /b
if "%pid%"=="" exit /b

if "%dstPort%"=="[" (
   set state=LISTENING
   set srcPort=%dstIP%
   set pid=%9
   )
if "%dstPort%"=="[" set name=!pid_%pid%!

if "%name%"=="" set name=Unknown

::Formatting \tabs
set srcPortTab=     %srcPort%
set namePidTab=[%name%:%pid%]                               
set srcIpPortTab=%srcIP%:%srcPort%                               
set dstIpPortTab=%dstIP%:%dstPort%                               
set stateTab=%state%                               
set namePidTab=%namePidTab:~0,20%
set srcIpPortTab=%srcIpPortTab:~0,21%
set dstIpPortTab=%dstIpPortTab:~0,21%
set stateTab=%stateTab:~0,12%
set srcPortTab=%srcPortTab:~-5%

if not "%state%"=="LISTENING" echo.%namePidTab% %srcIPPortTab% %dstIPPortTab% %stateTab%
if "%state%"=="LISTENING" echo.%namePidTab% Listening on: %srcPortTab%

(
    if not "%state%"=="LISTENING" echo.%namePidTab% %srcIPPortTab% %dstIPPortTab% %stateTab%
    if "%state%"=="LISTENING" echo.%namePidTab% Listening on: %srcPortTab%
)>>"%Log%"
exit /b

informação relacionada