0 votes

Détermination de la carte réseau actuellement utilisée sur le CLI

Je travaille beaucoup sur des machines virtuelles, et j'ai plusieurs scripts pour m'aider à les configurer rapidement. Je pourrais entièrement automatiser la mise en route d'une VM sans tête, sauf que j'ai besoin de connaître l'IP de ma machine hôte pour configurer les trucs VNC.

J'utilise l'une des deux commandes suivantes pour obtenir l'adresse IP actuelle :

ipconfig getifaddr en1      # For IP address assigned to wireless
ipconfig getifaddr en0      # For IP address assigned to ethernet

Le problème est que je dois indiquer à mon script s'il doit utiliser en0 ou en1. J'utilise le sans fil à la maison et l'ethernet au travail, je ne peux donc pas faire d'hypothèse.

Je pourrais utiliser :

ifconfig | grep '192'

et analyser la ligne résultante (le travail et la maison attribuent des adresses de classe C), mais je préférerais ne pas avoir à le faire.

Existe-t-il un moyen de déterminer quelle carte réseau est actuellement connectée au réseau à partir de la ligne de commande ? Ou du moins un meilleur moyen de déterminer l'IP de l'hôte ?

Ma machine utilise Mountain Lion, si c'est pertinent.

1voto

8None1 Points 686

Je pense que votre problème est de déterminer "l'ordre de service". La magie de base que vous voyez se produire dans les Préférences Système > Réseau où le plus haut rang connecté Le service est trié sur le volet.

Ce site Conseils pour Mac OS Cet article traite d'un problème et d'une solution similaires.

0voto

flipdoubt Points 4140

Qu'en est-il

ifconfig -au|egrep "en\d:"|cut -d: -f1

ce qui vous montrera les noms de toutes les interfaces 'en' qui sont en état de fonctionnement.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X