1
A
回答
1
如果您接收到带有原始套接字的UDP数据报,则可以检查TTL(或IP或UDP标头中的其他任何内容)。有很多陷阱,虽然:
- 原始套接字非本地到Java(虽然至少一个多平台的第三方插件可用:http://www.savarese.org/software/rocksaw/index.html)。
- 在大多数操作系统中,你必须有root权限或管理员权限才能使用原始套接字
- 如果你想同时使用UDP数据,你就必须做校验和零散的数据报的重组自己......以及可能遇到不同的片段之间的TTL(正如jambjo所说的)。
0
我看着(正如我想象你做的那样),但找不到一个很好的Java API来做到这一点。
TTL是IPv4数据报中的第9个完整字节。如果从输入的数据报中输出DatagramPacket的第9个字节,会发生什么?这看起来像TTL值吗?或者,来自IP数据报的报头是否在DatagramPacket中不可用,只有IPv4数据报的数据部分?
1
什么是抵达包?实际上,数据报或UDP数据包可能会被拆分为多个IP数据包,如果路由不同,则数据包将以不同的TTL到达。在任何一种情况下(分裂或不分裂),Java都不提供对IP头的访问。
相关问题
- 1. Java Media Framework始终生成TTL = 1的多播数据包
- 2. 在java中剩余天数
- 3. Java剩余整数分区?
- 4. 如何确定C#中多播数据包的源IP?
- 5. heroku数据库中的剩余空间?
- 6. 剩余的Java客户端?
- 7. lmdb:如何确定剩余空间?
- 8. 查询以确定表中剩余的未使用分区数
- 9. Haskell中国剩余定理
- 10. 如何获取mongo的剩余TTL文档
- 11. 为什么我的java程序会发送TTL为1的组播数据包?
- 12. 确定绘图应用程序剩余多少空间
- 13. 如何在Java中获取UDP数据包的TTL?
- 14. 如何确定在日志中剩下多少数据
- 15. 表格传播剩余空间
- 16. PowerShell中的包装函数:传递剩余参数
- 17. 的剩余天
- 18. 剩余的值
- 19. 确定项目显示在网格中的剩余部分 - PHP
- 20. 一系列工作在java中的多余剩余*如何工作?
- 21. itextpdf不创建多个页面来打印剩余的数据
- 22. 如何使用jQuery确定给定类的剩余元素?
- 23. 计数剩余天数
- 24. 如何在Java中获取定时器的剩余时间?
- 25. 在DB2中划分剩余的剩余部分SQL
- 26. 一年中的剩余天数
- 27. 解码数据包 - 广播或多播
- 28. 计算剩余天数
- 29. 输入剩余素数
- 30. 计算剩余天数
经过一番进一步的调查,我认为这是不可能从纯Java。 如果我愿意使用JNI,我认为可以使用rocksaw库完成:http://www.savarese.com/software/rocksaw/ – 2009-11-12 17:30:17