8 votos

Buscando un comando para mostrar el uso de la red en MacOS

ifconfig se puede utilizar en linux para comprobar los bytes de red transferidos en cada interfaz como se indica a continuación:

eth0      Link encap:Ethernet  HWaddr 02:42:ac:11:00:05  
          inet addr:172.17.0.5  Bcast:172.17.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:20782 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16290 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:28527924 (28.5 MB)  TX bytes:1386216 (1.3 MB)

los bytes RX y los bytes TX muestra los datos actuales transferidos en el eth0 interfaz. Sin embargo, el ifconfig en Mac no me muestra esta información.

¿Existe un comando equivalente en Mac? Estoy buscando un comando nativo sin necesidad de instalar una biblioteca de terceros.

7voto

ProGrammer Puntos 64

Por supuesto que sí.
Iba a sugerir la alternativa de la GUI, a través del Utilidad de la red Ficha de información o la Option + Click en el icono de WiFi en la barra de menús para que aparezcan las estadísticas actuales. Un conjunto de pasos fáciles de seguir que están bien documentados en este artículo .

Sin embargo, está pidiendo un "comando nativo" y, por lo tanto, está interesado en lo siguiente:

  • Comando: netstat -i : contiene Incoming y Outgoing Los paquetes (otro nombre para RX y TX ). Por defecto, cada interfaz devuelve sus datos, pero se puede limitar fácilmente utilizando netstat -i | grep en0 .
  • Comando: netstat -I en1 (nótese la mayúscula -I ) producirá una salida sólo para esa interfaz especificada (aquí, en0 ). Se trata de un enfoque más directo que no requiere un filtrado posterior como el grep operación de arriba.

Hágame saber si tiene éxito con alguna combinación de las anteriores, o si hay algo que no entienda/quiera perfeccionar.


Explicación adicional
En un comentario, mencionas que ves tres líneas de salida cuando consultas la interfaz usando netstat -I y pregunte cómo manejar esos datos. Todos son los mismos valores porque se vinculan a la misma interfaz, leer sólo una línea (normalmente el primero) y no los agregues todos juntos como usted sugirió.

¿Por qué?
En la salida del Terminal, esas 3 líneas se refieren a la misma interfaz porque hay varias direcciones asociadas a ella. En términos sencillos, es muy parecido a tener varios números de teléfono que desvían sus llamadas a tu teléfono móvil en lugar de sonar en su ubicación física.

En mi caso (en un iMac, consultando en1 ), la primera línea de Dirección muestra la dirección MAC de mi tarjeta de red (ethernet). La cual es típicamente referida como la más confiable de las tres entradas porque está codificada y es única para la propia tarjeta de red (por lo tanto no cambiará a menos que la unidad física sea reemplazada).
La segunda línea está (al menos en mi caso) asociada a una IPv6, mientras que la tercera es una dirección IPv4. Estas son susceptibles de cambiar dependiendo de la configuración de tu red y de tu ubicación. Por eso la primera línea suele ser la más fiable de todas. Piensa en la línea 1 como tu teléfono móvil al que las líneas 2 y 3 desvían las llamadas - también es la única entrada con error ( Ierrs y Oerrs ) de registro.

¿Por qué los errores sólo se registran allí?
Bueno, piensa que es una referencia/acceso directo, si sólo son eso (conexiones lógicas), no existen físicamente - la única interfaz física es donde reside la dirección MAC y, por tanto, el único lugar donde se verifican los paquetes y se informa de los errores.

Espero que eso tenga sentido, sé que sólo buscabas el procedimiento en la parte superior, pero pensé que un poco de explicación no haría daño. ¿Es eso útil de alguna manera?

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X