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