首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏码农桃花源

    使用 golang gopacket 实现进程级流量监控

    使用 google 提高的 gopacket 库包进行抓包, 拿到的数据往一个 channel 里面怼,如果队列满,则直接抛弃,可以理解为采样。 如何监听多个网卡 google golang gopacket 库默认只能 openlive 一个网卡,没找到可以 openlive 多个设备网卡的相关方法。 那么在 gopacket 如何实现多个设备网卡监听?实例化多个 openlive 实例不就行了,我居然还还提了 issue 询问该问题,当然没人回复我了。 CPU的开销主要在 google gopacket 调用上, cgo 的调用一点也不便宜, 暂时没有好的方法来优化。另外, 进程的流量监控无需太细致,粗粒度采样足够了。 ----

    5.3K10发布于 2021-11-10
  • 来自专栏睿哥杂货铺

    基于Go Packet实现网络数据包的捕获与分析

    Capturing How can it be used What is libpcap Debug Tools: tcpdump & WinPcap & snoop What is BPF What is gopacket " "github.com/google/gopacket/layers" "github.com/google/gopacket/pcap" ) func main() { fmt.Println " "github.com/google/gopacket/layers" "github.com/google/gopacket/pcap" ) func main(){ handle, err " "github.com/google/gopacket/layers" "github.com/google/gopacket/pcap" "log" "net" buffer = gopacket.NewSerializeBuffer() gopacket.SerializeLayers(buffer, options, &layers.Ethernet

    6.9K101发布于 2018-01-20
  • 来自专栏人人都是架构师

    Go每日一库之117:gopacket(网络数据抓包)

    gopacket是什么? gopacket是google出品的golang三方库,质量还是靠的住,项目地址为:github.com/google/gopacket gopacket到底是什么呢? 打开一个设备进行抓包 package main import ( "fmt" "github.com/google/gopacket" "github.com/google/gopacket Layers包是gopacket的Go库中的新功能,在底层libpcap库中不存在。它是gopacket库的非常有用的一部分。它允许我们轻松地识别数据包是否包含特定类型的层。 package main import ( "fmt" "github.com/google/gopacket" "github.com/google/gopacket/layers /gopacket/pcap" "github.com/google/gopacket/tcpassembly" "github.com/google/gopacket/tcpassembly/tcpreader

    6K40编辑于 2023-09-30
  • 来自专栏landv

    [golang] 抓包注入分析

    /content/packet-capture-injection-and-analysis-gopacket 子包: github.com/google/gopacket github.com/google /gopacket/pcap github.com/google/gopacket/layers :解析包用的最多的就是这个包 github.com/google/gopacket/pcapgo 类型: ( packet, layers.LayerTypeEthernet, gopacket.Default) // 复制一份包 // 解析 IP 层 ipPacket := gopacket.NewPacket ( packet, layers.LayerTypeIPv6, gopacket.NoCopy) // 不复制,所以不要修改 // 解析 TCP 层 tcpPacket := gopacket.NewPacket ( data, MyLayerType, gopacket.Default, ) 构造包 buffer = gopacket.NewSerializeBuffer() options := gopacket.SerializeOptions

    3.6K50发布于 2019-08-01
  • 来自专栏网络安全随笔

    Windos10及以上系统实现SNAT功能

    Codepackage mainimport ("fmt""log""net""github.com/google/gopacket""github.com/google/gopacket/layers = nil {log.Fatal(err)}// handle packetpacketSource := gopacket.NewPacketSource(handle, handle.LinkType := gopacket.NewDecodingLayerParser(layers.LayerTypeEthernet,ðLayer,&ipLayer,&icmpLayer,&payload,) {ComputeChecksums: true, FixLengths: true}buffer := gopacket.NewSerializeBuffer()gopacket.SerializeLayers {ComputeChecksums: true, FixLengths: true}buffer := gopacket.NewSerializeBuffer()gopacket.SerializeLayers

    73110编辑于 2025-02-05
  • 来自专栏Golang语言社区

    用Go开发可以内网活跃主机嗅探器

    源码相关: https://github.com/timest/goscan 文章关键词 go/golang gopacket 抓包 pcap/libpcap arp nbns mdns manuf gopacket有封装好的ARP报文: type ARP struct { BaseLayer AddrType LinkType // 硬件类型 Protocol net.HardwareAddr{0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, DstProtAddress: dstIp, } buffer := gopacket.NewSerializeBuffer () var opt gopacket.SerializeOptions gopacket.SerializeLayers(buffer, opt, ether, a) outgoingPacket log.Fatal("pcap打开失败:", err) } defer handle.Close() handle.SetBPFFilter("arp") ps := gopacket.NewPacketSource

    4.6K90发布于 2018-03-28
  • 来自专栏让技术和时代并行

    基于网络抓包实现K8S中微服务的应用级监控

    得益于谷歌的包: github.com/google/gopacket github.com/google/gopacket/layers github.com/google/gopacket/pcap } else { log.Infoln("Start listen the device ", device) packetSource := gopacket.NewPacketSource tcp := &layers.TCP{} err := tcp.DecodeFromBytes(tran.LayerContents(), gopacket.NilDecodeFeedback

    91820编辑于 2023-03-18
  • 来自专栏七夜安全博客

    一些比较好的golang安全项目

    go-internals - 深入理解Go语言 The Little Go Book - Google Go语言编程书 book - 雨痕Go 学习笔记 Hacking-with-Go - Golang黑客编程 库 gopacket

    3.9K20发布于 2019-03-04
  • 来自专栏Seebug漏洞平台

    从 Masscan, Zmap 源码分析到开发实践

    在上面分析中知道了,Masscan和Zmap都使用了pcap,pfring这些组件来原生发包,值得高兴的是go官方也有原生支持这些的包 https://github.com/google/gopacket package main import ( "fmt" "github.com/google/gopacket" "github.com/google/gopacket/layers" "github.com /google/gopacket/pcap" "log" "net" "sync" "time" ) var ( SrcIP string = "10.x.x.x" // promiscuous, timeout) // Use the handle as a packet source to process all packets packetSource := gopacket.NewPacketSource () err := gopacket.SerializeLayers( buf, gopacket.SerializeOptions{

    2.1K30发布于 2019-10-15
  • 来自专栏Go工具箱

    「Go工具箱」强烈推荐:一个能让http请求回放的工具

    其抓包原理是基于https://github.com/google/gopacket包实现的。

    1K10编辑于 2023-01-31
  • 来自专栏睿哥杂货铺

    我的2017年度盘点

    Cyber-Security: IPv6 & Security Cyber-Security: 中国香港警务处网络安全与科技罪案调查科 浅谈基于数据分析的网络态势感知 网络数据包的捕获与分析(libpcap、BPF及gopacket

    1.1K80发布于 2018-01-12
  • 来自专栏k8s技术圈

    使用 k8spacket 与 Grafana 可视化 K8s Tcp流量

    介绍 k8spacket 是用 Golang 编写的一个工具,它使用 gopacket 第三方库来嗅探工作负载上的 TCP 数据包(传入和传出),它在运行的容器网络接口上创建 TCP 监听器。

    1.6K10编辑于 2022-12-29
  • 来自专栏FreeBuf

    如何使用GoReplay实时捕捉和分析HTTP流量

    以然后安装gopacket,即针对libpcap的Go封装器。

    2.5K20编辑于 2023-03-30
  • 来自专栏golang算法架构leetcode技术php

    mac 上学习k8s系列(52)goreplay流量录制

    goreplay(https://github.com/buger/goreplay)是基于libpcap的流量录制工具,它依赖包https://github.com/google/gopacket ,而gopacket是对libpcap和npcap的go封装。

    1K30编辑于 2022-12-17
  • 来自专栏数通

    一款开源网络流量监控与威胁检测工具,高颜值、跨平台

    强悍的抓包能力 采用 gopacket 和 pcap 技术栈,FastMonitor 能够高效捕获网络数据包,并自动按照五元组会话进行分类。

    1.4K10编辑于 2025-12-31
  • 来自专栏方亮

    AWS攻略——初识流量镜像

    cd $GOPATH"/src/vxlan-to-http-request" go mod init vxlan-to-http-request go get "github.com/google/gopacket

    1.9K10编辑于 2023-03-16
  • 来自专栏老张的求知思考世界

    流量录制回放,不是银弹!

    一个开源的流量回放工具,支持多种类型流量的实时及离线回放; Sharingan:基于Golang的流量录制回放工具,通过修改Golang源码,加钩子拦截并镜像流量; GoReplay:Golang编写的开源工具,利用gopacket

    1.5K10编辑于 2024-03-04
  • 来自专栏小陈运维

    kubernetes 的TCP 数据包可视化

    kubernetes 的TCP 数据包可视化介绍k8spacket是用 Golang 编写的工具,它使用gopacket第三方库来嗅探工作负载(传入和传出)上的 TCP 数据包。 listen refreshPeriod: "10s" assembler: ## See: https://pkg.go.dev/github.com/google/gopacket

    1.5K11编辑于 2022-10-27
  • 来自专栏睿哥杂货铺

    SDN 技术指南(四):Open vSwitch

    Preview SDN 技术指南(七):产业联盟与标准化组织 Preview SDN 技术指南(八):案例 浅谈基于数据分析的网络态势感知 网络数据包的捕获与分析(libpcap、BPF及gopacket

    3.3K61发布于 2018-01-13
  • 来自专栏跟着asong学Golang

    一个Go语言实现的流量回放工具

    即数据包捕获函数库,tcpdump也是基于这个库实现的,Libpcap是C语言写的,Go语言不能直接调用C语言,需要使用CGo,所以goreplay可以直接使用谷歌的包github.com/google/gopacket

    1.6K10编辑于 2022-12-08
领券