私は、1 つの Web サーバーと、XML を Web サーバーに投稿する 1 つの C# クライアントを持つアプリケーションを開発しています。Web サーバーは、クライアントのローカル IP アドレスを知る必要があります。サーバー側で IP アドレスを取得する方法を試しましたが、プロキシ サーバーまたは NAT が間にある場合、これらの方法ではクライアントの IP アドレスが得られません。そのため、クライアント アプリケーションで接続のローカル IP を見つけて、それを要求と共に送信する必要があります。
問題は にありHttpWebRequest
ます。HTTP リクエストの送信中に行われた接続のローカル IP アドレスを取得する方法がわかりません。
明確化:
私の場合のクライアントはブラウザベースではありません。C#アプリケーションです。私のサーバーには、ローカル IP に基づく特定のルールがあり、HTTP 要求の送信中にサーバーに接続するために使用されていました。私の場合、ローカル IP は固定です。Socket
ローカル マシンには複数の IP が存在する可能性があります。そのため、リクエストの送信に使用される に関連付けられたローカル IP が必要です。これはTcpClient
、C# で使用し、その上に HTTP プロトコルを実装すれば解決できますが、それは避けたいと考えています。HttpWebRequest
それで、リクエストを投稿する前に関連するソケットを取得する方法はありますか?