Skip to content
Kent 'picat' Gruber edited this page Dec 17, 2017 · 5 revisions

What is this?

Packetz is a network packet capturing library for Crystal built with LibPcap.

Why LibPcap?

LibPcap is used by industry-standard tools like Wireshark, tcpdump, and plenty more. Interfacing with this library felt natural and was genuinely trivial with the power of the Crystal language.

Improving the LibPcap API with Crystal

This project attempts to abstract away some of the not-so-nice features of LibPcap. You can easil run into things like depreciated functions we don't use and we refuse to use non-thread-safe function calls wherever possible under the hood.

You also won't need to remember any of LibPcap's more confusing naming conventions either! Everything you need has been turned into a friendly Crystal method.

Use Cases

Right now, packetz is best suited to be used as a packet capturing tool. You can setup captures in monitor mode, get the default network interface name to listen on and even list out all the available network interfaces available to capture on -- and that's just a few of the thing you can do out of the box.

This allows you to build simple packet capturing and network interface tooling to fit your needs.

Clone this wiki locally