Comment utiliser la commande Netstat sur Mac

Table des matières:

Comment utiliser la commande Netstat sur Mac
Comment utiliser la commande Netstat sur Mac
Anonim

Ce qu'il faut savoir

  • Pour exécuter netstat et voir des données détaillées sur le réseau de votre Mac, ouvrez une nouvelle fenêtre Terminal, tapez netstat et appuyez surEntrée.
  • Limiter la sortie de netstat avec des drapeaux et des options. Pour voir les options disponibles de netstat, tapez man netstat à l'invite de commande.
  • Utilisez la commande lsof pour compenser les fonctionnalités manquantes ou limitées de netstat, y compris l'affichage de tous les fichiers actuellement ouverts dans toutes les applications.

Cet article explique comment exécuter la commande netstat Terminal dans macOS afin que vous puissiez voir des informations détaillées sur les communications réseau de votre Mac, y compris la façon dont votre Mac communique avec le monde extérieur, sur tous les ports et toutes les applications.

Comment exécuter Netstat

Apprendre à utiliser netstat peut vous aider à comprendre les connexions que votre ordinateur établit et pourquoi. La commande netstat est disponible sur Mac par défaut. Vous n'avez pas besoin de le télécharger ou de l'installer.

Pour lancer netstat:

  1. Aller à Finder > Go > Utilitaires.

    Image
    Image
  2. Double-cliquez sur Terminal.

    Image
    Image
  3. Dans la nouvelle fenêtre du terminal, tapez netstat et appuyez sur Return (ou Enter) pour exécuter la commande.

    Image
    Image
  4. Une énorme quantité de texte commencera à défiler sur votre écran. Si vous n'utilisez aucun des indicateurs disponibles (voir ci-dessous), netstat signale les connexions réseau actives sur votre Mac. Compte tenu du nombre de fonctions exécutées par un périphérique réseau moderne, vous pouvez vous attendre à ce que la liste soit longue. Un rapport standard peut contenir plus de 1 000 lignes.

    Image
    Image

Drapeaux et options Netstat

Le filtrage de la sortie de netstat est essentiel pour comprendre ce qui se passe sur les ports actifs de votre Mac. Les drapeaux intégrés de Netstat vous permettent de définir des options, limitant la portée de la commande.

Pour voir toutes les options disponibles de netstat, tapez man netstat à l'invite de commande pour afficher la page man de netstat (abréviation de "manuel"). Vous pouvez également consulter une version en ligne de la page de manuel de netstat.

Syntaxe

Il est important de noter que netstat sur macOS ne fonctionne pas de la même manière que netstat sur Windows et Linux. L'utilisation de drapeaux ou de la syntaxe de ces implémentations de netstat peut ne pas entraîner le comportement attendu.

Pour ajouter des indicateurs et des options à netstat sur macOS, utilisez la syntaxe suivante:

netstat [-AabdgiLlmnqrRsSvWx] [-c queue] [-f adresse_famille] [-I interface] [-p protocole] [-w attente]

Si le raccourci ci-dessus semble complètement incompréhensible, apprenez à lire la syntaxe de la commande.

Drapeaux utiles

Voici quelques-uns des drapeaux les plus couramment utilisés:

  • - a inclut les ports du serveur dans la sortie de netstat, qui ne sont pas inclus dans la sortie par défaut.
  • - g affiche les informations associées aux connexions multidiffusion.
  • L'interface

  • - I fournit des paquets de données pour l'interface spécifiée. Toutes les interfaces disponibles peuvent être visualisées avec le drapeau - i, mais en0 est généralement l'interface réseau sortante par défaut. (Notez la lettre minuscule.)
  • - n supprime l'étiquette des adresses distantes avec des noms. Cela accélère la sortie de netstat tout en éliminant uniquement les informations limitées.
  • - p protocol répertorie le trafic associé à un protocole réseau spécifique. La liste complète des protocoles est disponible sur /etc/protocols, mais les plus importants sont udp et tcp.
  • - r affiche la table de routage, montrant comment les paquets sont routés sur le réseau.
  • - s affiche les statistiques du réseau pour tous les protocoles, qu'ils soient actifs ou non.
  • - v augmente la verbosité, notamment en ajoutant une colonne indiquant l'ID de processus (PID) associé à chaque port ouvert.

Exemples Netstat

Considérez ces exemples:

netstat -apv TCP

Cette commande renvoie uniquement les connexions TCP sur votre Mac, y compris les ports ouverts et les ports actifs. Il utilise également une sortie détaillée, répertoriant les PID associés à chaque connexion.

netstat -a | grep -i "écouter"

Cette combinaison de netstat et grep révèle les ports ouverts, qui sont les ports qui écoutent un message. Le caractère pipe | envoie la sortie d'une commande à une autre commande. Ici, la sortie de netstat redirige vers grep, vous permettant de rechercher le mot-clé "listen" et de trouver les résultats.

Accéder à Netstat via Network Utility

Vous pouvez également accéder à certaines fonctionnalités de netstat via l'application Network Utility, qui est incluse dans les versions macOS jusqu'à Catalina (elle n'est pas incluse dans Big Sur).

Pour accéder à Network Utility, tapez Network Utility dans Spotlight Search pour lancer l'application, puis sélectionnez l'onglet Netstat pour accéder à l'onglet interface graphique.

Image
Image

Les options de Network Utility sont plus limitées que celles disponibles via la ligne de commande. Chacune des quatre sélections de boutons radio exécute une commande netstat prédéfinie et affiche la sortie.

Les commandes netstat pour chaque bouton radio sont les suivantes:

  • Afficher les informations de la table de routage exécute netstat -r.
  • Afficher des statistiques réseau complètes pour chaque protocole runs netstat -s.
  • Afficher les informations de multidiffusion s'exécute netstat -g.
  • Afficher l'état de toutes les connexions socket actuelles s'exécute netstat.
Image
Image

Compléter Netstat avec Lsof

L'implémentation macOS de netstat n'inclut pas la plupart des fonctionnalités que les utilisateurs attendent et dont ils ont besoin. Bien qu'il ait ses utilisations, netstat n'est pas aussi utile sur macOS que sur Windows. Une commande différente, lsof, remplace la plupart des fonctionnalités manquantes.

Lsof affiche les fichiers actuellement ouverts dans les applications. Vous pouvez également l'utiliser pour inspecter les ports ouverts associés à l'application. Exécutez lsof -i pour voir la liste des applications communiquant sur Internet. C'est généralement l'objectif lors de l'utilisation de netstat sur des machines Windows; cependant, le seul moyen significatif d'accomplir cette tâche sur macOS n'est pas avec netstat, mais avec lsof.

Image
Image

Lsof Flags and Options

L'affichage de chaque fichier ouvert ou connexion Internet est généralement détaillé. C'est pourquoi lsof est livré avec des drapeaux pour restreindre les résultats avec des critères spécifiques. Les plus importants sont ci-dessous.

Pour plus d'informations sur les drapeaux et les explications techniques de chacun, consultez la page de manuel de lsof ou exécutez man lsof à l'invite du terminal.

  • - i affiche les connexions réseau ouvertes et le nom du processus qui utilise la connexion. L'ajout d'un 4, comme dans - i4, affiche uniquement les connexions IPv4. L'ajout d'un 6 à la place (- i6) affiche uniquement les connexions IPv6.
  • Le drapeau - i peut également être étendu pour spécifier plus de détails. -iTCP ou -iUDP renvoie uniquement les connexions TCP et UDP. -iTCP:25 renvoie uniquement les connexions TCP sur le port 25. Une plage de ports peut être spécifiée avec un tiret, car il -iTCP:25-50.
  • Using [email protected] renvoie uniquement les connexions à l'adresse IPv4 1.2.3.4. Les adresses IPv6 peuvent être spécifiées de la même manière. Le précurseur @ peut également être utilisé pour spécifier des noms d'hôte de la même manière, mais les adresses IP distantes et les noms d'hôte ne peuvent pas être utilisés simultanément.
  • - s force typiquement lsof à afficher la taille du fichier. Mais lorsqu'il est associé au drapeau - i, - s fonctionne différemment. Au lieu de cela, il permet à l'utilisateur de spécifier le protocole et l'état de la commande à renvoyer.
  • - p restreint lsof à un ID de processus particulier (PID). Plusieurs PID peuvent être définis en utilisant des communs, tels que -p 123, 456, 789. Les ID de processus peuvent également être exclus avec un ^, comme dans 123, ^456, ce qui exclurait spécifiquement le PID 456.
  • - P désactive la conversion des numéros de port en noms de port, accélérant ainsi la sortie.
  • - n désactive la conversion des numéros de réseau en noms d'hôte. Lorsqu'il est utilisé avec - P ci-dessus, il peut considérablement accélérer la sortie de lsof.
  • - u l'utilisateur ne renvoie que les commandes appartenant à l'utilisateur nommé.

lsof Exemples

Voici quelques façons d'utiliser lsof.

lsof -nP [email protected]:513

Cette commande d'apparence complexe liste les connexions TCP avec le nom d'hôte lsof.itap et le port 513. Elle exécute également lsof sans connecter les noms aux adresses IP et aux ports, ce qui accélère sensiblement l'exécution de la commande.

lsof -iTCP -sTCP:LISTEN

Cette commande renvoie chaque connexion TCP avec le statut LISTEN, révélant les ports TCP ouverts sur le Mac. Il répertorie également les processus associés à ces ports ouverts. Il s'agit d'une mise à niveau significative par rapport à netstat, qui répertorie au maximum les PID.

Image
Image

sudo lsof -i -u^$(whoami)

Image
Image

Autres commandes réseau

Les autres commandes de mise en réseau du terminal qui pourraient être intéressantes pour examiner votre réseau incluent arp, ping et ipconfig.

Conseillé: