创建自定义UDP数据包

时间:2016-12-09 20:40:03

标签: udp packets

我正在尝试与我的互联网连接燃气火灾接口。制造商告诉我,我可以在UDP端口3300上与它通信。

他说我可以将包含“SEARCH_FOR_FIRES”信息的数据包发送到本地子网地址以接收回复。

数据包应按15个字节组成,如下所示:

字节1:StartByte(0x47'G') 字节2:命令ID 字节3:DataSize 字节4-13:数据 字节15:CRC 字节15:结束字节(0x46'F')

他们给出了0x473100000000000000000000003146作为示例。 31是“SEARCH_FOR_FIRES”命令的命令ID。

唯一的问题是我不知道如何创建这些数据包...我正在使用Packet Sender的Windows版本,它让我可以选择输入ASCII或HEX值。到目前为止,我有:

HEX:47 31 00 03 01 46 ASCII:G1 \ 00 \ 03 \ 01F

但它们似乎都没有用,但我不知道如何找到相当于0x473100000000000000000000003146的HEX。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

嗯,这听起来很奇怪,但十六进制相当于0x473100000000000000000000003146是...... 0x473100000000000000000000003146本身:)" 0x"代表十六进制表示,后面跟十六进制数字,所以你需要通过" 47 31 00 00 00 00 00 00 00 00 00 00 00 31 46"发送数据包。

顺便问一下,你知道成功发送数据包对设备有什么期望吗?设备是否应该执行一些明显的处理指示" SEARCH_FOR_FIRES"命令?有可能,该设备将静默地将UDP数据包中的某些报告发送给您,因此您可能需要设置网络捕获(例如wireshark)以查看和分析响应。