pcap
libpnet
pcap | libpnet | |
---|---|---|
5 | 4 | |
575 | 2,173 | |
1.0% | 1.0% | |
7.6 | 4.2 | |
13 days ago | 15 days ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pcap
-
Packet capture (use PcapPlusPlus in Rust?)
Hey, I'm looking for the best way to do packet capture in Rust. I've looked at both libpnet and pcap crates, and they both seem way less mature and with less functionality than the PcapPlusPlus library, which seems to be the golden suite of packet capture and manipulation.
-
Cannot read packets from tun interface using libpnet
I've also had issues with the pnet crate, I ended up using pcap to do the capturing and transmitting instead, while still using the parsing/construction utilities provided by pnet
-
Help with packet sniffing and parsing in rust
I can not find, the original project, or example, so here is mine: https://github.com/sleepy771/rustacap/blob/master/src/main.rs (it probably does not work, because each of the libraries used has evovlved). Basically it caputred packets on interface using pcap (libpcap) and then parsed them using nom.
-
Tool that exports wifi information?
If you are willing to put in some work, you can capture beacon frames ib realtine with https://github.com/ebfull/pcap .
-
Getting into network programming with Rust, can I listen to incoming connections on a port that another application(Nodejs server) is using?
You should be able to use https://github.com/ebfull/pcap to do that
libpnet
-
Packet capture (use PcapPlusPlus in Rust?)
Hey, I'm looking for the best way to do packet capture in Rust. I've looked at both libpnet and pcap crates, and they both seem way less mature and with less functionality than the PcapPlusPlus library, which seems to be the golden suite of packet capture and manipulation.
-
tcpdump is amazing (2016)
> I mentioned really briefly that tcpdump lets you save pcap files. This is awesome because literally every network analysis tool in the universe understands pcap files. pcap files are like freshly baked chocolate chip cookies. Everybody loves them.
OMG, yes, very well put. When I get a bug report with a pcap file I know I'll be able to know exactly what happened.
Speaking of which: for one of my libraries, I want to make a diagnostic tool that replays an interaction. My library mostly operates at the TCP level (also some UDP), so I need to reconstruct the TCP flows in my tool to feed to my library. Either I need an easy-to-use Rust library to do that directly from pcap files [1] or some format that represents bytes moving over the flow (like sets of lines with a timestamp, flow id, and pretty hexdump of the bytes) with a tool that produces it from pcap. This seems like something that should exist? Wireshark's “Analyze > Follow > TCP Stream”’s “Save As…” with "hex dump" is kind of what I want, but it doesn't have timestamps, and it doesn't have a way to put everything (multiple flows, UDP packets also) in one file.
[1] https://crates.io/crates/pnet looks promising but it wasn't as obvious as I hoped how to plug it in for what I want.
-
Low Level Networking/Packet Manipulation
libpnet provides a cross-platform API for low level networking using Rust.
- TCP Assembly library?
What are some alternatives?
Dust-tools - A set of tools for exploring network filtering
tokio
tcp-streams - One stop solution for tcp client and server with tls support.
MIO - Metal I/O library for Rust.
memcache-conduit
protocol - Easy protocol definitions in Rust
curl - A Haskell binding to the curl library
actix - Actor framework for Rust.
nom - Rust parser combinator framework
hydrogen - Multithreaded, non-blocking Linux server framework in Rust
json-rpc - Fully-featured JSON-RPC 2.0 library for Haskell programs
zenoh - zenoh unifies data in motion, data in-use, data at rest and computations. It carefully blends traditional pub/sub with geo-distributed storages, queries and computations, while retaining a level of time and space efficiency that is well beyond any of the mainstream stacks.