Risposte:
Puoi usare brew
per installare iproute2mac
. In realtà è un wrapper Python che fornisce un'API molto simile che probabilmente troverai molto familiare allo ip
strumento incluso iproute2
in 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
Una volta installato ti verrà dato uno strumento da riga di comando che a tutti gli effetti imita il ip
comando su 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.
Mostra gli indirizzi IP sull'interfaccia 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
Mostra i dettagli sul link 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
Utilizzare il comando normale per unix come i sistemi: ifconfig
.
(Linux usa anche ifconfig, ma alcuni degli strumenti hanno versioni più recenti. ip
È uno di questi che un giorno sostituirà il vecchio ifconfig.)
vconfig add n0 42
(configura VLAN 42 per l'interfaccia di rete EN0) seguito da qualcosa del genere ifconfig en0.5 1.2.3.3 netmask 255.255.128.0 broadcast 1.2.3.255 up
.
ifconfig
genera molte linee non necessarie. Se l'IP è tutto ciò che ti serve, ifconfig | grep inet
invece.
Esiste un modo più semplice senza installare strumenti:
$ which ifconfig
/sbin/ifconfig
$ ifconfig en0 | grep inet | grep -v inet6 | cut -d ' ' -f2
10.16.45.123