scapy.contrib.rpl
RPL
RFC 6550 - Routing Protocol for Low-Power and Lossy Networks (RPL) draft-ietf-roll-efficient-npdao-17 - Efficient Route Invalidation
RPL Options : Pad1 PadN TIO RIO PIO Tgt TgtDesc DODAGConfig DAGMC … |
RPL Msgs : DIS DIO DAO DAOACK DCO DCOACK |
ICMPv6 : type 155 RPL |
- class scapy.contrib.rpl.RPLDAO(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessMsgType
,_RPLGuessOption
Control Message: Destination Advertisement Object (DAO)
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RPLINSTANCEID |K|D| FLAGS | RESERVED | DAOSEQ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DODAGID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLDAO
RPLDAO fields RPLInstanceID
50
K
BitField
(1 bit)0
D
BitField
(1 bit)0
flags
BitField
(6 bits)0
reserved
0
daoseq
1
dodagid
IP6Field
(Cond)None
- class scapy.contrib.rpl.RPLDAOACK(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessMsgType
,_RPLGuessOption
Control Message: Destination Advertisement Object Acknowledgement (DAOACK)
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RPLINSTANCEID |D| RESERVED | DAOSEQ | STATUS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DODAGID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLDAOACK
RPLDAOACK fields RPLInstanceID
50
D
BitField
(1 bit)0
reserved
BitField
(7 bits)0
daoseq
1
status
0
dodagid
IP6Field
(Cond)None
- class scapy.contrib.rpl.RPLDCO(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessMsgType
,_RPLGuessOption
Control Message: Destination Cleanup Object (DCO)
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RPLINSTANCEID |K|D| FLAGS | STATUS | DCOSEQ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DODAGID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLDCO
RPLDCO fields RPLInstanceID
50
K
BitField
(1 bit)0
D
BitField
(1 bit)0
flags
BitField
(6 bits)0
status
0
dcoseq
1
dodagid
IP6Field
(Cond)None
- class scapy.contrib.rpl.RPLDCOACK(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessMsgType
,_RPLGuessOption
Control Message: Destination Cleanup Object Acknowledgement (DCOACK)
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RPLINSTANCEID |D| FLAGS | DCOSEQ | STATUS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DODAGID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLDCOACK
RPLDCOACK fields RPLInstanceID
50
D
BitField
(1 bit)0
flags
BitField
(7 bits)0
dcoseq
1
status
0
dodagid
IP6Field
(Cond)None
- class scapy.contrib.rpl.RPLDIO(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessMsgType
,_RPLGuessOption
Control Message: DODAG Information Object (DIO)
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RPLINSTANCEID | VER | RANK | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |G|U| MOP | PRF | DTSN | FLAGS | RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DODAGID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLDIO
RPLDIO fields RPLInstanceID
50
ver
0
rank
1
G
BitField
(1 bit)1
unused1
BitField
(1 bit)0
mop
1
prf
BitField
(3 bits)0
dtsn
240
flags
0
reserved
0
dodagid
'::1'
- class scapy.contrib.rpl.RPLDIS(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessMsgType
,_RPLGuessOption
Control Message: DODAG Information Solicitation (DIS)
- aliastypes
- class scapy.contrib.rpl.RPLOptDODAGConfig(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessOption
Control Option: DODAG Configuration
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OTYPE | LEN | FLAGS |A| PCS | DIOINTDOUBL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DIOINTMIN | DIOREDUN | MAXRANKINCREASE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MINRANKINCREASE | OCP | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RESERVED | DEFLIFETIME | LIFETIMEUNIT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLOptDODAGConfig
RPLOptDODAGConfig fields otype
4
len
14
flags
BitField
(4 bits)0
A
BitField
(1 bit)0
PCS
BitField
(3 bits)0
DIOIntDoubl
20
DIOIntMin
3
DIORedun
10
MaxRankIncrease
0
MinRankIncrease
256
OCP
1
reserved
0
DefLifetime
255
LifetimeUnit
65535
- class scapy.contrib.rpl.RPLOptPIO(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessOption
Control Option: Prefix Information Option (PIO)
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OTYPE | LEN | PLEN |L|A|R|RESERVED1| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VALIDLIFETIME | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PREFLIFETIME | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RESERVED2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PREFIX | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLOptPIO
RPLOptPIO fields otype
8
len
30
plen
64
L
BitField
(1 bit)0
A
BitField
(1 bit)0
R
BitField
(1 bit)0
reserved1
BitField
(5 bits)0
validlifetime
4294967295
preflifetime
4294967295
reserved2
0
prefix
'::1'
- class scapy.contrib.rpl.RPLOptPad1(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessOption
Control Option: Pad 1 byte
- aliastypes
- class scapy.contrib.rpl.RPLOptPadN(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessOption
Control Option: Pad N bytes
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OTYPE | OPTLEN | OPTDATA | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLOptPadN
RPLOptPadN fields otype
1
optlen
None
optdata
b''
- class scapy.contrib.rpl.RPLOptRIO(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessOption
Control Option: Routing Information Option (RIO)
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OTYPE | LEN | PLEN | RES1|PRF| RES2| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RTLIFETIME | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PREFIX | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLOptRIO
RPLOptRIO fields otype
3
len
None
plen
None
res1
BitField
(3 bits)0
prf
0
res2
BitField
(3 bits)0
rtlifetime
4294967295
prefix
_IP6PrefixField
None
- class scapy.contrib.rpl.RPLOptSolInfo(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessOption
Control Option: Solicited Information
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OTYPE | LEN | RPLINSTANCEID |V|I|D| FLAGS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DODAGID | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VER | +-+-+-+-+-+-+-+-+ Fig. RPLOptSolInfo
RPLOptSolInfo fields otype
7
len
19
RPLInstanceID
0
V
BitField
(1 bit)0
I
BitField
(1 bit)0
D
BitField
(1 bit)0
flags
BitField
(5 bits)0
dodagid
'::1'
ver
0
- class scapy.contrib.rpl.RPLOptTIO(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessOption
Control Option: Transit Information Option (TIO)
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OTYPE | LEN |E| FLAGS | PATHCONTROL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PATHSEQ | PATHLIFETIME | PARENTADDR | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | | + + | | + + | | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLOptTIO
RPLOptTIO fields otype
6
len
None
E
BitField
(1 bit)0
flags
BitField
(7 bits)0
pathcontrol
0
pathseq
0
pathlifetime
255
parentaddr
_IP6PrefixField
None
- class scapy.contrib.rpl.RPLOptTgt(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessOption
Control Option: RPL Target
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OTYPE | LEN | FLAGS | PLEN | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PREFIX | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLOptTgt
RPLOptTgt fields otype
5
len
None
flags
0
plen
0
prefix
_IP6PrefixField
None
- class scapy.contrib.rpl.RPLOptTgtDesc(*args: Any, **kargs: Any)[source]
Bases:
_RPLGuessOption
Control Option: RPL Target Descriptor
- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OTYPE | LEN | DESCRIPTOR | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RPLOptTgtDesc
RPLOptTgtDesc fields otype
9
len
4
descriptor
0