Re: UDP Broadcasts not delivered to IP address

From: David Miller
Date: Tue Mar 06 2007 - 02:09:04 EST

From: Detlef Vollmann <dv@xxxxxxxxxxx>
Date: Tue, 06 Mar 2007 07:52:56 +0100

> Bernd Eckenfels wrote:
> >
> > In article <45EC8D42.57D11665@xxxxxxxxxxx> you wrote:
> > > True, which in my case is (local broadcast).
> > > (which is internally, but not if bound to
> >
> > != - thats why you dont receive traffic for
> > if you bind to
> True, but isn't that the whole idea of broadcasts, that you get
> them even if your IP address doesn't match?
> I've read the RFCs, and I got the feeling that you should get
> them, but then the RFCs don't talk about sockets and bind...
> I'm told that other operating systems work as I expect, but I
> still have to test this.

Let's stop this idiotic thread already.

SO_BROADCAST, forever and since the beginning of time, allows your
socket to BIND to and SEND to broadcast addresses, otherwise attempts
to bind or send to broadcast addresses will error with -EACCESS.

That is the sole meaning of SO_BROADCAST, there is nothing more to it.
Please go read R. Stevens for more info, this list isn't "BSD sockets
101" :-)

Start with page 437 of TCP/IP Illustrated Volume 2, figure 15.4
"so_option" values, it explicitly states that SO_BROADCAST means
"socket can send broadcast messages" _NOT_ anything about the
socket receiving broadcast messages.

I can see where you perhaps get this idea from, the Linux section 7
man page for "socket" has language that suggests that SO_BROADCAST
influences packet reception, but this is totally wrong. It wouldn't
be the first time the Linux man pages have an inaccuracy :)

To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at