• ベストアンサー

無線LANカード2枚挿し時のUDPクライアントプログラミングについて。

LinuxのUbuntu8.04を使用しているのですが、現在無線LANカード2枚挿ししている状態で、同じネットワーク内でIPアドレスを設定しています(192.168.0.10と192.168.0.11)。UDPクライアントプログラムでパケットを送信すると、インターフェイスを勝手に選んでしまうので、任意に「こっちの無線LANカードを使う!」という指定をするためにはどのようにプログラミングすればよいでしょうか? お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

Linuxでは未確認ですが、 SOCKADDR_IN sck; sckをゼロクリア sck.sin_family = AF_INET; sck.sin_port = htons(ポート番号); sck.sin_addr.s_addr = inet_addr(使うLANカードのIPアドレス); bind(socket,&sck,... socketはデータグラムソケット。

d_x-x_b
質問者

お礼

bindの意味を理解して、回答を参考にしたらできました!! ありがとうございます(^▽^*)

d_x-x_b
質問者

補足

素早い返答ありがとうございます。 現在プログラミングと格闘中なのですが、 sck.sin_addr.s_addr = inet_addr(...); のところでは送信相手のIPアドレスを入力すると思っていたので、この通りやってみると、相手のアドレスを記述する部分がわからなくなってしましました(汗) どうすればよいでしょうか(^-^;) 基本的なクライアントプログラムは、 http://www.geekpage.jp/programming/linux-network/udp.php を参考にしてプログラミングしています。

関連するQ&A

専門家に質問してみよう