ユーザーがNATのポートをC++アプリのローカルマシンに簡単に転送できるようにしたいと思います。これをOSXとWindowsで動作させたいです。Linuxは大きなボーナスですが、Linuxユーザーはおそらく手動でポートを転送する方が快適なので、それほど心配する必要はありません。LGPLタイプコードは問題ありませんが、ストレートGPLのものは使用できません。
この分野で誰かが持っている考えや経験を聞きたいのですが、いくつかの具体的な質問が思い浮かびます。
ユーザーがNATのポートをC++アプリのローカルマシンに簡単に転送できるようにしたいと思います。これをOSXとWindowsで動作させたいです。Linuxは大きなボーナスですが、Linuxユーザーはおそらく手動でポートを転送する方が快適なので、それほど心配する必要はありません。LGPLタイプコードは問題ありませんが、ストレートGPLのものは使用できません。
この分野で誰かが持っている考えや経験を聞きたいのですが、いくつかの具体的な質問が思い浮かびます。
MiniUPNP は、少なくとも 1 つの bittorrent クライアント (Transmission) で使用されており、正常に動作するはずです。
OS X と Windows の両方で Bonjour を使用して、uPNP または NAT-PMP をサポートするルーターでポート マッピングを行うことができます。API (DNSServiceNATPortMappingCreate)は使用していませんが、NAT-PMP ルーターの背後にある Windows と OS X の両方で広域サービスを正常に公開しています。Windows ユーザーがアプリを使用するために Bonjour をインストールするかどうかはわかりませんが (iTunes や Safari を使用している場合は既にインストールされている可能性があります)、OS X のサポートは問題にならないはずです。