DPKT
Tools¶
pcapkit.toolkit.dpkt
contains all you need for
pcapkit
handy usage with DPKT engine. All reforming
functions returns with a flag to indicate if usable for
its caller.
- pcapkit.toolkit.dpkt.ipv4_reassembly(packet, *, count=-1)[source]¶
Make data for IPv4 reassembly.
- Parameters
- Return type
IP_Packet[IPv4Address] | None
- Returns
Data for IPv4 reassembly.
If the
packet
can be used for IPv4 reassembly. A packet can be reassembled if it contains IPv4 layer (dpkt.ip.IP
) and the DF (dpkt.ip.IP.df
) flag isFalse
.If the
packet
can be reassembled, then thedict
mapping of data for IPv4 reassembly (ipv4.packet) will be returned; otherwise, returnsNone
.
See also
pcapkit.foundation.reassembly.ipv4.IPv4Reassembly
- pcapkit.toolkit.dpkt.ipv6_reassembly(packet, *, count=-1)[source]¶
Make data for IPv6 reassembly.
- Parameters
- Return type
IP_Packet[IPv6Address] | None
- Returns
Data for IPv6 reassembly.
If the
packet
can be used for IPv6 reassembly. A packet can be reassembled if it contains IPv6 layer (dpkt.ip6.IP6
) and IPv6 Fragment header (RFC 2460#section-4.5,dpkt.ip6.IP6FragmentHeader
).If the
packet
can be reassembled, then thedict
mapping of data for IPv6 reassembly (ipv6.packet) will be returned; otherwise, returnsNone
.
See also
pcapkit.foundation.reassembly.ipv6.IPv6Reassembly
- pcapkit.toolkit.dpkt.tcp_reassembly(packet, *, count=-1)[source]¶
Make data for TCP reassembly.
- Parameters
- Return type
TCP_Packet | None
- Returns
Data for TCP reassembly.
If the
packet
can be used for TCP reassembly. A packet can be reassembled if it contains TCP layer (dpkt.tcp.TCP
).If the
packet
can be reassembled, then thedict
mapping of data for TCP reassembly (tcp.packet) will be returned; otherwise, returnsNone
.
See also
pcapkit.foundation.reassembly.tcp.TCPReassembly
- pcapkit.toolkit.dpkt.tcp_traceflow(packet, timestamp, *, data_link, count=-1)[source]¶
Trace packet flow for TCP.
- Parameters
- Return type
TF_Packet | None
- Returns
Data for TCP reassembly.
If the
packet
can be used for TCP flow tracing. A packet can be reassembled if it contains TCP layer (dpkt.tcp.TCP
).If the
packet
can be reassembled, then thedict
mapping of data for TCP flow tracing (trace.packet) will be returned; otherwise, returnsNone
.
- pcapkit.toolkit.dpkt.ipv6_hdr_len(ipv6)[source]¶
Calculate length of headers before IPv6 Fragment header.
- Parameters
ipv6 (IP6) – DPKT IPv6 packet.
- Return type
- Returns
Length of headers before IPv6 Fragment header
dpkt.ip6.IP6FragmentHeader
(RFC 2460#section-4.5).
As specified in RFC 2460#section-4.1, such headers (before the IPv6 Fragment Header) includes Hop-by-Hop Options header
dpkt.ip6.IP6HopOptsHeader
(RFC 2460#section-4.3), Destination Options headerdpkt.ip6.IP6DstOptHeader
(RFC 2460#section-4.6) and Routing headerdpkt.ip6.IP6RoutingHeader
(RFC 2460#section-4.4).