In Java, is there a way to control the TTL of the IP header for packets sent on a socket?
Setting the TTL using
MulticastSocket.setTimeToLive(int ttl);
is only going to work if you have enabled the IPV4Stack as outlined by this other question
Java Multicast Time To Live is always 0
-Djava.net.preferIPv4Stack=true
Apparently only on Multicast sockets, which have:
MulticastSocket.setTimeToLive(int ttl);