データベースのリモート管理に使用できるWebサーバー(ServiceStack)が組み込まれたデスクトップ製品(C#)を開発しています。これを内部サーバーと呼びます。多くのユーザーはネットワークの外部で内部サーバーにアクセスしたいと考えていますが、ファイアウォールとポート転送を構成するための私の側のサポート負担は高すぎます。また、動的IPアドレスも問題になる可能性があります。
私は、ユーザーが内部サービスで何も構成しなくても内部サーバーに要求を中継できる外部サーバーIホストに接続できるゼロ構成サービスを作成する方法を考え出そうとしています。ユーザーの観点からは「正しく機能する」はずです。
これは、ユーザーがファイアウォールを構成しなくても、ログインしてコンピュータに「接続」できるTeamViewer/AnyDesk/etcの動作に似ています。
以下のシーケンス図に基づいて、概念実証を作成しました。動作しますが、直接接続に対するパフォーマンスは非常に遅くなります。
これをよりよく達成するにはどうすればよいでしょうか。また、この問題をすぐに解決できる解決策はありますか?
次の図に示されている主な課題は、パブリックリレーサーバーが内部サーバーへの直接接続を開始してはならないことです。
改善のための考えられる考え: