人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

ネットワーク内にあるデバイスを探すツールを作りたいと考えています。

Webカメラなどについていて、ネットワーク内の自社製カメラのIPアドレスを表示してくれるツールと同じようなことを実現したいです。

探したいデバイスは、自作または既製品です。

自分なりに考えると、ブロードキャストアドレスとかをうまく使うのかと思いますが、それをどうやってプログラムすれば実現するのか検討がつきません。

どなたかヒントでもいいのでアドバイスください。
言語はC#がベストですが、他の言語(Java、C、VB、Perl、Python、Ruby)でも構いません。

自作のデバイスは、WindowsXp上で動くWindowsサービスです。
このサービスに実装すべきもの(あるプロトコルに応答できるようにするとか)も提示してもらえると助かります。

●質問者: toruuetani
●カテゴリ:コンピュータ インターネット
✍キーワード:C# IPアドレス Java Perl Python
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● garyo
●15ポイント

SNMP(Simple Network Management Protocol)をキーワードに探すといいと思います。

@IT:監視を自動化するSNMP(1)

http://www.atmarkit.co.jp/fnetwork/rensai/snmp01/01.html

Rubyで超お手軽SNMP!

http://members.at.infoseek.co.jp/m6809/index-j.html

◎質問者からの返答

回答ありがとうございます。

SNMPはすでに使用してします。ただ、今回の目的はIPアドレスが不明なので、SNMPだとどうしようもないと判断しました。

説明が不足していました。すいません。


2 ● pahoo
●29ポイント

指定したIP範囲に対し順次pingを発行し、ヒットしたIPに対しては問い合わせのプロトコル(SNMPが使えるならSNMPで)を出してみてはどうでしょう。


.NET Frameworkでしたら ping クラスが利用できると思います。


JavaやPHP、Rubyでは直接発行できないと思うので、ping コマンドを叩くのが無難でしょう。

◎質問者からの返答

回答ありがとうございます。

なるほど。pingですか。

とすると、同一セグメント内にデバイスが複数あれば、それだけ時間がかかるということですね・・・

もうちょっと効率のいい方法ってないんでしょうか?


3 ● aki1960
●14ポイント

既製品も対象とするなら、順次echo(ping)コマンドでスキャンでしょう。

以下のURLが参考になると思います。


http://itpro.nikkeibp.co.jp/article/COLUMN/20061108/253024/

http://kotohazime.fc2web.com/trouble/examination.html

◎質問者からの返答

回答ありがとうございます。

2番目の方と同じ手法ですね。やはりそれしかないんですかね・・・


4 ● zzz_1980
●14ポイント

既成のものに対しては適用できなくなりますが、

IPレイヤではなくデータリンクレイヤ(DIXv2/802.3)でのブロードキャストパケットを

raw socket (SOCK_RAW)上でやりとりすることを考えてください。

ゴミパケットを撒き散らかさないように。

◎質問者からの返答

回答ありがとうございます。

ただ・・・使われている用語(データリンクレイヤ、raw socket)がわかりません・・・

意味はネットで調べるとしても、それをどうやってプログラムするのでしょうか?

できればそのあたりのヒントをおねがいします。


5 ● zzz_1980
●28ポイント

socket インターフェース (API)はこちら。

http://msdn.microsoft.com/ja-jp/library/system.net.sockets.socke...

raw socket を使ったプログラミング(に必要な知識)は、

UNIXネットワークプログラミング〈Vol.1〉ネットワークAPI:ソケットとXTI

UNIXネットワークプログラミング〈Vol.1〉ネットワークAPI:ソケットとXTI

  • 作者: W.リチャード スティーヴンス
  • 出版社/メーカー: ピアソンエデュケーション
  • メディア: 単行本

こちらを。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ