[FreeBSD-users-jp 92527] Re: UDP limited broadcast の送出方法

2009-10-02 スレッド表示 Kouichi Hirabayashi
> こうやると、DSTIP は 255.255.255.255 になっているようですが、 > DST の MAC アドレスはデフォルトゲートウェイのものになってい > ます。 ip(4) を見ると、SOCK_RAW で IP_ONESBCAST を設定すれば 良さそうですが、sin.sin_addr.s_addr が 202.23.252.255 などであれば、イサネットフレームの宛先が IFF_BROADCAST (ff:ff:ff:ff:ff:ff) になります。ところが sin.sin_addr.s_addr が 255.255.255.255 だと、default route に配

[FreeBSD-users-jp 92528] Re: UDP limited broadcast の送出方法

2009-10-02 スレッド表示 Kouichi Hirabayashi
UDP limited broadcast が送出できない問題ですが、OS を 6.1-RELEASE から 7.2- RELEASE に切替えてみたところ、 1) fd = socket(PF_INET, SOCK_RAW, IPPROTO_RAW) 2) setsockopt(fd , IPPROTO_IP, IP_ONESBCAST, ..) の組合せでうまく動作することがわかりました。注意点は 1) sin.sin_addr.s_addr は 255.255.255.255 でなく、自分の ネットワークの broadcast address にする (これで、送信