J'utilise la commande ip link
sous Linux. Maintenant, je le veux sur Mac OS X, mais le terminal Mac OS X n'a pas ip
. Que devrais-je utiliser à la place?
Vous pouvez utiliser brew
pour installer iproute2mac
. C'est en fait un wrapper Python qui fournit une API très similaire que vous trouverez probablement très familier avec l'outil ip
inclus avec iproute2
sous Linux.
$ brew install iproute2mac
==> Installing iproute2mac from brona/homebrew-iproute2mac
==> Downloading https://github.com/brona/iproute2mac/archive/v1.0.3.Zip
######################################################################## 100.0%
???? /usr/local/Cellar/iproute2mac/1.0.3: 4 files, 24K, built in 2 seconds
Une fois installé, vous recevrez un outil de ligne de commande qui, à toutes fins utiles, imite la commande ip
sous Linux.
$ ip
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
ip -V
where OBJECT := { link | addr | route | neigh }
OPTIONS := { -4 | -6 }
iproute2mac
Homepage: https://github.com/brona/iproute2mac
This is CLI wrapper for basic network utilities on Mac OS X inspired with iproute2 on Linux systems.
Provided functionality is limited and command output is not fully compatible with iproute2.
For advanced usage use netstat, ifconfig, ndp, arp, route and networksetup directly.
Afficher les adresses IP sur l'interface en0.
$ ip addr show en0
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 54:46:12:fc:45:12
inet6 fe80::3636:3bff:fecf:1294/64 scopeid 0x4
inet 192.168.1.5/24 brd 192.168.1.255 en0
Afficher les détails sur le lien en1.
$ ip link show en1
en1: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
options=60<TSO4,TSO6>
ether 72:00:08:81:d2:10
media: autoselect <full-duplex>
status: inactive
Utilisez la commande normale pour les systèmes unix similaires à: ifconfig
.
(Linux utilise également ifconfig, mais certains outils ont des versions plus récentes. ip
est l’un de ceux-ci qui remplacera un jour l’ancien ifconfig.)
Il existe un moyen plus simple sans installer aucun outil:
$ which ifconfig
/sbin/ifconfig
$ ifconfig en0 | grep inet | grep -v inet6 | cut -d ' ' -f2
10.16.45.123
Il n'y a pas de commande ip sur Mac. Obtenez-le de la bière ou utilisez:
ifconfig en0| grep "inet[ ]" | awk '{print $2}'
Vous pouvez créer un alias dans ~/.bash_profile
comme suit:
alias ip-addr="ifconfig en0| grep \"inet[ ]\" | awk '{print \$2}'"