A cross-platform binding for performing packet capturing with node.js.
-
node.js -- v0.12.18 or older (you can build it on latest nodejs)
-
For Windows: WinPcap
-
For *nix: libpcap and libpcap-dev/libpcap-devel packages
npm install nodecap
- Send an arbitrary packet: An arp request for example
var nodecap=require('nodecap');
var Cap = new nodecap();
var buffer = new Buffer ([
// ETHERNET
//...
]);
try {
// send will not work if pcap_sendpacket is not supported by underlying `device`
c.sendBufer(buffer);
} catch (e) {
console.log("Error sending packet:", e);
}- List all network devices:
- capture(< integer >nbytes, < boolean >truncated) - A packet
nbytesin size was captured.truncatedindicates if the entire packet did not fit inside the Buffer supplied to open().
sendBufer
close
filter rules: http://www.tcpdump.org/manpages/pcap-filter.7.html