2008年3月27日木曜日

特定のマシンの MAC アドレスを得る方法

[http://www.nsoftware.com/kb/showentry.aspx?entry=09260713]

該当製品:


  • IP*Works!

現象:


特定のマシンの MAC アドレスを取得するにはどうすれば良いでしょうか?

解決法:


まず、IPInfo コンポーネントの GetMAC メソッドを用いる方法があります。
string macaddress = ipinfo.GetMAC("10.0.1.1");

【訳註: GetMAC メソッドは Windows 製品でのみ利用可能です。また、取得可能な対象は、同一 LAN 上の同一サブネットに属する機器に限定されます。】

別の方法としては、SNMP を用いる方法があります。この場合はまず相手デバイス上のインターフェイス数を get リクエストで取得します (ifEntryNum - 1.3.6.1.2.1.2.1)。次に各インターフェイスに対してその MAC アドレスを get リクエストで取得します (ifPhysAddress - 1.3.6.1.2.1.2.2.1.6)。この方法を使う場合、(ifEntry テーブルには幾つか子ノードを持っており) 当該インターフェイスについて MAC アドレス以外にも当該デバイスのタイプ (ifEntryType - 1.3.6.1.2.1.2.2.1.3) 等様々な情報を取得することができます。

0 件のコメント: