CodingBox 문서

NIC 도구와 진단: 서버에서 모듈 읽기

서버에는 show interface transceiver가 없지만 한 계층 아래에 같은 정보가 있습니다. NIC 드라이버가 모듈 EEPROM을 읽어 ethtool, 벤더 유틸리티를 통해 노출하며, Windows와 ESXi에서는 자체 명령을 통해 노출합니다. 이 페이지는 OS와 벤더별 도구, 각 도구가 보여주는 항목(식별 정보, DDM, FEC 카운터, 링크 상태, PCIe), 링크가 끊기거나 오류가 누적될 때 출력을 해석하는 방법을 정리합니다.

Linux: ethtool

명령표시 내용
ethtool eth0링크 상태, 속도, 듀플렉스, 자동 협상, 지원/광고 모드, 포트 유형(FIBRE/DA)
ethtool -m eth0(--module-info)디코딩된 EEPROM: 식별자, 벤더, PN, SN, 날짜, 컴플라이언스, 파장, 길이; 모듈에 있는 경우 DDM(온도, Vcc, 바이어스, Tx/Rx 파워, 임계값, 알람 플래그)
ethtool -m eth0 raw on hex on바이트 단위 비교를 위한 원시 A0h(및 A2h) 덤프(메모리 맵)
ethtool -m eth0 page 0x11 …(최신 버전)400G 이상 모듈의 CMIS 페이지
ethtool -i eth0드라이버, 버전, 펌웨어/NVM 버전, 버스 주소
ethtool -S eth0통계(CRC 오류 포함); 일부 드라이버에서는 FEC 정정/미정정 포함
ethtool --show-fec eth0 / --set-fec eth0 encoding rs설정된 FEC 모드와 활성 FEC 모드
ethtool -s eth0 speed 25000 duplex full autoneg off속도 강제 설정
ethtool -p eth0 5포트를 식별하기 위해 포트 LED 점멸
ethtool --show-priv-flags eth0드라이버별 플래그(예: link-down-on-close)

그 밖의 Linux 정보원: sfp, module, link로 필터링한 dmesg(모듈 검증에 관한 드라이버 메시지), lspci -vv -s <addr>(LnkSta의 PCIe 링크 폭/속도), ip -s link show eth0(카운터), /sys/class/net/eth0/(캐리어, 속도).

벤더 도구

벤더도구주요 용도
Nvidia / Mellanoxmlxlink -d <pci> -m -e -c모듈 정보와 DDM(-m), 아이 다이어그램/BER과 FEC(-e, -c), 링크 파트너; mlxlink … --fec_override, --speeds
Nvidia / Mellanoxmlxconfig -d <pci> q / set포트 유형(IB/ETH), 링크 유형, KEEP_ETH_LINK_UP, FEC 오버라이드, 브레이크아웃
Nvidia / Mellanoxmst status, mlxfwmanager장치 목록, 펌웨어
Nvidia / Mellanoxibstat, ibportstate, iblinkinfoInfiniBand 포트 상태, 폭, 속도(IB 패브릭)
Intelethtool -m기본 도구; Intel에는 전용 모듈 덤프 도구가 없음
Intelnvmupdate64e, epct64eNVM 펌웨어 업데이트; 포트 구성(E810 포트 옵션, 예: 2×100G 대 4×25G)
Inteldmesgixgbe/i40e/ice: unsupported module 메시지(광학 부품 호환성)
Broadcombnxtnvm, niccliNVM, 포트 설정, FEC/AN, 트랜시버 정보
Marvellqedctl
AMD Solarflaresfupdate, sfboot펌웨어, 포트 모드
Chelsiocxgbtool

Windows

명령표시 내용
Get-NetAdapter링크 상태, 속도
Get-NetAdapterAdvancedProperty -Name "Ethernet 2"속도/듀플렉스, FEC 모드, 점보 프레임 — Set-NetAdapterAdvancedProperty로 설정 가능
Get-NetAdapterHardwareInfoPCIe 슬롯, 링크 폭/속도
Get-NetAdapterStatistics카운터
Intel PROSet: Get-IntelNetAdapter, Get-IntelNetAdapterSettingIntel 전용 설정; 장치 관리자 → Link Speed 탭의 모듈 정보
Nvidia WinOF-2: mlx5cmd -Stat, mlxlink(Windows 빌드)모듈 정보와 링크 진단
이벤트 뷰어 → 시스템지원되지 않는 모듈에 관한 드라이버 메시지

Windows 드라이버는 DDM을 노출하는 경우가 드뭅니다; 벤더 도구를 사용하거나 벤치에서 모듈을 읽으십시오.

VMware ESXi

명령표시 내용
esxcli network nic list / get -n vmnic0링크, 속도, 드라이버, 펌웨어
esxcli network nic stats get -n vmnic0카운터
esxcli system module parameters list -m ixgben / set -m ixgben -p "…"지원되는 경우 드라이버 매개변수
esxcli intnet …(Intel 플러그인), esxcli mellanox … / mlxlink(Nvidia 플러그인)모듈 정보를 포함한 벤더 진단
vmkernel.log“unsupported module”, 링크 플랩
esxcli hardware pci listPCIe 링크 상태

출력 해석

관찰 내용의미다음 단계
ethtool -m: “Cannot get module EEPROM information: Operation not supported”드라이버가 노출하지 않거나, 포트에 모듈이 없거나, 모듈 I²C가 응답하지 않음dmesg 확인, 재장착, 다른 포트로 시도(읽기·쓰기 오류)
식별 정보는 읽히지만 Link detected: no, Rx 파워 정상속도/FEC/AN 불일치ethtool --show-fec, 스위치와 비교(FEC 및 AN)
Rx 파워 −40 dBm / “-inf”빛 없음광섬유, 반대쪽 끝, 극성(링크 없음)
바이어스와 Tx 파워는 정상, Rx는 한계치커넥터 오염, 긴 링크세정, 버짓 확인(Rx 파워와 버짓)
FEC 미정정 카운터 증가한계에 다다른 링크DDM 수준, 케이블 등급, 온도(VDM 및 FEC 지표)
1U 서버에서 온도 > 70 °C통풍재배치, OCP 슬롯(포트와 PCIe)
2×100G 카드에서 LnkSta: Speed 8GT/s, Width x8PCIe 병목슬롯/분기
dmesg: unsupported module드라이버 화이트리스트NIC의 광학 부품 호환성

서버에서 모니터링

  • ethtool -m 출력은 파싱 가능합니다; cron 작업이나 ethtool 컬렉터를 사용하는 노드 익스포터가 DDM을 Prometheus 방식 모니터링으로 내보냅니다(모니터링).
  • Nvidia mlxlink의 JSON 출력(--json)과 Intel ethtool -S의 FEC 카운터는 장애 전조 신호로 유용합니다(링크 신뢰성과 모니터링).
  • 폴링 간격은 30–60초면 충분합니다; DDM 자체는 아무리 빨라도 1초에 한 번 갱신됩니다.

CodingBox에서

ethtool -m raw on hex on과 CodingBox는 동일한 바이트를 읽습니다: 모듈이 NIC와 벤치에서 다르게 동작하면 두 덤프를 필드 단위로 비교하십시오 — 아무것도 다시 쓰지 않는 드라이버라면 동일한 데이터를 보여주며, 차이가 있다면 모듈 자체의 동적 페이지나 읽기 오류를 가리킵니다(Check transceiver, 도구로 DDM 읽기).


이 문서에서 부정확한 내용이나 오류를 발견하면 해당 부분을 선택하고 Ctrl+Enter를 눌러 해 주세요.