IPv4 packet capture on Windows without a kernel driver.
npm install raw-socket-sniffer
javascript
'use strict';
const sniff = require('raw-socket-sniffer');
sniff('192.168.0.3', (packet) => console.log(packet));
`
Example Output
`javascript
{
ethernet_header: {
mac_addr_dst: '00:00:00:00:00:00', // fake, always zeros
mac_addr_src: '00:00:00:00:00:00', // fake, always zeros
eth_type: 8 // always 8
},
ipv4_header: {
ip_version_number: 4, // always 4
ihl: 5,
bytes_length: 20,
service_type: 0,
total_length: 22784,
id: 40055,
flags: '0000',
fragment_offset: 0, // incorrect due to unfixed bug in parse_ipv4.js
time_to_live: 255,
protocol: 'UDP',
header_checksum: 16034,
src_addr: 'xxx.xxx.xxx.xxx',
dst_addr: 'xxx.xxx.xxx.xxx'
},
packet_header: { port_src: 5353, port_dst: 5353, length: 69, checksum: 11246 }, // only UDP packets are parsed
payload:
}
``