3

ご挨拶、

特定のネットワーク上のすべてのコンピューターのリストを取得する方法が (C# または .bat ファイルで) 必要です。通常、私は「ネット ビュー」を使用しますが、これは (私の理解では) あなたのドメイン内でのみ機能する傾向があります。ネットワーク上で利用可能なすべてのコンピュータの名前 (または少なくとも IP アドレス) が必要です。

自分のものではないドメイン上のすべてのコンピューターを取得できる場合 (この場合、WORKGROUP を使用するか、デフォルトを使用します) も機能します。

4

4 に答える 4

7

これにはNmapが適しています。OS フィンガープリンティングには -O オプションを使用し、 xml としての出力には -oX "filename.xml" を使用して、C# から解析できるようにします。

適切なコマンドラインは次のようになります (192.168.0.0/24 はスキャンするサブネットです)。

nmap -O -oX "filename.xml" 192.168.0.0/24

OS を推測することに興味がない場合は、-O を省略してください。ping スイープだけが必要な場合は、-sP を使用するか、その他の無数のオプションについてドキュメントを参照してください。

于 2008-09-19T21:17:28.840 に答える
2

Unkwntechが言ったことを拡張するために-

「ブロードキャスト」pingを実行して、各IPアドレスに個別にpingを実行する必要をなくすこともできます。

その直後に、「arp」を使用してARPキャッシュを調べ、どのIPアドレスがどのMACアドレスにあるかのリストを取得できます。

于 2008-09-22T12:30:41.000 に答える
1

猛烈にすべてにpingを実行すると、システムの名前を特定するために応答するシステムからnetbios情報を取得できます。

于 2008-09-19T21:15:49.327 に答える
1

私の Web アプリの 1 つで、ネットワーク ブラウジングに NetApi32 関数を使用しました。

コード: http://gist.github.com/11668

于 2008-09-19T22:16:26.623 に答える