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, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessMsgType,scapy.contrib.rpl._RPLGuessOptionControl 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. RPLDAORPLDAO fields¶ RPLInstanceID
50K
BitField(1 bit)0D
BitField(1 bit)0flags
BitField(6 bits)0reserved
0daoseq
1dodagid
IP6Field(Cond)None
-
-
class
scapy.contrib.rpl.RPLDAOACK(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessMsgType,scapy.contrib.rpl._RPLGuessOptionControl 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. RPLDAOACKRPLDAOACK fields¶ RPLInstanceID
50D
BitField(1 bit)0reserved
BitField(7 bits)0daoseq
1status
0dodagid
IP6Field(Cond)None
-
-
class
scapy.contrib.rpl.RPLDCO(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessMsgType,scapy.contrib.rpl._RPLGuessOptionControl 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. RPLDCORPLDCO fields¶ RPLInstanceID
50K
BitField(1 bit)0D
BitField(1 bit)0flags
BitField(6 bits)0status
0dcoseq
1dodagid
IP6Field(Cond)None
-
-
class
scapy.contrib.rpl.RPLDCOACK(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessMsgType,scapy.contrib.rpl._RPLGuessOptionControl 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. RPLDCOACKRPLDCOACK fields¶ RPLInstanceID
50D
BitField(1 bit)0flags
BitField(7 bits)0dcoseq
1status
0dodagid
IP6Field(Cond)None
-
-
class
scapy.contrib.rpl.RPLDIO(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessMsgType,scapy.contrib.rpl._RPLGuessOptionControl 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. RPLDIORPLDIO fields¶ RPLInstanceID
50ver
0rank
1G
BitField(1 bit)1unused1
BitField(1 bit)0mop
BitEnumField(3 bits)1prf
BitField(3 bits)0dtsn
240flags
0reserved
0dodagid
'::1'
-
-
class
scapy.contrib.rpl.RPLDIS(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessMsgType,scapy.contrib.rpl._RPLGuessOptionControl Message: DODAG Information Solicitation (DIS)
-
aliastypes¶
-
-
class
scapy.contrib.rpl.RPLOptDODAGConfig(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessOptionControl 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. RPLOptDODAGConfigRPLOptDODAGConfig fields¶ otype
4len
14flags
BitField(4 bits)0A
BitField(1 bit)0PCS
BitField(3 bits)0DIOIntDoubl
20DIOIntMin
3DIORedun
10MaxRankIncrease
0MinRankIncrease
256OCP
1reserved
0DefLifetime
255LifetimeUnit
65535
-
-
class
scapy.contrib.rpl.RPLOptPIO(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessOptionControl 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. RPLOptPIORPLOptPIO fields¶ otype
8len
30plen
64L
BitField(1 bit)0A
BitField(1 bit)0R
BitField(1 bit)0reserved1
BitField(5 bits)0validlifetime
4294967295preflifetime
4294967295reserved2
0prefix
'::1'
-
-
class
scapy.contrib.rpl.RPLOptPad1(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessOptionControl Option: Pad 1 byte
-
aliastypes¶
-
-
class
scapy.contrib.rpl.RPLOptPadN(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessOptionControl 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. RPLOptPadNRPLOptPadN fields¶ otype
1optlen
Noneoptdata
b''
-
-
class
scapy.contrib.rpl.RPLOptRIO(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessOptionControl 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. RPLOptRIORPLOptRIO fields¶ otype
3len
Noneplen
Noneres1
BitField(3 bits)0prf
BitEnumField(2 bits)0res2
BitField(3 bits)0rtlifetime
4294967295prefix
_IP6PrefixFieldNone
-
-
class
scapy.contrib.rpl.RPLOptSolInfo(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessOptionControl 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. RPLOptSolInfoRPLOptSolInfo fields¶ otype
7len
19RPLInstanceID
0V
BitField(1 bit)0I
BitField(1 bit)0D
BitField(1 bit)0flags
BitField(5 bits)0dodagid
'::1'ver
0
-
-
class
scapy.contrib.rpl.RPLOptTIO(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessOptionControl 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. RPLOptTIORPLOptTIO fields¶ otype
6len
NoneE
BitField(1 bit)0flags
BitField(7 bits)0pathcontrol
0pathseq
0pathlifetime
255parentaddr
_IP6PrefixFieldNone
-
-
class
scapy.contrib.rpl.RPLOptTgt(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessOptionControl 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. RPLOptTgtRPLOptTgt fields¶ otype
5len
Noneflags
0plen
0prefix
_IP6PrefixFieldNone
-
-
class
scapy.contrib.rpl.RPLOptTgtDesc(*args, **kargs)¶ Bases:
scapy.contrib.rpl._RPLGuessOptionControl 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. RPLOptTgtDescRPLOptTgtDesc fields¶ otype
9len
4descriptor
0
-