【发布时间】:2010-12-18 13:59:09
【问题描述】:
我想计算我要发送的 UDP 标头数据包的校验和:
packetosend = """60 00 00 00 00 24 3a 40 20 02 c0 a8 01 50 00 01 00 00
00 00 00 00 09 38 20 02 c0 a8 01 50 00 01 00 00 00 00 00 00 09 6f"""
所以我需要加入这个 utf-16(不是问题)并计算 这个 特定数据包的校验和。我该怎么做?
谢谢!
编辑:是的,它是 ICMPv6 数据包的 IPv6 标头,无论如何我想知道的是公式,以及它是如何工作的。
我再举一个 ICMP ping echo (v4) 数据包的例子:
packet = """
08 00 d1 15 76 0c 00 07 bf d3 55 4a ad b5 03 00 // "d1 15" is the packet checksum
08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17
18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27
28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37"""
谢谢。
【问题讨论】:
-
当您查看
hashlib的文档时,您看到了什么?
标签: python networking checksum packet