何らかの方法で破損する可能性があり、破損しない可能性があるUSB->イーサネットカードがあります。問題は、実際にテストする方法がわからないということです。また、通常のイーサネットポートもあるため、(すでにテスト済みの)ケーブルをあるポートから別のポートに接続できます。それではどうなりますか?
あるインターフェイスにNATを設定し、別のインターフェイスに接続しようとすることができますが、これは過度に見え、他の問題が発生する可能性があります。私は生のイーサネットフレームを送信し、相手がそれを受信しているかどうかを確認する方法が欲しいです。
私は少し見ましたが、netcat
TCP / UDPレベルで動作しますが、イーサネットフレームレベルで作業する必要があるようです。
このUSB->イーサネットアダプタをテストする最良の方法は何ですか?
ベストアンサー1
まず、このツールを使用してethtool
NICセルフテストを実行できます。
ethtool -t|--test DEVNAME Execute adapter self test
はい
$ sudo ethtool -t eth0
The test result is PASS
The test extra info:
Register test (offline) 0
Eeprom test (offline) 0
Interrupt test (offline) 0
Loopback test (offline) 0
Link test (on/offline) 0
NICの統計を表示することも、問題をさらに診断するのに役立ちます。
$ sudo ethtool -S eth0
NIC statistics:
rx_packets: 988097069
tx_packets: 589028032
rx_bytes: 1291674232357
tx_bytes: 116257143322
rx_broadcast: 210375
tx_broadcast: 34690
rx_multicast: 69184
tx_multicast: 179
rx_errors: 0
tx_errors: 0
tx_dropped: 0
multicast: 69184
collisions: 0
rx_length_errors: 0
rx_over_errors: 0
rx_crc_errors: 0
rx_frame_errors: 0
rx_no_buffer_count: 0
rx_missed_errors: 0
tx_aborted_errors: 0
tx_carrier_errors: 0
tx_fifo_errors: 0
tx_heartbeat_errors: 0
tx_window_errors: 0
tx_abort_late_coll: 0
tx_deferred_ok: 0
tx_single_coll_ok: 0
tx_multi_coll_ok: 0
tx_timeout_count: 0
tx_restart_queue: 346104
rx_long_length_errors: 0
rx_short_length_errors: 0
rx_align_errors: 0
tx_tcp_seg_good: 0
tx_tcp_seg_failed: 0
rx_flow_control_xon: 56
rx_flow_control_xoff: 56
tx_flow_control_xon: 0
tx_flow_control_xoff: 0
rx_long_byte_count: 1291674232357
rx_csum_offload_good: 987406053
rx_csum_offload_errors: 3730
rx_header_split: 0
alloc_rx_buff_failed: 0
tx_smbus: 0
rx_smbus: 0
dropped_smbus: 0
rx_dma_failed: 0
tx_dma_failed: 0
「error」文字列を含むすべての統計はゼロでなければなりません。そうでない場合は、これらの問題の原因が何であるかを追跡します。