<p>I have a problem with setting the TTL on my Datagram packets.  I am calling the setTTL(...) method on the packet before sending the packet to the multicastSocket but if I capture the packet with ethereal the TTL field is always set to 0</p>

Basically you have to set an special system property telling the JVM to use an IPv4 stack:
```
```
-Djava.net.preferIPv4Stack=true
```
```