問題タブ [nat-traversal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - UDPホールパンチングの助けが必要
Java で p2p ネットワークを作成するプロジェクトに取り組んでいます。ローカル LAN に UDP を使用して n/w を構築し、インターネット経由で UDP データグラムを送信する作業を行っています。UDPホールパンチングと呼ばれるこの概念に出くわしましたが、関連するトピックやライブラリが見つからないようです. 誰でも助けてもらえますか?
flash - NetConnectionにソースポートを強制することは可能ですか?
私はActionScriptを初めて使用しますが、既存のプロジェクトを解読し、いくつかの変更を加えようとしています。
新しいNetConnectionを作成し、外部ソースからメディアファイルをストリーミングすることから始まるコードのセクションがあります。ドキュメントで(URLを介して)宛先ポートを提供できることがわかりましたが、Flashに特定の送信元ポートを使用させることは可能ですか?ドキュメントでこれを行うための明確な方法を見つけることができませんでしたが、他の誰かが別の方法やアイデアを持っているかどうか興味がありました。
これの最終的な目標は、 NATホールパンチングを実行するために予測可能な方法でソースポートを使用できるようにすることです。提案や回答をありがとう!
actionscript-3 - Adobe AIR、URLRequest、およびローカルポート
私はAdobeAIRでアプリを作成することを検討していますが、これがプラットフォームで実現可能かどうかを最初に把握したいと思いました。(ほとんどの場合、FlashとAIRは初めてです)
私がやりたいのは、aが使用するローカルポートを事前に知っておくことです。URLRequest
できれば、接続を開いたままにして、同じソケットを使い続けたいと思います。
私が基本的に達成しようとしているのは、事前にNATトラバーサルとポートネゴシエーションを行うことです。クライアントとサーバーの両方をネゴシエートしたら、次のサンプルのように、接続し、基本的にピアツーピアの方法でHTTPを使用してメディアをストリーミングするようにします。
問題は、使用する予定のポートに関する情報をAIRから取得できない限り、これが発生しないことです。サーバーへの独自のSocket
接続を作成して使用することは問題ありませんが、Soundフレームワークを活用してソケットから同じ方法でストリーミングする方法が必要です。
アイデア?考え?ありがとう!
.net - .Net WCF NAT トラバーサルのベスト プラクティス
.Net でのピアツーピア NAT トラバーサルの提案または解決策を探しています。チャット アプリケーションがあり、2 つのクライアントが接続する必要があるが、どちらも NAT の背後にあるとします。
ホーム シナリオでは、ケーブル モデムまたはコンシューマー ルーターのみが関与するため、uPNP はおそらく問題ありません。しかし、uPNP が不可能な企業環境はどうでしょうか?
私は、ハンドシェークには問題ない UDP ホール パンチングに精通していますが、実際のアプリケーション データの送信にはこれに依存したくありません。
IPv6 と Teredo も調べましたが、すべてのクライアントが IPv6 を利用できるかどうか確信が持てず、Teredo のすべての要件 (サーバー、リレーなど) について少し混乱しています。
時は 2011 年で、IM/Chat クライアントは 10 年以上前から存在しているため、この問題は何度も解決されたと信じています。この分野のベストプラクティスを推奨できる人はいますか? 前もって感謝します!
java - Java スタントと URI の発見
私はライブ ビデオ Java アプリケーションに取り組んでおり、NAT トラバーサルの一般的な問題に遭遇しました。2 台のコンピューターはローカル ネットワーク上で相互に接続できますが、NAT の背後にある場合は接続できません。私はいくつかの調査を行いましたが、頭を悩ませる最も簡単なオプションはCornell の JSTUNT ライブラリです。
ただし、URI を使用してコンピューターを接続する必要があるようです。これを行う方法がよくわかりません。Java で独自の URI を検出する方法はありますか?
彼らの STUNTServer クラスはこれを行うように設計されているようですが、私が解決できる限りでは、socket.getSocketAddress() しか返されません。これは URI と同じではないようです。
任意の洞察をいただければ幸いです。
browser - 外部サーバーを使用しない NAT トラバーサル
BrowserA(NATの背後)がBrowserB(NATの背後)と通信できるように、ブラウザ間アプリケーションを開発したいので、TURNおよびSTUNサーバーについて読んでいます。この場合、TURN プロトコルを使用する必要があると思います。
私の質問:外部物理サーバーを必要としない他のソリューションはありますか? ソフトウェアだけのソリューションは、まさに完璧です。
ありがとう
networking - P2P を使用して分散型の reddit のようなシステムを構築したいと考えています。どの既存の p2p ライブラリをベースにする必要がありますか?
P2P を使用して分散型の reddit のようなシステムを構築したいと考えています。基本的には、reddit の基本的な機能を保持したいのですが、分散化して、より堅牢で検閲の影響を受けないようにしたいと考えています。これにより、閲覧したい方法に合わせてさまざまなクライアントを開発することもできます。
私の仕事のベースとなる良い p2p ライブラリを推奨してもらえますか? それらはオープンソースで、クロスプラットフォームで、堅牢で使いやすいものでなければなりません。言語はあまり気にしません。順応できます。
java - 公的にアクセスできないLAN上の別のコンピューターの正しいIPアドレスを見つけるにはどうすればよいですか?
私は分散Javaアプリを書いていますが、ネットワークの面で困惑しています。何らかの理由で正しく機能していません。ipconfig/allで取得したIPアドレスにLANの外部からアクセスできないためだと思います。ヒントやアドバイスをいただければ幸いです。
upnp - UPnP 自動選択外部ポート
必要に応じて UPnP を使用してポートを開き、着信を受信できるようにするアプリケーションを作成しようとしています。問題は、外部ポートを指定したくないということです(1つは、外部ポートはアプリケーションが見つかるのに関係なく、2つは同じルーター上の複数の人がアプリケーションを使用できるようにしたいためです) 、そしてポートを共有することは明らかにオプションではありません)。私が見ているAPIのどれも、ポートを指定できないようにすることについて何も言っていませんが、ポート自体を選択するようなものを送信したり、ポート自体を選択させたりしますか0
?-1
また、ポート マッピングは期限切れになりますか、それとも強制的にすべてのマッピングを解除する必要がありますか? アプリケーションがクラッシュしたり、コンピューターの電源が落ちたりした場合に備えて、私は疑問に思っていました。
wcf - 実行時にWCFを使用してNATトラバーサルでピアツーピア
タイトルが示すように、NATを通過できる2つのシステム間にP2P接続を確立することは可能ですか。これらの2つのプログラムは、特定の接続されたクライアントを他の接続されたクライアントに識別するWCFサービスに接続されています。その後、プログラムは相互の情報を受け取ります。これは私がよくわからないところです。お互いを知っているこれらの2つのプログラムは、どのようにして互いに直接接続し、サービスを介して情報を送信せずに通信できるようにすることができますか。WCFでこれを実行できるかどうかはわかりませんが、実行できない場合は、他の解決策があります。どんなソースコードでも素晴らしいでしょう。