3

C#で外部IPのMACアドレスを取得する方法は? たとえば、「204.13.153.34」の MAC アドレスを見つけたいですか?

アイデアやコード スニペットは大歓迎です。前もって感謝します

4

4 に答える 4

3

アドレス解決プロトコルについて読む必要があります。

別のネットワーク セグメントにあるマシンの MAC アドレスを特定することはできません。ARP を使用すると、マシンがたまたま同じセグメントにある場合に、特定の IP アドレスの MAC アドレスを把握できます。それが IP スタックが行っていることです。イーサネットカードはMACアドレスしか知らないため、パケットの処理に責任を持つARP経由で「ネット」にIPアドレスを要求します。

于 2010-07-15T09:26:54.540 に答える
1

あなたがそれをあなたに送る相手に何かを書かない限り、それは可能ではないと思いますか?

編集:

これは、 MACアドレスの取得に役立つ可能性があるようです

編集:ユーザーの外部MACアドレスは、ローカルLANアクセスがないと取得できません...ただし、クライアントがphpサーバーに直接接続されている場合にのみ(ルーターがある場合)、適切なARPテーブルにアクセスできます。トラフィックをNATするゲートウェイ、返されるMACアドレスはゲートウェイのアドレスになります) - ソース

PHPについて説明していますが、プリンシパルはC#でも同じです。

于 2010-07-15T09:21:15.150 に答える
0

TCP/IP (Address Resolution Protocol の略) の一部であるarpコマンドがありますが、LAN 経由でのみ機能します。

インターネット上でやりたいことができるとは思えません。最初のノードの MAC を取得するだけです。

于 2010-07-15T09:28:37.457 に答える