クライアントシステムに複数のネットワークカードがあると(複数のIPアドレスがあるように)、C#でサーバとの通信に使用されているクライアントIPを知る方法はありますか? プライベートIP(パブリックIPではなく)を取得したいと考えています。C#を使用して複数のネットワークカードのどれが使用中であるかをどのように知ることができますか?
OR
詳細を読むために我慢してください...
は私が通信に使用されているカードを知ることができますどのように、私は私のPCに接続された複数のネットワークカードを持っていると仮定します。たとえば、私が使用している場合
ping 192.168.x.xxx
どのカード(どのIPアドレス)が通信に使用されているか知りたいと思います。
コマンド
netstat
アクティブな接続を教えます。私はアクティブな接続に興味はありませんが、次の接続に使用するカードを知りたいと思います。つまり、ping
を使用する場合、どのカード(またはIPアドレス)が使用されますか?
C#を使用して同じIPアドレスを取得するにはどうすればよいですか(エンドポイントIPアドレスを必要とするWCFで何かしたいのですから)?
例えば、私は、クエリの参照が https://superuser.com/questions/304372/how-can-i-tell-which-of-multiple-network-cards-is-in-use
...で発見することができ、次のnet.tcp:// + LocalIP + ":" + ListeningPort + "/Service/ep1;
を作成する(ListeningPortなど)(LocalIPなど)IPとポートを使用したいです
ルーティングテーブルの情報は必要ですか? [これはAPIの可能性があります](http://msdn.microsoft.com/en-us/library/aa374019.aspx)が必要です。 – Rup
接続が開いたら、どちらかの端のIPアドレスを問い合わせることができます。物理的なインターフェースの詳細ではなく、興味のあるIPアドレスのようです。 –