Skip to main content

NIC / ethtool diagnostics

v0.1.1

Inspect physical network interface cards via ethtool: driver and firmware versions across every NIC (the "what firmware is my i40e fleet running?" check), plus per-interface link settings, hardware counters, offload features, and ring-buffer sizes. Read-only — no ethtool SET operations.

6 allowed by default
Pack ID
nic
Vendor
emisar
OS
linux
Actions
6
Required binaries. Install these on the host before relying on the pack — an action that calls a missing one fails at run time.
ethtool

Install

emisar pack install fetches this pack, re-validates it, and verifies its content hash against the --hash below — the exact bytes this page was rendered against, so a tampered copy is rejected — before copying it into the runner's packs dir. The command reloads a running daemon itself; no manual restart.

on the runner host
sudo emisar pack install nic --hash sha256:fe4e1d8a7e8633d57d95197103c8260d7b1273106595bae24c70efcacf65956d

Actions 6 total

View on GitHub
  • nic.driver_info exec low

    ethtool -i <iface>

    Show full driver info for one NIC — driver, driver version, firmware-version, expansion-ROM version, bus-info, and the supports-* capability flags.

    View source on GitHub
  • nic.features exec low

    ethtool -k <iface>

    Show offload feature state for one NIC — checksum offload, GRO/GSO/TSO, scatter-gather, RX/TX hashing, and which are fixed vs tunable. Useful when chasing throughput or checksum-related issues.

    View source on GitHub
  • nic.firmware exec low

    NIC driver + firmware versions (all interfaces)

    List driver, driver version, firmware-version, and PCI bus address for every physical NIC on the host — one line each, from `ethtool -i`. Optionally filter to a single driver (e.g. i40e). The fleet "what firmware is each NIC running?" check.

    View source on GitHub
  • nic.link exec low

    ethtool <iface>

    Show link settings for one NIC — negotiated speed and duplex, autoneg, port/medium, and the link-detected flag. The "is this NIC up and at the speed I expect?" check.

    View source on GitHub
  • nic.ring exec low

    ethtool -g <iface>

    Show RX/TX ring-buffer sizes for one NIC — the hardware preset maximums and the current settings. Small rings under bursty load show up as rx_dropped in nic.stats.

    View source on GitHub
  • nic.stats exec low

    ethtool -S <iface>

    Show hardware + driver counters for one NIC — per-queue and total rx/tx packets, bytes, errors, drops, and discards. The place to look for packet loss that ip/ifconfig counters don't break out.

    View source on GitHub