2016-09-12 16 views
1

この1週間、ブラウザでSSDPをスキャンして情報を表示できるWebページにデータを戻す方法を研究していました。しかし、私は今これは不可能であることを知っています。つまり、ネットワーク上のすべてのデバイスがオンラインになっているかどうかを調べる方法はありません。私はJavascriptを使って私のローカルIPアドレスをかなり簡単に手に入れることができたと知っています。ターミナルでできることは、IPアドレスをpingしてから、ネットワーク上の他のすべてのオンラインデバイスを返すarp -aを実行することです。とにかくJavascriptを使って同様のことをすることができますか?私はJavascriptを使用してpingできますが、arp関数の置換えを見つけるのに問題があることを知っています(Javascriptでも可能な場合)。ローカルIPアドレスを使用してネットワークを検索する

質問に間違いがあると謝罪します。それ以上の説明が必要な場合は教えてください。セキュリティ上の問題のために可能ではない可能性がありますが、好奇心から不思議に思うかもしれません。

ありがとうございます!

+0

WebブラウザなどのJavaScriptやNode.jsなどについて話していますか? – Pointy

+0

いいえ、ブラウザのJavaScriptからはできません。 JSにはいくつかのネイティブ(ish)ネットワーキング機能があります。 websocketsとajaxのような低レベルのデータをどこにでも置くことができる汎用的な目的の「何もしない」ネットワークスタックはありません。あなたのローカルネットワークの仕様は、あなたが訪れているウェブサイトのビジネスはまったくありませんが、ローカルネットワークスタックがあればそのデータを取得でき、JSが情報にアクセスできるようになります。 –

+0

私はブラウザでJavascriptについて話しています。つまり、本質的にセキュリティ問題のためにローカルIPを知っていても、ネットワーク内の他のすべてのIPを調べることはまだできません。 – trynacode

答えて

1

私は次のいずれの方法も使用していませんが、これは私がこのテーマで見つけたものです。

チェックアウトできるJS libraryのブラウザextensionがあるようです。一緒に彼らはクロムにSSDPサービスを提供します。

Javascript(ブラウザ側)にUDPトランスポートレイヤーを実装するのに長い時間がかかります。私は最初にsipml5トランスポート層を見て、彼らがそれをどのように処理したかを見ていきます。たとえUDP部分がうまくいくとしても、あなたはHTTPUを実装してからSSDPを実装する必要があります。

もう1つの可能性はWebRTC(sipml5も使用します)ですが、他の例は見当たりませんでした。

関連する問題