pypacker.layer3 package¶
Submodules¶
pypacker.layer3.esp module¶
Encapsulated Security Protocol.
-
class
pypacker.layer3.esp.
ESP
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('spi', 'I', 0), ('seq', 'I', 0))¶
-
seq
¶ Unpack field ondemand
-
spi
¶ Unpack field ondemand
-
pypacker.layer3.icmp module¶
Internet Control Message Protocol for IPv4.
-
class
pypacker.layer3.icmp.
ICMP
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
class
Echo
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('id', 'H', 0), ('seq', 'H', 1), ('ts', 'd', 0))¶
-
id
¶ Unpack field ondemand
-
seq
¶ Unpack field ondemand
-
ts
¶ Unpack field ondemand
-
-
class
ICMP.
Redirect
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('gw', 'I', 0), ('seq', 'H', 0))¶
-
gw
¶ Unpack field ondemand
-
seq
¶ Unpack field ondemand
-
-
class
ICMP.
Unreach
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('pad', 'H', 0), ('mtu', 'H', 0))¶
-
mtu
¶ Unpack field ondemand
-
pad
¶ Unpack field ondemand
-
-
ICMP.
__hdr__
= (('type', 'B', 8), ('code', 'B', 0), ('sum', 'H', 0, True))¶
-
ICMP.
bin
(update_auto_fields=True)¶
-
ICMP.
code
¶ Unpack field ondemand
-
ICMP.
sum
¶ Unpack field ondemand
-
ICMP.
sum_au_active
= True¶
-
ICMP.
type
¶ Unpack field ondemand
-
class
pypacker.layer3.icmp6 module¶
Internet Control Message Protocol for IPv6.
-
class
pypacker.layer3.icmp6.
ICMP6
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
class
Echo
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('id', 'H', 0), ('seq', 'H', 0))¶
-
id
¶ Unpack field ondemand
-
seq
¶ Unpack field ondemand
-
-
class
ICMP6.
Error
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('pad', 'I', 0),)¶
-
pad
¶ Unpack field ondemand
-
-
class
ICMP6.
ParamProb
(*args, **kwargs)¶ Bases:
pypacker.layer3.icmp6.Error
-
__hdr__
= (('ptr', 'I', 0),)¶
-
ptr
¶ Unpack field ondemand
-
-
class
ICMP6.
TimeExceed
(*args, **kwargs)¶ Bases:
pypacker.layer3.icmp6.Error
-
pad
¶ Unpack field ondemand
-
-
class
ICMP6.
TooBig
(*args, **kwargs)¶ Bases:
pypacker.layer3.icmp6.Error
-
__hdr__
= (('mtu', 'I', 1232),)¶
-
mtu
¶ Unpack field ondemand
-
-
ICMP6.
__hdr__
= (('type', 'B', 0), ('code', 'B', 0), ('sum', 'H', 0))¶
-
ICMP6.
code
¶ Unpack field ondemand
-
ICMP6.
sum
¶ Unpack field ondemand
-
ICMP6.
type
¶ Unpack field ondemand
-
class
pypacker.layer3.igmp module¶
Internet Group Management Protocol.
-
class
pypacker.layer3.igmp.
IGMP
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('type', 'B', 0), ('maxresp', 'B', 0), ('sum', 'H', 0, True), ('group', 'I', 0))¶
-
bin
(update_auto_fields=True)¶
-
group
¶ Unpack field ondemand
-
maxresp
¶ Unpack field ondemand
-
sum
¶ Unpack field ondemand
-
sum_au_active
= True¶
-
type
¶ Unpack field ondemand
-
pypacker.layer3.ip module¶
Internet Protocol version 4.
RFC 791
-
class
pypacker.layer3.ip.
IP
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('v_hl', 'B', 69, True), ('tos', 'B', 0), ('len', 'H', 20, True), ('id', 'H', 0), ('off', 'H', 0), ('ttl', 'B', 64), ('p', 'B', 6), ('sum', 'H', 0, True), ('src', '4s', b'\x00\x00\x00\x00'), ('dst', '4s', b'\x00\x00\x00\x00'), ('opts', None, <class 'pypacker.triggerlist.TriggerList'>))¶
-
bin
(update_auto_fields=True)¶
-
create_fragments
(fragment_len=1480)¶ Create fragment packets from this IP packet with max fragment_len bytes each. This will set the flags and offset values accordingly (see header field off).
fragment_len – max length of a fragment (IP header + payload) return – fragment IP packets created from this packet
-
direction
(other)¶
-
dst
¶ Unpack field ondemand
-
dst_s
¶
-
flags
¶
-
hl
¶
-
id
¶ Unpack field ondemand
-
len
¶ Unpack field ondemand
-
len_au_active
= True¶
-
off
¶ Unpack field ondemand
-
offset
¶
-
opts
¶
-
p
¶ Unpack field ondemand
-
reverse_address
()¶
-
src
¶ Unpack field ondemand
-
src_s
¶
-
sum
¶ Unpack field ondemand
-
sum_au_active
= True¶
-
tos
¶ Unpack field ondemand
-
ttl
¶ Unpack field ondemand
-
v
¶
-
v_hl
¶ Unpack field ondemand
-
v_hl_au_active
= True¶
-
-
class
pypacker.layer3.ip.
IPOptMulti
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
len = total length (header + data)
-
__hdr__
= (('type', 'B', 0), ('len', 'B', 2))¶
-
bin
(update_auto_fields=True)¶
-
len
¶ Unpack field ondemand
-
type
¶ Unpack field ondemand
-
-
class
pypacker.layer3.ip.
IPOptSingle
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('type', 'B', 0),)¶
-
type
¶ Unpack field ondemand
-
pypacker.layer3.ip6 module¶
Internet Protocol version 6..for whoever needs it (:
RFC 2460
-
class
pypacker.layer3.ip6.
IP6
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('v_fc_flow', 'I', 1610612736), ('dlen', 'H', 0), ('nxt', 'B', 0), ('hlim', 'B', 0), ('src', '16s', b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'), ('dst', '16s', b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'), ('opts', None, <class 'pypacker.triggerlist.TriggerList'>))¶
-
direction
(other)¶
-
dlen
¶ Unpack field ondemand
-
dst
¶ Unpack field ondemand
-
fc
¶
-
flow
¶
-
hlim
¶ Unpack field ondemand
-
nxt
¶ Unpack field ondemand
-
opts
¶
-
reverse_address
()¶
-
src
¶ Unpack field ondemand
-
v
¶
-
v_fc_flow
¶ Unpack field ondemand
-
-
class
pypacker.layer3.ip6.
IP6AHHeader
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('nxt', 'B', 0), ('len', 'B', 0), ('resv', 'H', 0), ('spi', 'I', 0), ('seq', 'I', 0))¶
-
len
¶ Unpack field ondemand
-
nxt
¶ Unpack field ondemand
-
resv
¶ Unpack field ondemand
-
seq
¶ Unpack field ondemand
-
spi
¶ Unpack field ondemand
-
-
class
pypacker.layer3.ip6.
IP6DstOptsHeader
(*args, **kwargs)¶ Bases:
pypacker.layer3.ip6.IP6OptsHeader
-
len
¶ Unpack field ondemand
-
nxt
¶ Unpack field ondemand
-
opts
¶
-
-
class
pypacker.layer3.ip6.
IP6ESPHeader
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
class
pypacker.layer3.ip6.
IP6FragmentHeader
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('nxt', 'B', 0), ('resv', 'B', 0), ('frag_off_resv_m', 'H', 0), ('id', 'I', 0))¶
-
frag_off
¶
-
frag_off_resv_m
¶ Unpack field ondemand
-
id
¶ Unpack field ondemand
-
m_flag
¶
-
nxt
¶ Unpack field ondemand
-
resv
¶ Unpack field ondemand
-
-
class
pypacker.layer3.ip6.
IP6HopOptsHeader
(*args, **kwargs)¶ Bases:
pypacker.layer3.ip6.IP6OptsHeader
-
len
¶ Unpack field ondemand
-
nxt
¶ Unpack field ondemand
-
opts
¶
-
-
class
pypacker.layer3.ip6.
IP6Option
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('type', 'B', 0), ('len', 'B', 0))¶
-
len
¶ Unpack field ondemand
-
type
¶ Unpack field ondemand
-
-
class
pypacker.layer3.ip6.
IP6OptionPad
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('type', 'B', 0),)¶
-
type
¶ Unpack field ondemand
-
-
class
pypacker.layer3.ip6.
IP6OptsHeader
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('nxt', 'B', 0), ('len', 'B', 0), ('opts', None, <class 'pypacker.triggerlist.TriggerList'>))¶
-
len
¶ Unpack field ondemand
-
nxt
¶ Unpack field ondemand
-
opts
¶
-
-
class
pypacker.layer3.ip6.
IP6RoutingHeader
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('nxt', 'B', 0), ('len', 'B', 0), ('type', 'B', 0), ('segs_left', 'B', 0), ('rsvd_sl_bits', 'I', 0), ('addresses', None, <class 'pypacker.triggerlist.TriggerList'>))¶
-
addresses
¶
-
len
¶ Unpack field ondemand
-
nxt
¶ Unpack field ondemand
-
rsvd_sl_bits
¶ Unpack field ondemand
-
segs_left
¶ Unpack field ondemand
-
sl_bits
¶
-
type
¶ Unpack field ondemand
-
pypacker.layer3.ipx module¶
Internetwork Packet Exchange.
-
class
pypacker.layer3.ipx.
IPX
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('sum', 'H', 65535), ('len', 'H', 30), ('tc', 'B', 0), ('pt', 'B', 0), ('dst', '12s', b''), ('src', '12s', b''))¶
-
dst
¶ Unpack field ondemand
-
len
¶ Unpack field ondemand
-
pt
¶ Unpack field ondemand
-
src
¶ Unpack field ondemand
-
sum
¶ Unpack field ondemand
-
tc
¶ Unpack field ondemand
-
pypacker.layer3.ospf module¶
Open Shortest Path First.
-
class
pypacker.layer3.ospf.
OSPF
(*args, **kwargs)¶ Bases:
pypacker.pypacker.Packet
-
__hdr__
= (('v', 'B', 0), ('type', 'B', 0), ('len', 'H', 0), ('router', 'I', 0), ('area', 'I', 0), ('sum', 'H', 0, True), ('atype', 'H', 0), ('auth', '8s', b''))¶
-
area
¶ Unpack field ondemand
-
atype
¶ Unpack field ondemand
-
auth
¶ Unpack field ondemand
-
bin
(update_auto_fields=True)¶
-
len
¶ Unpack field ondemand
-
router
¶ Unpack field ondemand
-
sum
¶ Unpack field ondemand
-
sum_au_active
= True¶
-
type
¶ Unpack field ondemand
-
v
¶ Unpack field ondemand
-
pypacker.layer3.pim module¶
Protocol Independent Multicast.