微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何解析 pcap

如何解决如何解析 pcap

我在 Go 中实现了一个被动网络监控工具,它的工作原理就像 tcpdump。我正在使用 Google 的 gopacket 库来读取和解析 pcap 文件 (https://pkg.go.dev/github.com/google/gopacket@v1.1.19#hdr-Basic_Usage)。

if handle,err := pcap.OpenOffline(pcapFileName); err != nil{
    panic(err)
} else {
    packetSource := gopacket.NewPacketSource(handle,handle.LinkType())
    for packet := range packetSource.Packets() {
        fmt.Println(packet)
        op = processthePacket(packet)
        return op
    }

但是,我无法弄清楚如何从使用 gopacket 库读取的数据包中提取源 ip、目标 ip、端口号等信息。是否有包装函数可以帮助我们提取这些细节?我需要编写一个字符串解析器,我认为这是一项乏味的任务,而且不切实际,因为 gopacket 阅读器的输出格式非常好。我是 Go 的新手,需要一些关于如何进行的输入。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。