Subject: Re: Broadcast and multi-homed routing condition in TCP/IP stack.
To: Kenny Jansson <kenson@SENTOR.SE>
From: Charles M. Hannum <root@ihack.net>
List: tech-net
Date: 03/07/2001 10:55:15
On Wed, Mar 07, 2001 at 04:26:41PM +0100, Kenny Jansson wrote:
>
> Some stacks will allow TCP connection to be established to the broadcast
> address configured on any given interface.
> 
> FreeBSD has had this behaviour for some time 4.x
> up until 2001/03/03 17:39:20 PST when a fix was comitted to RELENG_4
> 
> OpenBSD also exhibits this behaviour. (Tested on 2.7)

A few notes.  Net/2 and 4.4BSD had explicit code of the form:

	case TCPS_LISTEN: {
...
		if (m->m_flags & M_BCAST)
			goto drop;
...

This code lives on in a slightly different form in all of the systems
today.

It's true that this doesn't catch packets that are sent by Ethernet
unicast to the IP broadcast address.  I'm not sure what the prevailing
opinion on this is, but we should probably filter such packets.