プロが教えるわが家の防犯対策術!

System.Net.Sockets.UdpClient クラスを使用してのソケット通信を行っています。
プログラムでは、送信元のポート番号のみ引数に渡すだけで
それまで順調に通信は行っていたのですが

//localPort=送信元ポート番号
fUdp = new System.Net.Sockets.UdpClient(localPort);

新たに ネットワークインターフェースカードを追加して、IPアドレスを後から
挿した方に変更してから、通信がうまく動作しなくなってしまいました。

おそらくは、IPアドレスが複数ある為に、うまく動かないのかな?と思い
送信元のポート番号だけでなく、送信元のIPアドレスも合わせて指定してやれば
直ると思い調べていたのですが、送信元IPアドレスの指定する方法が判りません
AddressFamily で指定するのかなとも思ったのですが、ヘルプを見てもよくわからずに
行き詰ってしまいました。

もしよろしければ、送信元のIPアドレスを指定する方法をご教授ねがえませんでしょうか

A 回答 (1件)

using System;



using System.Net;

using System.Net.Sockets;

namespace Q6373023

{

public class Q6373023

{

public static void Main(){

UdpClient uc = new UdpClient(new IPEndPoint(IPAddress.Parse("192.168.1.2"),60000)); /* 俺 */

uc.Send(new byte[]{0x01,0x02,0x03},3,new IPEndPoint(IPAddress.Parse("192.168.1.1"),60000)); /* 相手 */

}

}

}

/* こんな感じ?1枚しか刺さってないマシンなので何ともいえないけど。 */
    • good
    • 0
この回答へのお礼

うまく動作しました。
ありがとうございます。

お礼日時:2010/12/14 11:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています