The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::Inspect::L3::IP - get raw IP packets, reassemble fragments

SYNOPSIS

 my $raw = Net::Inspect::L3::IP->new($tcp);
 $raw->pktin($data,$timestamp);

DESCRIPTION

Gets Raw-IP packets via pktin hook, extracts meta-data, reassembles fragmented packets and calls pktin hook on attached flows, once for each full packet.

Provides the hooks required by Net::Inspect::L2::Pcap. Usually Net::Inspect::L4::TCP or similar are used as upper flow.

Constructor:

new(%args)

The only used argument is %args is timeout, which specifies when timeout in seconds, after which the next fragment of a packet must be received. Defaults to 60.

Hooks provided:

pktin($data,$timestamp)

Hooks called:

pktin($ip_data,\%meta)

The following meta data are given:

time

time when the last fragment of the packet was received. Like time_t, but double.

saddr, daddr

the addresses of the sender and destination of the packet

proto

protocol of the packet

qos

QoS (IPv4) flags or Type Of Service (IPv6) of the packet

ttl

TTL (IPv4) or hoplimit (IPv6) counter of the packet

flowlabel

flow label (IPv6 only)

id

id of the packet (IPv4 only)

fragments

Number of fragments or undef if packet wasn't fragmented (IPv4 only)

LIMITS