10
votes

Comment surveiller le trafic réseau sur Windows de la ligne de commande

Comment surveiller le trafic réseau sous Windows de la ligne de commande; Spécifiquement les vitesses de téléchargement / de téléchargement et de quantité de données téléchargées / téléchargées? Y a-t-il un script / lot pour le faire?


3 commentaires

Cela pourrait mieux demander à cela sur Serverfault


@Kenkeenan comme SF / 669580: Capture de paquet via cmd ?


J'ai mis à jour ma réponse pour travailler sous Windows 10 et éviter le débordement entier de 32 bits.


4 Réponses :


5
votes

Vous pouvez utiliser TSHARK avec -Z < Statistiques> Argument. Il suffit de chercher Wireshark . C'est open source et multiplateform.


0 commentaires

8
votes

tandis que TSHARK est vraiment puissant Si vous souhaitez avoir des statistiques fines à grain (selon les hôtes, les protocoles, ...), il dispose de l'inconvénient principal de rassembler des statistiques pendant la période de fonctionnement. En tant que tel, il est seulement bon de signaler des statistiques "instantanées", mais de ne pas signaler le trafic de sondages à des moments réguliers à temps afin d'avoir une idée de la manière dont votre trafic réseau change le jour, la semaine, ...

En outre, comme TShark fait capturer des paquets, il y a des frais généraux.

Donc, selon vos besoins, vous pourriez être intéressé par les commandes MS Windows NET ou NETSTAT ( NETSTAT a la possibilité de signaler les statistiques par protocole). 'statistiques nettes [serveur | postes de travail]' ou 'netstat [-E | -s]' sont, en ce qui concerne les statistiques du trafic de réseau, les équivalents de la MS Windows de Linux 'ifconfig' (ou 'cat / proc / net / dev' si vous préférez).

Notez que, comme ifconfig do, net ou netstat Seulement signaler la quantité de données puisque l'interface a été élevée.

Pour obtenir des taux de circulation, vous devez gérer vos appels sur ces commandes et faire le calcul vous-même.

, les deux commandes sont expédiées avec tous les récents Versions MS Windows.


1 commentaires

Je ne peux pas le confirmer par moi-même, mais je lis que si vous utilisez netstat -e pour obtenir le montant des octets reçus et envoyé, dès que les données envoyées ou reçues ont atteint 4 Go, il réinitialise les deux comptoirs à zéro.



5
votes

TypePerf dans Windows devrait fonctionner pour obtenir les données.

typeperf "\Network Interface(*)\....
typeperf -q "Network Interface" will list all the object
\Network Interface(*)\Bytes Total/sec
\Network Interface(*)\Packets/sec
\Network Interface(*)\Packets Received/sec
\Network Interface(*)\Packets Sent/sec
\Network Interface(*)\Current Bandwidth
\Network Interface(*)\Bytes Received/sec
\Network Interface(*)\Packets Received Unicast/sec
\Network Interface(*)\Packets Received Non-Unicast/sec
\Network Interface(*)\Packets Received Discarded
\Network Interface(*)\Packets Received Errors
\Network Interface(*)\Packets Received Unknown
\Network Interface(*)\Bytes Sent/sec
\Network Interface(*)\Packets Sent Unicast/sec
\Network Interface(*)\Packets Sent Non-Unicast/sec
\Network Interface(*)\Packets Outbound Discarded
\Network Interface(*)\Packets Outbound Errors
\Network Interface(*)\Output Queue Length
\Network Interface(*)\Offloaded Connections


1 commentaires

Cette réponse m'a aidé à obtenir ma formule complète de la carte réseau = ((nombre total d'octets \ sec * 8) / bande passante courante) * 100



3
votes

Je mettais la réponse à une réponse plus complète et précise, à l'aide de la commande netsh code> et de certaines opérations de chaîne pour éviter que Windows 32bits integer débordement em>.

N'oubliez pas que vous devez exécuter Interface IP d'Interface NetSH Subinterfaces code> et vérifiez quelle est la ligne de votre Adaptateur réseau em>. Le fichier de commandes suivant utilise la 4ème ligne de chaîne, c'est le 1er adaptateur répertorié. P>

Il vérifie la vitesse toutes les 10 secondes. Si votre téléchargement ou votre vitesse de téléchargement est jusqu'à 100 Mo par secondes, vous devez répéter la boucle plus souvent (par exemple toutes les 1 seconde). P>

Cela crée également un fichier .csv. Supprimer cette dernière ligne si vous n'en avez pas besoin. P>

Le fichier de commandes: p> xxx pré>

reste en contact si vous avez besoin d'un correctif. P >


solution précédente à l'aide d'un fichier de commandes, avec quelques limitations: strong> p>

Je voulais vous donner une solution plus facile, alors j'ai utilisé ma réponse précédente pour le code A Script de lots de Windows frais qui iTère toutes les 10 secondes. Il surveille la bande passante / la vitesse de téléchargement de la console et des journaux d'octets d'octets transférés dans un fichier .csv. P> xxx pré>

ps: les limitations de Windows sont les comptoirs réinitialisés toutes les 4GBYtes sont transférés et à minuit. P>


Old Solution à l'aide des horaires de tâches et XAMPP: strong> p>

J'ai dû surveiller et enregistrer la quantité quantité de données téléchargée EM> Comme votre cas, et trouvez plus vite pour exécuter un script avec le em> Tableau de Windows EM> que de rechercher un logiciel gratuit qui vident les informations graphiques habituelles dans un fichier. Peut-être que mon script fait maison fonctionne pour vous. P>

J'ai démarré un serveur Apache / PHP local à l'aide de XAMPP pour Windows et exécutez ce script de la ligne de commande. Par exemple: P>

<?php
//Task to schedule "C:\xampp\php\php.exe -f C:\xampp\htdocs\bwlog.php"
//Store console command result
$netstat=shell_exec("netstat -e");
//Start of the bytes transfered line
$line=substr($netstat,strpos($netstat,"Bytes"));    
//End of the line
$line=substr($line,0,strpos($line,"\n"));   
//Get rid of the whitespaces 
$bytes=preg_replace('/\s+/', ' ',$line);    
//Extracting only bytes downloaded
$bytes=substr($bytes,$start=strpos($bytes,' ')+1,strrpos($bytes,' ')-$start);
//Append the .CSV file  
file_put_contents('C:\xampp\htdocs\bwlog.csv',PHP_EOL.time().', '.$bytes,FILE_APPEND);
?>


3 commentaires

J'ai eu une nouvelle version à l'aide de Interface IP d'Interface NetSH Sous-interfaces , cela pourrait être plus précis. N'hésitez pas à le demander.


Salut Leopoldo, a quelque chose changé? J'ai essayé ceci sur Windows10. Télécharger des travaux, mais pas le téléchargement.


@Skuta merci pour votre commentaire. J'ai testé le script sous Windows 10. J'ai trouvé qu'il existe une limitation de fenêtres concernant la taille entière. Donc, si votre téléchargement ou votre téléchargement est assez grand, il échoue à essayer de lancer une chaîne en un numéro. Je l'ai réparé et j'ai mis à jour la réponse à l'aide de la commande netsh pour une mesure plus précise. Donnez-lui un essai et n'hésitez pas à demander si une autre solution est nécessaire.