- PR -

ブロードキャストが2枚のネットワークカードから送信されてしまう?

1
投票結果総投票数:4
Windows 0 0.00%
.NET 0 0.00%
ソケット 0 0.00%
ブロードキャスト 4 100.00%
  • 投票は恣意的に行われます。統計的な調査と異なり、投票データの正確性や標本の代表性は保証されません。
  • 投票結果の正当性や公平性について、@ITは一切保証も関与もいたしません。
投稿者投稿内容
ふじき
会議室デビュー日: 2005/09/07
投稿数: 2
投稿日時: 2005-09-07 01:33
Windows XPSP2で、ソケットを使用した通信のプログラムを作成しています。
開発環境は .NET C++です。

サーバからの要求をブロードキャストし、各クライアントから状態を
返してもらう内容ですが、ネットワークカードを2枚実装した場合、
どちらか1方のカードを使用したいのですが、ブロードキャストデータは、双方のカードから出ているようです。
これは仕様なのでしょうか?
どちらか1方のカードだけを使用したいのならマルチキャストのほうが
良いのでしょうか?

カードの設定は以下のようにしています。

NIC1 IP=129.168.1.10 SubNetMask=255.255.255.0
NIC2 IP=129.168.10.20 SubNetMask=255.255.255.0

ソケットで、NIC1のIP AddressをBindして,
Sendto()を行っているのですが、NIC2からもブロードキャスト
データが送信されています?

以下のようなイメージです。

129.168.1.10 CLI1 CLI2
|+-------------------+------+------LAN1 ←----双方にブロードキャストが
サーバ |  流れる
|+-------------------+-------------LAN2 ←|
129.168.10.20 PRINTER


どなたか、回避方法、またはこれが仕様だと断定できる方、
おられますでしょうか?
宜しくお願いいたします。

甕星
ぬし
会議室デビュー日: 2003/03/07
投稿数: 1185
お住まい・勤務地: 湖の見える丘の上
投稿日時: 2005-09-07 09:56
ブロードキャスト時のあて先IPアドレスを255.255.255.255にしていませんか?だとしたら両方に送信されて正しいでしょう。あて先IPアドレスを192.168.1.255とか192.168.10.255にすれば特定のNICからのみ送信されるはずです。

ブロードキャストアドレス (broadcast address)
ふじき
会議室デビュー日: 2005/09/07
投稿数: 2
投稿日時: 2005-09-07 23:19
甕星さん、ありがとうございました。
ブロードキャストアドレスを192.168.1.255にすることで
特定のNICからのみ送信するようになりました。

この件解決いたしました。
1

スキルアップ/キャリアアップ(JOB@IT)