Java多播生存时间始终为0

时间:2020-03-06 14:47:16  来源:igfitidea点击:

我在Datagram数据包上设置TTL时遇到问题。在将数据包发送到multicastSocket之前,我在数据包上调用setTTL(...)方法,但是如果我以空灵捕获数据包,则TTL字段始终设置为0

解决方案

有趣的是,我们应该问这个问题,因为我昨天才写过这个问题,所以大约6个月前我遇到了同样的问题。基本上,我们必须设置一个特殊的系统属性,告诉JVM使用IPv4堆栈:

-Djava.net.preferIPv4Stack=true