0

ネットワーク アダプタの永続的な (焼き付けられた) MAC アドレスを読み取る必要があります。MACアドレスは簡単に偽装できるので、EEPROMに書かれている本物を読み取る必要があります。LinuxでC++を使用して行う必要があります。

非常に優れたethtoolを使用してみましたが、問題なく動作します。ただし、一部のシステムでは、意図したとおりに機能しません。

ethtool -P eth0

これを返します:

Permanent address: 00:00:00:00:00:00

ethtool -e eth0

これを返します:

Cannot get EEPROM data: Operation not supported

ネットワーク アダプタには次の情報があります。

  • ドライバー: ucc_geth
  • バージョン: 1.1
  • ファームウェアバージョン: N/A
  • バス情報:QUICC ENGINE

Linux カーネルのバージョン: 2.6.32.13

質問: この問題を更新 (ドライバー、カーネルなど) で修正できますか?

ioctlさらに、 C++ の関数で同じ ethtool 呼び出しを行います。コード内でこれを修正する方法はありますか? または、EEPROM から永続的な MAC アドレスを取得する他の方法はありますか?

4

2 に答える 2

1

まだ答えが見つからない場合は、これを確認してください。

https://serverfault.com/questions/316976/can-i-get-the-original-mac-address-after-it-has-been-changed

于 2014-06-17T08:25:46.723 に答える
0

いくつかのことを見てください。

  1. この NIC から送信されたワイヤ上のパケットを (スニファを使用して) 調べ、使用されている MAC アドレスを確認します。
  2. 「ifconfig -a eth0」の出力を見てください。MAC アドレスが回線上のものと同じである場合、ifconfig が使用するメカニズムを使用してその MAC アドレスを取得できます。
于 2013-09-05T08:07:47.593 に答える