1

どのオペレーティング システムでも動作する Network Inventory アプリケーションを開発したいと考えています。ネットワークに接続されている可能性のあるすべてのリソースについて報告します。ハードウェアとソフトウェアのすべての関連詳細を報告します。それは(そして私はこのフレーズを使うのが嫌いです)私の「エンドゲーム」です。

ただし、ここでクロールする前に実行しています。私は、この種の開発の経験がありません。たとえば、コンピューターのハードウェアおよびソフトウェアの設定を検出するなどです。

私はほぼ2週間グーグルで過ごしましたが、不足しています! :-(。

だから私はこれらの質問をするためにあなたに回っています:-

私の最初のステップは、既存のオープン ソース プロジェクトを見つけて、自分のコードに組み込むことができる細かい詳細を抽出することです。

このプロジェクトは存在しますか?または、最初にそれを開発する必要がありますか?

これをすべてCで書かなければなりませんか?

コンピューターに関するこの情報を取得することは、プリンター、スキャナー、ルーターなどよりも簡単になると思います... たとえば、ネットワークに接続されている他のすべてのもの.

1 台のコンピューターの詳細にアクセスできるようになったら、プリンター、スキャナー、ルーター、ロード バランサー、スイッチ、ファイアウォール、ワークステーション、サーバー、ストレージ デバイス、ラップトップ、モニターのネットワーク全体をどのようにトラバースできるかを調査する必要があります。そして

私が抱えている問題の 1 つは、プレイする 1000 マシンの newtork がないことです。インターネット上で利用できるそのようなリソースはありますか? (それはばかげた質問ですか?)

とにかく、聞かなければ分からない!

ネットワーク全体を横断する方法を見つけることを本当に楽しみにしています。

これには TCP/IP を使用する必要がありますか?

TCP/IP 開発に適したサイト、ブログ、ユーザー グループ、書籍はありますか?

ファイアウォールを通過するにはどうすればよいですか?

一度にいくつ質問できますか?:-)

このトピックに関する私の以前の質問は、このアプリケーションを開発するために使用する言語/スクリプトとして PYTHON が支持されているということで終わりました。

いくつかの PYTHON の例を見たところ、それらはすべて WINDOWS ネットワークと Windows Management Instrumentation (WMI) の調査に関連しているように見えました。私は、WMI の内容を信頼することはできないと感じていました。信頼できたとしても、UNIX ネットワークには適していません。

コンピューターからハードウェアとソフトウェアの詳細を抽出するための一般的なコードが存在するのでしょうか? なぜインターネットで見つけられないのですか?

助けて?

賞品はありませんが :-(

前もって感謝します

フォーラムのルールに違反したり、支援を求める前に自分で十分に努力しなかった場合は、お詫び申し上げます。

私が関わってきた中で最高のプロジェクトの1つとして、これを前進させたいと思っています.

関連する多くの異なる課題に刺激を受け、最後に有用なアプリケーションを作成できれば、多くの人にとって非常に役立つことを願っています.

それでおしまい

前もって感謝します

DD

4

2 に答える 2

3

ディスカバリー ソリューションのソフトウェア ベンダーとして、私は次のように言うことができます: 敬意を表して、あなたが新しいものを始めたいと思っていること:-)。それがどのように見えるかに興味がある場合に備えて: http://www.jdisc.com

今私たちの経験のいくつかに:

  1. プログラミング言語: C では書きません。Java または .NET を使用します。これらの言語には、エラーや問題の追跡に関して大きな利点があります。たとえば、Java (.NET でも同様だと思います) では、何かが失敗したときにスタック トレースを確認できます。一部のコード (WMI アクセスなど) では、C++ または C を使用する必要がある場合があります (Microsoft のネイティブ API へのアクセスなど)。ネイティブ インターフェイスまたは Java の COM ブリッジを使用します。.NET では、Windows API へのアクセスがより簡単になるはずです)。

  2. デバイス: ネットワーク プリンター、ルーター、およびスイッチは、実際には簡単に検出できます。彼らは通常、SNMP を介して情報を公開します。SNMP は非常に使いやすく、非常に堅牢です。Windows (または Unix) システムから情報を取得するのは少しトリッキーです。プロトコルがブロックされたり、構成が間違っていたり、めちゃくちゃになったりする可能性があります... リモート デバイスからデータを要求するときに、WMI が単にハングするというケースがありました。

  3. テスト デバイス: 当社も小規模な会社であるため、テストする 1000 種類のデバイスもありません。ただし、役立つ可能性があることがいくつかあります。

a) SNMP デバイスの場合は、SNMP シミュレーターを使用します。Gambit Solutions の MIMIC 9.0 を使用しており、非常に満足しています。ネットワーク デバイスから SNMP ウォークをインポートして、デバイスがネットワーク内にあるかのようにシミュレートできます。b) 次に、可能な限り仮想化を使用します。VMware を使用すると、Windows、Linux、さらには Solaris をインストールできます。また、GNS3 というプロジェクトを使用して、Cisco ルーター、ファイアウォール、またはジュニパー ルーターをエミュレートしています。c) 新しいデバイスのテストと実装を支援する顧客がいる場合は、残りのデバイスのみをテストできます。

これは、開始するためのいくつかのアイデアです。しかし、それは些細なことではなく、多くの時間がかかることをお伝えしなければなりません....

最初にいくつかのアイデアがあることを願っています...

于 2010-07-07T18:09:50.587 に答える
0

オープンソースかどうかはわかりませんが、ここでは IT 管理プラットフォームとしてSpiceworks ( http://www.spiceworks.com ) を使用しています。あなたはそれを探求することからいくらかの役に立つかもしれません。

于 2010-07-07T18:17:43.150 に答える