TCP/IP 経由でコンピューターに接続する必要があります。外部 IP を持っていますが、ポート転送がないとサーバーに接続できません。
ルーターを構成せずに、サーバーによって定義された外部 IP とポートで接続を受け入れるようにサーバーを構成する方法はありますか? (エミュールはどのようにそれを行うのですか?または他のピアツーピアアプリケーションですか?)
TCP/IP 経由でコンピューターに接続する必要があります。外部 IP を持っていますが、ポート転送がないとサーバーに接続できません。
ルーターを構成せずに、サーバーによって定義された外部 IP とポートで接続を受け入れるようにサーバーを構成する方法はありますか? (エミュールはどのようにそれを行うのですか?または他のピアツーピアアプリケーションですか?)
状況を明らかにする必要があります。ターゲット コンピューターは、NAT を実行するルーターの背後にありますか?
その場合、答えはノーです。
外部 IP はルーターの IP であるため、サーバーは外部 IP での接続を受け入れることができず、サーバーへの直接パスがないため、サーバーはルーターが転送する接続のみを受け入れることができます。
ただし、NAT によって引き起こされるこのような問題を回避する方法がいくつかあります。通常は、NAT の背後にあるコンピューターがアウトバウンド接続を作成し、それが通信に使用されます。例を参照してください
http://en.wikipedia.org/wiki/Hole_punching
他の回答で引用されているように、ユニバーサルプラグアンドプレイでもこれが許可される場合があります。
理想的には、NATed クライアントに接続を開始させたいと考えていますが、それが不可能な場合は、STUNまたはUPnPを調べてください。
STUN は、NAT に穴を開けることができるツールとプロトコルの集まりです。NAT されていないサーバーの協力が必要になる場合があります。これは、NAT の実装によっては失敗する可能性があります
UPnP は、クライアントが必要なポートを動的に転送できるようにする NAT ルーター向けのプロトコルです。すべての NAT ルーターがこれをサポートしているわけではありませんが、最近のほとんどの NAT ルーターはおそらくサポートしています。
ユニバーサル プラグ アンド プレイを検討する必要があると思います。
基本的に、このコンピュータには接続を開始するプログラムが必要です。これは、FogCreek CoPilot、LogMeIn などのプログラムを使用して、ルーターを構成せずに NAT ルーターの背後にあるマシンをリモート管理できるようにする方法です。