2017-06-14 17 views
0

同じ無線LAN上の2つのデバイス間でレジスタを設定したり、サービス接続のタイプを探したい。ワイヤレスルータのパスワードを見つけて接続して新しいデバイスに送信して、簡単にインストールできるようにすることです。 SSID、パスワードでルータに接続する前に、同じワイヤレスネットワーク上の2つのデバイス間で通信が必要です。パスワードなしの無線接続でゼロ接続

私はzeroconf、bonjour、およびmDNSライブラリについて認識しています。私が見るすべての実装は、ステーションモードでwifiに接続することから始まり、この段階では知られていないハードコードされたSSIDとパスワードを持つローカルIPを取得します。

つまり、ワイヤレスに接続してSSIDとパスワードなしでリンクローカルIPを取得するにはどうすればいいですか?

- より良い説明のための編集 -

私が探している流れは、このようなものです:

の1-携帯電話(iPhoneやアンドロイド)として家庭のワイヤレスネットワークをセキュアに接続されています通常
2ワイヤレスインターフェイスを備えた新しいデバイスの電源が初めて入ります。
3デバイスが自身のローカルIPアドレスとローカルDNS名(マルチキャストのIPアドレスと名前)を取得(または設定)します
4-デバイスがネットワークに利用可能なサービスをブロードキャストします
5-電話機は、ローカル名、さらにはすでに割り当てられているローカルIPなどです。
6-電話は、(アクセスポイントのSSID及びパスワード)
7の無線設定情報を送信するデバイスとの直接接続を開始 - 、デバイスがこの情報を保存し、通常動作モードにリセット - このデバイスは、インターネット
に接続9 - 、は

コードがesp32またはesp8266上で実行されますので、互換性のあるCやArduinoのライブラリはOKです - 編集 - デバイスサービスは、ローカルネットワーク

ではまだ利用できます。

私はsmartconfigのESPTouchアプリケーションの実装について認識していますが、それは恐ろしいデザインです!ディスカバリープログラムは、可能なすべてのIPアドレスにソケットを作成してピアIPを探します。

答えて

0

再びあなたの質問にこの文を読み、それについて考える:つまり

、どのようにワイヤレスに接続し、SSIDとパスワードを入力せずに、リンクローカルIP を得ることができますか?

上記のプロトコルは、ネットワークの一部である場合にのみ可能です。ご存知のように、Wi-Fiネットワークは不正アクセスを防ぐために保護されています。

GoogleでWi-Fi Protected Setup(WPS)を試してみてください。

+1

私はあなたがssidとパスワードを持つ無線ルータを介して接続する前に、UDPパケットを送受信し、P2Pソケット通信などを行うことができることを知っています。これは、ESPTouchがネットワーク内の別のデバイスにssid、pwd情報を転送する方法です。 –

+0

大規模な調査の後、私はあなたがほぼ完全に正しいと分かった!デバイスがネットワークで認証する前に通信するための正式なプロトコルはありません。ESPTouchとSmartConfigが実際に行っていることは、実際にネットワークを盗聴し、パッケージサイズの点で表現されたメッセージを公開することです!ここには優れた記事があります: –

+0

[link](http://depletionregion.blogspot.com.tr/2013/10/cc3000-smart-config-transmitting-ssid.html) これはベストプラクティスではありません。あきらめる!ワイヤレス設定を送信する最も良い方法は、BluetoothまたはUSBを介しているようです。 –

関連する問題