1) 修改单播UDP的TTL值TCP以及TCP传输时的TTL值.
2) 纯java实现。因为跨平台的原因,原则上不考虑jni的实现。但是如果针对常见的linux发行版以及Mac OS.Windows等都有流畅稳定的实现,也可以考虑接受。
3) 必须提供具体详细的解决方案。以及相关的代码,Demo,编译环境编译条件等等。详情:http://www.misuland.com/project/selectProjectdetailByidAction.do?id=64
2) 纯java实现。因为跨平台的原因,原则上不考虑jni的实现。但是如果针对常见的linux发行版以及Mac OS.Windows等都有流畅稳定的实现,也可以考虑接受。
3) 必须提供具体详细的解决方案。以及相关的代码,Demo,编译环境编译条件等等。详情:http://www.misuland.com/project/selectProjectdetailByidAction.do?id=64
这个班哪个哥们像我这么傻,曾经改IP头玩?Java连TCP包头都改不了哦。
将会用到MulticastSocket,DatagramSocketImpl,DatagramSocket等,要继承这些类,重写他们中的setTTL,getTTL方法.虽然在java中有这些方法,但在目前这些方法是不能执行的,也就是目前还没有人去做这一块.只提供了这样一个框架.
这个不是TTL,TTL只有8位
jvm的native如果没有实现,即便有被废除的方法,重写也没用
何况,这样的做法相当于在重写jvm,变动绝不是一个类那么简单
就算实现了,在不同os上的性能也不好说
最好的办法还是native调用。jni没什么不可以的,很多第三方包都是jni调用,tomcat也有,只不过对不通的os,jni调用不同而已
自己写一个包,对常见os都做实现就可以了,这样效率会高一些不过还是不明白,什么样的项目需要改这个东西,这么底层,为什么还要用java呢