我有一个问题,我想解码 pcap 记录的 MAC 地址并将其表示为UInt8数组中的4c:76:25:e9:78:42 。
该数组看起来像这样,它是 pcap 记录的一部分。
UInt8[0x4c, 0x76, 0x25, 0xe9, 0x78, 0x42, 0xe0, 0x0e, 0xda, 0x58 … 0x3c, 0xb6, 0x47, 0x00, 0x00, 0x00, 0xe6, 0x5a, 0xa0, 0x29]
Run Code Online (Sandbox Code Playgroud)
其他人为 Julia 0.6.4 创建的逻辑不再适用于 Julia 1.0
这是项目中的一些代码。
数据
julia> cap = PcapOffline("C:/users/XXX/desktop/31072018_1800_2000_IMSI_XXXXXXXXXXXXXXX.pcap")
PcapOffline("C:/users/XXX/desktop/31072018_1800_2000_IMSI_XXXXXXXXXXXXXXX.pcap", IOStream(<file C:/users/rsteel7/desktop/31072018_1800_2000_IMSI_XXXXXXXXXXXXXXX.pcap>), PcapFileHeader(0xa1b23c4d, 0x0002, 0x0004, 0, 0x00000000, 0x00000800, 0x00000001), PcapRec(0x00000000, 0x00000000, 0x00000000, 0x00000000, UInt8[]), true)
julia> rec = pcap_get_record(cap)
PcapRec(0x5b60a3a1, 0x1acb91ba, 0x00000082, 0x00000082, UInt8[0x4c, 0x76, 0x25, 0xe9, 0x78, 0x42, 0xe0, 0x0e, 0xda, 0x58 … 0x00, …Run Code Online (Sandbox Code Playgroud) 我有以下代码,我需要将几个 UInt32 变量转换为 UInt8 向量,然后将它们组合成一个 UInt8 向量。
目标是获取我从 Pcap 文件中解码的记录,并将其放入可以附加到现有 Pcap 文件末尾的格式。
下面的代码从前一个函数中获取输出,并返回 4 个 UInt 32 的十六进制输出和一个 UInt8 向量作为有效载荷。
function pcap_get_record(s::PcapOffline)
rec = PcapRec()
if (!eof(s.file))
rec.ts_sec = s.is_big ? read(s.file, UInt32) : ntoh(read(s.file, UInt32))
rec.ts_usec = s.is_big ? read(s.file, UInt32) : ntoh(read(s.file, UInt32))
rec.incl_len = s.is_big ? read(s.file, UInt32) : ntoh(read(s.file, UInt32))
rec.orig_len = s.is_big ? read(s.file, UInt32) : ntoh(read(s.file, UInt32))
rec.payload = read(s.file, rec.incl_len)
return rec
end
nothing
end
Run Code Online (Sandbox Code Playgroud)
谢谢