質問: インターネットからipデバイスにアクセスする方法 インターネットからwindowsiotデバイスにアクセスしたい。デバイスをイーサネット経由で任意のネットワークに接続したい。ネットワークはインターネットに接続されています。静的ipがなく、デバイスが接続されているネットワークについて何も知りません。そのため、新しいイーサネット接続を検出するアプリケーションをそのデバイスで実行できると思いました。そのアプリケーションは、実際のipアドレスとネットワークに関する情報を特定のエンドポイントに送信する可能性があります。これらの情報を使用して、windows iotデバイスに接続できると思いましたか?ネットワークから何も知らなくても、「外部」からデバイスに自動的にアクセスすることさえ可能ですか?編集:デバイスをイーサネットにプラグインし、ファイアウォールで許可されている場合、デバイスが指定されたデータをazure eventhubなどのクラウドサービスに送信するようにします。イベントを受信し、クラウド内の新しいデバイスを認識した後、デバイスにもメッセージを送信したいと思います。しかし、dnsやvpnは使いたくないし、azure iot hubも使いたくない。なぜなら、クラウドプロバイダーを変更できるようにしたいからだ。
回答: さまざまなダイナミックdnsネームサーバーアプリを使用して静的な名前を提供できるため、既知のアドレスに接続できます。ウィキで詳細を参照してください: https://en.wikipedia.org/wiki/dynamic_dns これは、「何も知らない」ネットワークへの接続を取得するのに役立ちません。そこでupnpが登場します。upnpを使用して、ルーターに自動的にマッピングする特定のポートを作成できるため、既知のポートは常にルーター内のipデバイスにルーティングされます。詳細はこちら: https://en.wikipedia.org/wiki/universal_plug_and_play#nat_traversal 2つを組み合わせる場合は、a)接続する固定アドレスを持っているb)デバイスにルーティングされるアドレスの固定ポート残念ながら、ネームサーバーの更新はすぐには行われないため、たとえばgoogleネームサーバー新しい動的アドレスが伝播するまでに少し時間がかかります。一部のダイナミックdnsプロバイダーには、これを回避するための独自のネームサーバーがあります。そのようにすると、当然、すべてのネットワークトラフィックがそれらにさらされるため、データマイニングに関するtosを確認することが適切です。