作爲家庭作業的一部分,我必須在Linux中編寫一個C程序,該程序使用原始套接字生成對ICMP Echo請求的ICMP回覆。 ICMP數據包中的數據是否也必須包含在校驗和中?或者我應該只計算頭的校驗和?ICMP頭校驗和是否也包含數據?
2
A
回答
9
它必須從HEADER + DATA計算。執行計算時,讓校驗和爲零,然後將其替換。
從RFC 792報價頁面14(回聲或迴應應答消息):
校驗和是16位的人的開始與所述ICMP類型ICMP消息中的所述一個的 補體總和的補體。 爲了計算校驗和,校驗和字段應該爲零。 如果總長度爲奇數,則接收到的數據將填充一個 八位字節以計算校驗和。這個校驗和可能在將來被替換爲 。
+0
參考請 – 2011-02-06 01:01:48
相關問題
- 1. ICMP指針和校驗和
- 2. ICMP校驗和卸載
- 3. TCP數據包的MTU是否包含TCP和IPv4標頭?
- 4. 是否有一個校驗和算法也支持「減量」數據?
- 5. 包含之前的PHP校驗和()
- 6. mongod Configserver是否也包含數據(元數據除外)?
- 7. 包密鑰和校驗和
- 8. ICMP回覆數據包
- 9. 是否有可能在休眠住校驗數據和
- 10. 驗證newData是否包含Firebase數據庫規則的數組
- 11. 根據數據扭轉校驗和
- 12. 正則表達式來驗證數據是否包含數字(或空也是有效的)
- 13. 包括Http請求標頭中的校驗和
- 14. 什麼是校驗UDP數據包的正確方法
- 15. libnet創建帶有無效校驗和的UDP數據包
- 16. 分片數據包的TCP校驗和錯誤
- 17. 如何計算數據包校驗和而不發送它?
- 18. CRC8保護數據包的最佳8位補充校驗和
- 19. 檢測收集是否包含數據
- 20. StorageFile是否包含數據(windwos電話)
- 21. 透明細胞是否包含數據
- 22. Fletchers16校驗和適合小數據嗎?
- 23. SQLite數據庫的校驗和?
- 24. 數據包捕獲:帶有FIN標誌的數據包是否也有數據?
- 25. flyway - 校驗和概念的含義
- 26. jconsole的dumpheap是否也包含jmx計數器?
- 27. 端口掃描器 - icmp數據包
- 28. 如何驗證兩個SQL Server數據庫是否包含相同的數據?
- 29. 驗證數據是否包含刪除前的其他表的數據
- 30. SQLite校驗其數據嗎?
因爲問題中沒有C代碼,所以刪除`c`標記並添加`networking`標記。 =) – mpontillo 2011-02-06 02:59:47