TTL ignored when sending Multicast UDP Datagram to IPv4 address via IPv6 socket

Don Coleman dcoleman at chariotsolutions.com
Thu May 31 20:50:01 PDT 2007


I'm have a problem setting TTL when sending Multicast packets to an
IPv4 address over an IPv6 socket.

Setting the TTL in Java has no effect when sending to an IPv4 address.
 It is always 1.

This is only a problem on Linux, it works fine on OS X, Solaris and Windows.

This problem exists with JDK5, but it looks like it's also in the JDK7 code.

https://openjdk.dev.java.net/source/browse/openjdk/jdk/trunk/j2se/src/solaris/native/java/net/PlainDatagramSocketImpl.c?annotate=237

on line 1873 IPV6_MULTICAST_HOPS is set
for Linux I think we need also need to set IP_MULTICAST_TTL

I've attached sample Java and C code that demonstrates the problem
here https://bugs.launchpad.net/ubuntu/+bug/112257

Any thoughts if this is a Java problem or a Linux kernel bug?



More information about the net-dev mailing list