10

ワイヤーの反対側にある接続されたデバイスの MAC アドレスを読み取りたいと思います。ワイヤで直接接続されている 2 つのデバイスがあるとします。最初のもの (DeviceX) には、イーサネット インターフェイスが既に構成されています (静的 IP ....)。2 つ目 (DeviceY) は DeviceX について何も知りませんが、物理的に接続されています。

DecviceY から DeviceX の MAC アドレスを読み取る方法はありますか? DeviceX が何らかのパケットで応答するような方法で、DeviceY から特定のパケットを送信することは可能ですか?

DeviceY のネットワーク API には自由にアクセスできますが、DeviceX については何もできません。

前もって感謝します。

4

2 に答える 2

9

同じ TCP/IP ローカル ネットワークに接続されたコンピュータは、互いの MAC アドレスを判別できます。TCP/IP に含まれるARP - アドレス解決プロトコルと呼ばれる技術がそれを可能にします。

Windows 端末から「arp -a」を実行すると、ARP エントリのリストが表示されます

ARP の詳細については、このリンクにアクセスしてください

____編集_____

@ arthur86 これは、デバイス X (ブロードキャスト) から「Gratuitious ARP」を送信することで実行できます。Gratuitous ARP 要求は AddressResolutionProtocol 要求パケットで、送信元 IP と宛先 IP の両方がパケットを発行するマシンの IP に設定され、宛先 MAC はブロードキャスト アドレス ff:ff:ff:ff:ff:ff です。

デバイス Y の arp キャッシュは、デバイス X の MAC で更新されます。arp キャッシュ エントリを使用して、デバイス Y はデバイス X の IP と MAC を取得できます。

Gratuitious ARP の詳細については、このリンクを確認してください。

于 2013-06-14T07:05:34.417 に答える