AndroidデバイスでHTTPサーバーをホストしています。自宅のwifi(無線ルーターの後ろ)に接続していても、インターネットからアクセスできるようにしたいと思います。
さらに、インターネットからはルーターの構成にアクセスできないため、ルーターで静的ポート転送を構成することはできません。
オプションはありますか?
私はこれを試しました:
Androidアプリは、Androidデバイス(ローカルIPアドレス、たとえば192.168.0.1)から特定のポート番号(たとえば8080)からホームWIFIを介してインターネット上のWebサーバーにHTTP要求を送信します。
ルーターは、送信元アドレスをパブリックIPアドレス(たとえば111.100.45.65)に変更し、送信元ポート番号を任意のランダムポート番号(たとえば39824)に変更し、動的NATテーブルにエントリを作成します。
内部IP内部ポート外部ポート192.168.0.1808039824
私の理解によると、このエントリは少なくとも数時間保持されます。インターネット上のWebサーバーは、送信元IPとポートをそれぞれ111.100.45.65と39824として報告します。
Androidアプリからインターネット上のWebサーバーにHTTPリクエストを送信した後、デバイスのポート8080でHTTPサーバーを実行します。ここで、インターネットからポート39824のアドレス111.100.45.65にHTTPリクエストを送信する場合、デバイスで実行されているHTTPサーバーで受信する必要があります(ルーターは動的NATテーブルからリクエストを解決し、デバイスに送信します) 。
しかし、何らかの理由で、このリクエストは解決されません。任意のポインタ。