svn commit: r206452 - head/sys/netinet
bms at incunabulum.net
Fri Apr 16 10:21:11 UTC 2010
On 04/16/10 09:23, Alexander Leidinger wrote:
>> IP multicast group membership is always scoped to physical links .
>> The 4.4BSD API originally used the "primary IP address" to identify
>> each link. Unfortunately this is not a persistent identifier,
>> especially so in the use-case which had problems.
> Is/was this the reason why multicast does not work in jails?
The above point is totally unrelated to jail.
I think the problem with jail is the fact that to receive multicast,
sockets normally need to be bound to INADDR_ANY. Obviously, jail changes
socket behaviour in interesting ways.
This may require refactoring udp_input() considerably. We use the 4.4BSD
legacy LIST_FOREACH() loop to deliver, rather than using a fan-in map
(which is the Windows/Solaris approach).
Linux also has 4.4BSD semantics, but can work around this by examining
the SO_BINDTODEVICE option in the same path.
More information about the svn-src-all