Công cụ và chẩn đoán NIC: đọc module từ server
Máy chủ không có lệnh show interface transceiver, nhưng vẫn có cùng thông tin đó ở một lớp thấp hơn: driver của NIC đọc EEPROM của module và trình bày nó qua ethtool, các tiện ích của nhà sản xuất và, trên Windows và ESXi, qua các lệnh riêng của chúng. Trang này liệt kê các công cụ theo từng hệ điều hành và nhà sản xuất, những gì mỗi công cụ hiển thị (thông tin nhận dạng, DDM, bộ đếm FEC, trạng thái liên kết, PCIe), và cách diễn giải kết quả khi liên kết bị down hoặc lỗi tích lũy.
| Lệnh | Hiển thị |
|---|
ethtool eth0 | trạng thái liên kết, tốc độ, duplex, tự động đàm phán, các chế độ được hỗ trợ/được quảng bá, loại cổng (FIBRE/DA) |
ethtool -m eth0 (--module-info) | EEPROM đã giải mã: mã nhận dạng, nhà sản xuất, PN, SN, ngày, mã tuân thủ, bước sóng, các chiều dài; DDM (nhiệt độ, Vcc, dòng phân cực, công suất Tx/Rx, ngưỡng, cờ báo động) nếu module có |
ethtool -m eth0 raw on hex on | dump thô A0h (và A2h) để so sánh từng byte (Bản đồ bộ nhớ) |
ethtool -m eth0 page 0x11 … (bản mới hơn) | các trang CMIS trên module 400G trở lên |
ethtool -i eth0 | driver, phiên bản, phiên bản firmware/NVM, địa chỉ bus |
ethtool -S eth0 | thống kê gồm cả lỗi CRC, FEC đã sửa/không sửa được trên một số driver |
ethtool --show-fec eth0 / --set-fec eth0 encoding rs | chế độ FEC đã cấu hình và đang hoạt động |
ethtool -s eth0 speed 25000 duplex full autoneg off | ép tốc độ |
ethtool -p eth0 5 | nháy đèn LED cổng để nhận diện cổng |
ethtool --show-priv-flags eth0 | các cờ riêng của driver (ví dụ link-down-on-close) |
Nguồn khác trên Linux: dmesg lọc theo sfp, module và link (thông báo của driver về việc kiểm định module), lspci -vv -s <addr> (độ rộng/tốc độ liên kết PCIe dưới LnkSta), ip -s link show eth0 (bộ đếm), /sys/class/net/eth0/ (carrier, tốc độ).
Công cụ của nhà sản xuất
| Nhà sản xuất | Công cụ | Công dụng chính |
|---|
| Nvidia / Mellanox | mlxlink -d <pci> -m -e -c | thông tin module và DDM (-m), eye/BER và FEC (-e, -c), link partner; mlxlink … --fec_override, --speeds |
| Nvidia / Mellanox | mlxconfig -d <pci> q / set | loại cổng (IB/ETH), loại liên kết, KEEP_ETH_LINK_UP, ghi đè FEC, breakout |
| Nvidia / Mellanox | mst status, mlxfwmanager | danh sách thiết bị, firmware |
| Nvidia / Mellanox | ibstat, ibportstate, iblinkinfo | trạng thái, độ rộng, tốc độ cổng InfiniBand (IB fabric) |
| Intel | ethtool -m | công cụ chính; Intel không có công cụ dump module riêng |
| Intel | nvmupdate64e, epct64e | cập nhật firmware NVM; cấu hình cổng (tùy chọn cổng E810, ví dụ 2×100G so với 4×25G) |
| Intel | dmesg | thông báo ixgbe/i40e/ice: unsupported module (Tính tương thích quang học) |
| Broadcom | bnxtnvm, niccli | NVM, thiết lập cổng, FEC/AN, thông tin transceiver |
| Marvell | qedctl | — |
| AMD Solarflare | sfupdate, sfboot | firmware, chế độ cổng |
| Chelsio | cxgbtool | — |
Windows
| Lệnh | Hiển thị |
|---|
Get-NetAdapter | trạng thái liên kết, tốc độ |
Get-NetAdapterAdvancedProperty -Name "Ethernet 2" | tốc độ/duplex, chế độ FEC, jumbo — đặt được bằng Set-NetAdapterAdvancedProperty |
Get-NetAdapterHardwareInfo | khe PCIe, độ rộng/tốc độ liên kết |
Get-NetAdapterStatistics | bộ đếm |
Intel PROSet: Get-IntelNetAdapter, Get-IntelNetAdapterSetting | thiết lập riêng của Intel; thông tin module trong Device Manager → thẻ Link Speed |
Nvidia WinOF-2: mlx5cmd -Stat, mlxlink (bản Windows) | thông tin module và chẩn đoán liên kết |
| Event Viewer → System | thông báo của driver về module không được hỗ trợ |
Driver trên Windows hiếm khi hiển thị DDM; hãy dùng công cụ của nhà sản xuất hoặc đọc module trên bàn thử.
VMware ESXi
| Lệnh | Hiển thị |
|---|
esxcli network nic list / get -n vmnic0 | liên kết, tốc độ, driver, firmware |
esxcli network nic stats get -n vmnic0 | bộ đếm |
esxcli system module parameters list -m ixgben / set -m ixgben -p "…" | tham số driver ở nơi được hỗ trợ |
esxcli intnet … (plugin Intel), esxcli mellanox … / mlxlink (plugin Nvidia) | chẩn đoán của nhà sản xuất gồm cả thông tin module |
vmkernel.log | “unsupported module”, liên kết chập chờn |
esxcli hardware pci list | trạng thái liên kết PCIe |
Đọc hiểu kết quả
| Quan sát | Ý nghĩa | Tiếp theo |
|---|
ethtool -m: “Cannot get module EEPROM information: Operation not supported” | driver không hiển thị, cổng không có module, hoặc module không phản hồi I²C | kiểm tra dmesg, cắm lại, thử cổng khác (Lỗi đọc & ghi) |
Thông tin nhận dạng đọc được, Link detected: no, công suất Rx bình thường | lệch tốc độ/FEC/AN | ethtool --show-fec, so sánh với switch (FEC & AN) |
| Công suất Rx −40 dBm / “-inf” | không có ánh sáng | sợi quang, đầu xa, cực tính (Không có liên kết) |
| Dòng phân cực và công suất Tx bình thường, Rx cận ngưỡng | đầu nối bẩn, liên kết dài | vệ sinh, quỹ công suất (Công suất Rx & quỹ công suất) |
| Bộ đếm FEC không sửa được tăng | liên kết ở giới hạn | mức DDM, cấp cáp, nhiệt độ (Số liệu VDM & FEC) |
| Nhiệt độ > 70 °C trong máy chủ 1U | luồng khí | đổi vị trí, khe OCP (Cổng & PCIe) |
LnkSta: Speed 8GT/s, Width x8 trên card 2×100G | nghẽn cổ chai PCIe | khe cắm/bifurcation |
dmesg: unsupported module | danh sách cho phép của driver | Tính tương thích quang học trên NIC |
Giám sát từ máy chủ
- Kết quả của
ethtool -m có thể phân tích cú pháp được; một cron job hoặc node exporter với collector ethtool xuất DDM sang hệ thống giám sát kiểu Prometheus (Giám sát). - Kết quả JSON của
mlxlink bên Nvidia (--json) và bộ đếm FEC của ethtool -S bên Intel là tín hiệu cảnh báo sớm tốt trước khi hỏng (Độ tin cậy & giám sát liên kết). - Chu kỳ lấy mẫu 30–60 s là đủ; bản thân DDM cập nhật nhiều nhất mỗi giây một lần.
Trong CodingBox
ethtool -m raw on hex on và CodingBox đọc cùng các byte: khi một module hoạt động khác nhau trên NIC và trên bàn thử, hãy so sánh hai bản dump theo từng trường — driver nào không ghi đè gì sẽ cho ra dữ liệu giống hệt nhau, và bất kỳ khác biệt nào cũng chỉ tới các trang động riêng của module hoặc một lỗi đọc (Check transceiver, Đọc DDM bằng công cụ).