指定したNICからパケットを送信するには?

解決


LAN初心者  2006-05-08 20:54:58  No: 61687

初めて投稿させてもらいます。
一台のPCに2つのNIC(ネットワークカード)がある環境で、
片方のNICだけにブロードキャストメッセージでパケットを送信
したいのですが可能でしょうか?
環境は、VC++6.00  XPです。
よろしくお願います。


㍉たん☆彡  2006-05-08 23:37:18  No: 61688


トーリスガーリ  2006-05-08 23:37:34  No: 61689

???

> 指定したNICからパケットを送信するには?
> 片方のNICだけにブロードキャストメッセージでパケットを送信

どっちをしたいの?
1)指定したNIC→ブロードキャスト
2)指定したNIC←ブロードキャスト(こいつにのみ)

2)はできないのでは。
というか、ブロードキャストの意味無いじゃんと思う。

というか、どの層で通信をしたいのかがいまいちわかりません


ボコノン教徒  2006-05-09 00:22:32  No: 61690

ブロードキャストって何?

マルチキャストであれば、
http://support.microsoft.com/default.aspx?scid=kb;ja;JP409410


てきと  2006-05-09 03:28:51  No: 61691

>片方のNICだけにブロードキャストメッセージでパケットを送信
              ‾
>2)指定したNIC←ブロードキャスト(こいつにのみ)
がしたいのでは?

特定のマックアドレスを指定するなどすればできるかもしれませんが、自分には分
からないです。その方法でできたとしても知っているPCにしか送信できないので意
味ないです。


てきと  2006-05-09 03:30:05  No: 61692

>片方のNICだけにブロードキャストメッセージでパケットを送信
                  ‾
大きさがそろわなかったようで。。


LAN初心者  2006-05-09 04:08:34  No: 61693

みなさま返信ありがとうございます。
色々説明不足ですみません。
環境としては、PCにNICが2つあって、片方TCP/IP通信で
もう片方がUDP通信です。
UDPの方のNICにだけブロードキャストメッセージ(255.255.255.255)
を流したいのですができますでしょうか?
ソケット生成のメソッドでCreateがありますが、そのパラメータに
送信元IPアドレスを指定できるみたいでやってみたのですが
両方のNICに流れてしまいダメでした。


LAN初心者  2006-05-09 04:11:50  No: 61694

補足させていただきます。

トーリスガーリさんの
1)指定したNIC→ブロードキャスト

です。


ボコノン教徒  2006-05-09 06:53:33  No: 61695

こんなやつ?
http://www003.upp.so-net.ne.jp/geek/programming/winsock/broadcast.html

Winsockでアダプターを指定するときは、bindの2番目の引数にその
アダプターのIPアドレスを指定するんじゃなかったっけ。
確かこれはUDPでも使えたはず。


LAN初心者  2006-05-10 20:17:39  No: 61696

色々ためしてみました。
Bindの第二引数にIPを指定して試してみましたが、
ブロードキャストメッセージの場合は、
両方のNICから出てしまいました。

IPの性質上避けられそうにありません。

また、マルチキャストの場合は、出力先のNICを選択できるみたいですが、
ターゲットが、マルチキャスト不可なのでこれも無理です。
結局、仕様を変更してユニキャストにすることになりました。

色々ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加