4 puntos por GN⁺ 2023-07-02 | 1 comentarios | Compartir por WhatsApp
  • Herramienta que muestra los resultados de ping en forma de gráfico y visualiza los tiempos de ping de varios hosts
  • Si se usa la bandera --cmd, en lugar de hacer ping a hosts muestra en un gráfico el tiempo de ejecución de comandos
  • Se ejecuta con el formato gping [host], y al usar --cmd se puede indicar como objetivo un comando como curl google.com
  • Soporta notación abreviada de regiones de nube como aws:eu-west-1 y aws:ca-central-1; por ahora solo aws es compatible
  • El rango mostrado en el gráfico, el intervalo de ejecución, la versión de IP, la interfaz de red, el modo gráfico, los colores y la eliminación del gráfico al terminar se pueden ajustar con opciones
    • El valor predeterminado de --watch-interval es 0.2 segundos para ping y 0.5 segundos para cmd
    • El valor predeterminado de --buffer es 30 segundos
    • --color admite el formato #RRGGBB y nombres de color predefinidos
  • Compatible con Windows, Mac y Linux, y ofrece rutas de instalación mediante Homebrew, MacPorts, Scoop, Chocolatey, Fedora COPR, Cargo, Arch Linux, Alpine Linux, Ubuntu/Debian, Gentoo, FreeBSD, Docker, Flox y gah
  • La instalación con Cargo requiere rustc 1.67.0 o superior

1 comentarios

 
GN⁺ 2023-07-02
Opiniones de Hacker News
  • Me gusta mucho que, si le pasás varios hosts al mismo tiempo, los dibuje en el mismo gráfico
    Por ejemplo, gping mydomain.com google.com es muy útil para verificar rápido si “¿el problema es mi Wi‑Fi o mi proveedor de hosting?”

    • mtr (Matt's traceroute) también es una gran herramienta para este uso
      No tiene salida gráfica, pero muestra conectividad, latencia, pérdida de paquetes y variabilidad para los hosts entre mi IP y el destino
      https://www.bitwizard.nl/mtr/
      En este hilo, el enlace que westurner mencionó antes: https://news.ycombinator.com/item?id=36549005
    • También se le pueden pasar comandos en vez de hosts. Por ejemplo, ejecutar curl google.com
  • mtr también realiza traceroute: https://en.wikipedia.org/wiki/MTR_(software)
    Se usa con frecuencia para solucionar problemas de red, y muestra la lista de routers por los que pasa, el tiempo promedio de ida y vuelta hasta cada router y la pérdida de paquetes, para poder identificar qué enlace entre routers causa la latencia o pérdida total
    Scapy tiene una función para hacer una visualización 3D con vpython de la ruta de un traceroute. En la universidad probé modificarla para ejecutar varios traceroute y superponer todas las rutas, y me preguntaba si una ruta concreta era estable a lo largo de toda la secuencia de paquetes de traceroute: https://scapy.readthedocs.io/en/latest/usage.html#tcp-tracer...
    Como forma de evitar ejecutar herramientas que requieren root para crear paquetes de capa 2, se puede usar setcap: setcap CAP_NET_RAW /use/bin/python-scapy
    ¿No será que traceroute une los puntos de forma inadecuada?

    • Estoy ejecutando mtr como exporter de Prometheus. Creo que estoy usando https://github.com/mgumz/mtr-exporter
      Lo tengo configurado para hacer traceroute a 1.1.1.1 y 8.8.8.8, y veo los gráficos en Prometheus
      Armé esta configuración después de que el internet de mi casa, donde está la computadora, estuvo muy inestable durante varios días
      También hice un video sobre los gráficos: https://video.nstr.no/w/hjTH3Vggn2fvpTrQitMmVP
    • Ese gráfico 3D es realmente impresionante. Dan ganas de hacerlo dibujar dinámicamente con un estilo casi futurista y usarlo como protector de pantalla
    • MTR ya hacía eso hace 30 años, así que no tengo claro qué se agregó acá. Aun así, voy a probar la exportación 3D; gracias por compartirlo
  • Me gusta el gráfico y el uso de varios hosts
    Como HTTPS es alcanzable en más lugares que ICMP, que suele bloquearse en los últimos saltos detrás de firewalls de datacenters, una función de bash que use gping + cmd + curl también podría ser bastante útil
    Las métricas de ICMP pueden ser engañosas: la mayoría de los sistemas operativos aplican rate limiting, y muchos routers tratan ICMP con baja prioridad según la carga de CPU del backplane, pero eso no está relacionado con su capacidad real de reenviar paquetes
    Si uso -4 con un host que tiene direcciones IPv4 e IPv6, parece que en pantalla muestra la dirección IPv4, pero en realidad hace ping a la dirección IPv6. ¿A alguien más le pasa? La versión es 1.8.0

  • Una herramienta vagamente relacionada: también es “ping con gráfico”, pero de otro tipo: https://github.com/denilsonsa/prettyping

  • Pedido de funcionalidad: sonido
    Hay raras ocasiones en las que uno está moviendo cables y necesita feedback. Para eso alguna vez hice una herramienta improvisada, pero básicamente era un wrapper tosco de ping
    Contemplen el poder de pingu: https://pastebin.com/qTfdZ7C8

    • La utilidad estándar ping ya tiene ping con sonido mediante -a. Emite la campana de la terminal con cada respuesta
    • ¿Podrías agregar esta sugerencia como issue en GitHub? Me gusta y puedo revisar bien si es posible añadirla
  • Relacionado y muy importante: https://www.cloudflare.com/learning/network-layer/what-is-mt...
    Es imprescindible entender qué muestra realmente MTR y por qué

  • Me gusta gping, pero me gustaría que hubiera información más detallada o una manpage
    La documentación incluida no explica mucho. Por ejemplo, es difícil saber qué es t/o y cómo se calculan los valores, y la página de GitHub tampoco ayuda demasiado

    • Sí, esto es algo que definitivamente quiero mejorar. Como el proyecto terminó usándose mucho más de lo que esperaba, la documentación quedó un poco corta
      Como referencia, t/o significa timeouts
  • Cosas para ver junto con esto: ministat, gnuplot, https://www.brendangregg.com/dtkshdemos.html

  • Extraño bing, que no era un motor de búsqueda sino una “herramienta probabilística de medición de ancho de banda”
    Podía indicar el ancho de banda entre dos enlaces de red arbitrarios, independientemente del ancho de banda limitado entre uno y el destino. Yo estaba conectado a varios saltos de distancia por un enlace de módem de 33.6 Kbps y aun así podía medir la velocidad de enlaces backbone T-3 u OC-48
    Parece que no duró mucho y fue abandonado, y las distribuciones populares de Linux también dejaron de ofrecer el paquete. No conozco otra herramienta que pueda hacer la misma medición

  • En los viejos tiempos antes de IPv6, el geoip de IPv4 funcionaba bastante bien, y en Windows había una herramienta parecida a traceroute llamada NeoTrace Pro que podía mostrar IPs en un mapa
    Según recuerdo, también incluía una especie de mapa de ping que volvía a hacer ping a cada equipo intermedio
    Hoy en día no todos los equipos intermedios responden, y hay demasiados overlays de operadoras y gestión de flujos con SDN como para que una IP se pueda mapear a una ubicación física específica. No es como aquella época de telefonía fija en la que las empresas pequeñas compraban un Class C y ponían el teléfono de la empresa en la base de datos de ARIN

    • ¿Era una herramienta parecida a pingplotter?