Aparte de ifconfig, ¿hay alguna aplicación/secuencia de comandos para OS X Lion que produzca resultados/información similares a ethtool ?
Específicamente, me gustaría poder consultar lo siguiente:
La salida de ethtool se ve así:
ajc@ajc-3] sudo ethtool eth0|grep Duplex ~
Duplex: Full
ajc@ajc-3] sudo ethtool eth0|grep Speed ~
Speed: 100Mb/s
ajc@ajc-3] sudo ethtool eth0|grep Link ~
Link detected: yes
ajc@ajc-3] sudo ethtool -i eth0 ~
driver: pcnet32
version: 1.32
firmware-version:
bus-info: 0000:00:03.0
Mis herramientas principales para leer los detalles de OSX en el hardware son system_profiler
y ioreg
. Para los detalles de la interfaz de red, ifconfig
es la mejor opción. Los dos primeros le mostrarán las rutas de conexión para el hardware, así como la información del controlador del software. En su ejemplo, los medios y el estado proporcionan la mayoría de los detalles que enumeró.
mac:~ me$ ifconfig en0
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=2b<RXCSUM,TXCSUM,VLAN_HWTAGGING,TSO4>
ether 00:1b:63:a8:33:33
inet6 fe80::21b:63ff:fea8:3333%en0 prefixlen 64 scopeid 0x4
inet 172.16.1.8 netmask 0xffffff00 broadcast 172.16.1.255
media: autoselect (100baseTX <full-duplex,flow-control>)
status: active
mac:~ me$ system_profiler|awk '/^Ethernet Cards/{c=15;next}c-->0'
ethernet:
Type: Ethernet Controller
Bus: PCI
Vendor ID: 0x10de
Device ID: 0x0ab0
Subsystem Vendor ID: 0x10de
Subsystem ID: 0xcb79
Revision ID: 0x00b1
BSD name: en0
Kext name: nvenet.kext
Location: /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/nvenet.kext
Version: 2.0.17
En su caso, está buscando Dúplex, Velocidad y Enlace, y en el hardware de Mac puede obtener todos esos datos ifconfig en0 | egrep [media|status]
como desee.
ethtool
simplemente agregando una declaración grep de la misma manera que lo hizo. ifconfig en0 | grep Media:
proporciona los mismos detalles que los primeros 3 de sus resultados de ethtool en un solo comando y sin ninguna información superflua.Tal vez networksetup pueda brindarle la información que está buscando:
networksetup -getinfo Ethernet
networksetup -getmedia Ethernet
NETWORKSETUP(8) Manual del administrador del sistema BSD NETWORKSETUP(8)
NAME networksetup: herramienta de configuración para la configuración de red en Preferencias del Sistema.
Pero no es realmente esbelto y puede brindarle menos información que ifconfig
Mezclaría ifconfig y networksetup:
ifconfig
alex@smiley:~|⇒ ifconfig en0 | grep status
status: active
Estado de la red
alex@smiley:~|⇒ networksetup -getinfo "Ethernet Adaptor (en0)"
DHCP Configuration
IP address: 192.168.1.11
Subnet mask: 255.255.255.0
Router: 192.168.1.1
Client ID:
IPv6: Automatic IPv6
IP address: none
IPv6 Router: none
Ethernet Address: 1c:6f:65:98:de:81
Extraiga las líneas que desee de ambas herramientas. Sería bastante fácil combinar las distintas líneas en un script simple para generar toda la información en conjunto.
Por favor cambie en0
a su nombre i/f
$ networksetup -getmedia en0
Current: autoselect
Active: 1000baseT <full-duplex>
Jaberg
AJ.