https://github.com/x-way/pktdump
Format gopacket.Packet network packets similar to the tcpdump CLI output
https://github.com/x-way/pktdump
golang gopacket tcpdump
Last synced: about 1 year ago
JSON representation
Format gopacket.Packet network packets similar to the tcpdump CLI output
- Host: GitHub
- URL: https://github.com/x-way/pktdump
- Owner: x-way
- License: mit
- Created: 2019-08-10T17:56:20.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2025-04-08T02:53:04.000Z (about 1 year ago)
- Last Synced: 2025-04-10T06:21:05.594Z (about 1 year ago)
- Topics: golang, gopacket, tcpdump
- Language: Go
- Size: 2.47 MB
- Stars: 5
- Watchers: 2
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pktdump
[](https://circleci.com/gh/x-way/pktdump/tree/master)
[](https://godoc.org/github.com/x-way/pktdump)
[](https://goreportcard.com/report/github.com/x-way/pktdump)
[](https://codecov.io/gh/x-way/pktdump/)
Format gopacket.Packet network packets similar to the tcpdump CLI output
## example
```
package pktdump_test
import (
"fmt"
"github.com/google/gopacket"
"github.com/google/gopacket/layers"
"github.com/x-way/pktdump"
)
func ExampleFormat() {
raw := []byte{0x45, 0x00, 0x00, 0x42, 0x9a, 0x66, 0x00, 0x00, 0x40, 0x11, 0xce, 0xc0, 0xc0, 0xa8, 0x48, 0x32, 0xc0, 0xa8, 0x48, 0x01, 0xfb, 0x6a, 0x00, 0x35, 0x00, 0x2e, 0x02, 0xeb, 0x29, 0x84, 0x01, 0x20, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x73, 0x69, 0x67, 0x69, 0x6e, 0x74, 0x02, 0x63, 0x68, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x29, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
packet := gopacket.NewPacket(raw, layers.LayerTypeIPv4, gopacket.Default)
fmt.Println(pktdump.Format(packet))
}
```
This would produce the following result
```
IP 192.168.72.50.64362 > 192.168.72.1.53: 10628+ [1au] A CH? sigint.ch. (38)
```