scapy.contrib.isis

IS-IS Scapy Extension

authors:

Marcel Patzlaff, mpatzlaff@benocs.com Michal Kaliszan, mkaliszan@benocs.com Tom Zhu, tom.zhu@metaswitch.com

description:

This module provides Scapy layers for the Intermediate System to Intermediate System routing protocol as defined in RFC 1195.

Currently it (partially) supports the packaging/encoding requirements of the following RFCs: * RFC 1195 (only the TCP/IP related part) * RFC 3358 (optional checksums) * RFC 5301 (dynamic hostname extension) * RFC 5302 (domain-wide prefix distribution) * RFC 5303 (three-way handshake) * RFC 5304 (cryptographic authentication) * RFC 5308 (routing IPv6 with IS-IS) * RFC 8667 (IS-IS extensions for segment routing)

TODO:
  • packet relations (requests, responses)

  • support for recent RFCs: * RFC 5305 (traffic engineering) * RFC 5307 (support for G-MPLS) * RFC 5310 (generic cryptographic authentication) * RFC 5316 (inter-AS MPLS and G-MPLS TE)

class scapy.contrib.isis.ISIS_32bitAdministrativeTagSubTlv(_pkt, /, *, type=1, len=None, tags=[])[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_32bitAdministrativeTagSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_32bitAdministrativeTagSubTlv).type>, <FieldLenField (ISIS_32bitAdministrativeTagSubTlv).len>, <FieldListField (ISIS_32bitAdministrativeTagSubTlv).tags>]
class scapy.contrib.isis.ISIS_64bitAdministrativeTagSubTlv(_pkt, /, *, type=2, len=None, tags=[])[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_64bitAdministrativeTagSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_64bitAdministrativeTagSubTlv).type>, <FieldLenField (ISIS_64bitAdministrativeTagSubTlv).len>, <FieldListField (ISIS_64bitAdministrativeTagSubTlv).tags>]
class scapy.contrib.isis.ISIS_AdministrativeGroupSubTlv(_pkt, /, *, code=3, len=None, admingroup='0.0.0.1')[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_AdministrativeGroupSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_AdministrativeGroupSubTlv).code>, <FieldLenField (ISIS_AdministrativeGroupSubTlv).len>, <IPField (ISIS_AdministrativeGroupSubTlv).admingroup>]
class scapy.contrib.isis.ISIS_AreaEntry(_pkt, /, *, arealen=None, areaid='49')[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.isis.ISIS_AreaEntry'>, <class 'scapy.packet.Packet'>]
extract_padding(s)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FieldLenField (ISIS_AreaEntry).arealen>, <ISIS_AreaIdField (ISIS_AreaEntry).areaid>]
class scapy.contrib.isis.ISIS_AreaIdField(name, default, length_from)[source]

Bases: Field

addfield(pkt, s, val)[source]
getfield(pkt, s)[source]
i2len(pkt, x)[source]
i2m(pkt, x)[source]
length_from
m2i(pkt, x)[source]
randval()[source]
class scapy.contrib.isis.ISIS_AreaTlv(_pkt, /, *, type=1, len=None, areas=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_AreaTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_AreaTlv).type>, <FieldLenField (ISIS_AreaTlv).len>, <PacketListField (ISIS_AreaTlv).areas>]
class scapy.contrib.isis.ISIS_AuthenticationTlv(_pkt, /, *, type=10, len=None, authtype=1, password=b'')[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_AuthenticationTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_AuthenticationTlv).type>, <FieldLenField (ISIS_AuthenticationTlv).len>, <ByteEnumField (ISIS_AuthenticationTlv).authtype>, <BoundStrLenField (ISIS_AuthenticationTlv).password>]
class scapy.contrib.isis.ISIS_BufferSizeTlv(_pkt, /, *, type=14, len=2, lspbuffersize=1497)[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_BufferSizeTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_BufferSizeTlv).type>, <ByteField (ISIS_BufferSizeTlv).len>, <ShortField (ISIS_BufferSizeTlv).lspbuffersize>]
class scapy.contrib.isis.ISIS_ChecksumTlv(_pkt, /, *, type=12, len=2, checksum=None)[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_ChecksumTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_ChecksumTlv).type>, <ByteField (ISIS_ChecksumTlv).len>, <XShortField (ISIS_ChecksumTlv).checksum>]
class scapy.contrib.isis.ISIS_CircuitTypeField(name='circuittype', default=2, size=8, names=None)[source]

Bases: FlagsField

class scapy.contrib.isis.ISIS_CommonHdr(_pkt, /, *, nlpid=131, hdrlen=None, version=1, idlen=0, pdutype=None, pduversion=1, hdrreserved=0, maxareaaddr=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.isis.ISIS_CommonHdr'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_CommonHdr).nlpid>, <ByteField (ISIS_CommonHdr).hdrlen>, <ByteField (ISIS_CommonHdr).version>, <ByteField (ISIS_CommonHdr).idlen>, <ByteEnumField (ISIS_CommonHdr).pdutype>, <ByteField (ISIS_CommonHdr).pduversion>, <ByteField (ISIS_CommonHdr).hdrreserved>, <ByteField (ISIS_CommonHdr).maxareaaddr>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'hdrlen': 27, 'pdutype': 15}, <class 'scapy.contrib.isis.ISIS_L1_LAN_Hello'>), ({'hdrlen': 27, 'pdutype': 16}, <class 'scapy.contrib.isis.ISIS_L2_LAN_Hello'>), ({'hdrlen': 20, 'pdutype': 17}, <class 'scapy.contrib.isis.ISIS_P2P_Hello'>), ({'hdrlen': 27, 'pdutype': 18}, <class 'scapy.contrib.isis.ISIS_L1_LSP'>), ({'hdrlen': 27, 'pdutype': 20}, <class 'scapy.contrib.isis.ISIS_L2_LSP'>), ({'hdrlen': 33, 'pdutype': 24}, <class 'scapy.contrib.isis.ISIS_L1_CSNP'>), ({'hdrlen': 33, 'pdutype': 25}, <class 'scapy.contrib.isis.ISIS_L2_CSNP'>), ({'hdrlen': 17, 'pdutype': 26}, <class 'scapy.contrib.isis.ISIS_L1_PSNP'>), ({'hdrlen': 17, 'pdutype': 27}, <class 'scapy.contrib.isis.ISIS_L2_PSNP'>)]
post_build(pkt, pay)[source]
class scapy.contrib.isis.ISIS_DynamicHostnameTlv(_pkt, /, *, type=137, len=None, hostname=b'')[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_DynamicHostnameTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_DynamicHostnameTlv).type>, <FieldLenField (ISIS_DynamicHostnameTlv).len>, <BoundStrLenField (ISIS_DynamicHostnameTlv).hostname>]
class scapy.contrib.isis.ISIS_ExtendedIpPrefix(_pkt, /, *, metric=1, updown=0, subtlvindicator=0, pfxlen=None, pfx=('0.0.0.0', 1), subtlvslen=None, subtlvs=[])[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.isis.ISIS_ExtendedIpPrefix'>, <class 'scapy.packet.Packet'>]
extract_padding(s)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<IntField (ISIS_ExtendedIpPrefix).metric>, <BitField (ISIS_ExtendedIpPrefix).updown>, <BitField (ISIS_ExtendedIpPrefix).subtlvindicator>, <BitFieldLenField (ISIS_ExtendedIpPrefix).pfxlen>, <IPPrefixField (ISIS_ExtendedIpPrefix).pfx>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>]
class scapy.contrib.isis.ISIS_ExtendedIpReachabilityTlv(_pkt, /, *, type=135, len=None, pfxs=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_ExtendedIpReachabilityTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_ExtendedIpReachabilityTlv).type>, <FieldLenField (ISIS_ExtendedIpReachabilityTlv).len>, <PacketListField (ISIS_ExtendedIpReachabilityTlv).pfxs>]
class scapy.contrib.isis.ISIS_ExtendedIsNeighbourEntry(_pkt, /, *, neighbourid='0102.0304.0506.07', metric=1, subtlvslen=None, subtlvs=[])[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.isis.ISIS_ExtendedIsNeighbourEntry'>, <class 'scapy.packet.Packet'>]
extract_padding(s)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ISIS_NodeIdField (ISIS_ExtendedIsNeighbourEntry).neighbourid>, <ThreeBytesField (ISIS_ExtendedIsNeighbourEntry).metric>, <FieldLenField (ISIS_ExtendedIsNeighbourEntry).subtlvslen>, <PacketListField (ISIS_ExtendedIsNeighbourEntry).subtlvs>]
class scapy.contrib.isis.ISIS_ExtendedIsReachabilityTlv(_pkt, /, *, type=22, len=None, neighbours=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_ExtendedIsReachabilityTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_ExtendedIsReachabilityTlv).type>, <FieldLenField (ISIS_ExtendedIsReachabilityTlv).len>, <PacketListField (ISIS_ExtendedIsReachabilityTlv).neighbours>]
class scapy.contrib.isis.ISIS_ExternalIpReachabilityTlv(_pkt, /, *, type=130, len=None, entries=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_ExternalIpReachabilityTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_ExternalIpReachabilityTlv).type>, <FieldLenField (ISIS_ExternalIpReachabilityTlv).len>, <PacketListField (ISIS_ExternalIpReachabilityTlv).entries>]
class scapy.contrib.isis.ISIS_GenericSubTlv(_pkt, /, *, type=0, len=None, val=b'')[source]

Bases: _ISIS_GenericTlv_Base

aliastypes = [<class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (_ISIS_GenericTlv_Base,ISIS_GenericTlv,ISIS_GenericSubTlv).type>, <FieldLenField (_ISIS_GenericTlv_Base,ISIS_GenericTlv,ISIS_GenericSubTlv).len>, <BoundStrLenField (_ISIS_GenericTlv_Base,ISIS_GenericTlv,ISIS_GenericSubTlv).val>]
class scapy.contrib.isis.ISIS_GenericTlv(_pkt, /, *, type=0, len=None, val=b'')[source]

Bases: _ISIS_GenericTlv_Base

aliastypes = [<class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (_ISIS_GenericTlv_Base,ISIS_GenericTlv,ISIS_GenericSubTlv).type>, <FieldLenField (_ISIS_GenericTlv_Base,ISIS_GenericTlv,ISIS_GenericSubTlv).len>, <BoundStrLenField (_ISIS_GenericTlv_Base,ISIS_GenericTlv,ISIS_GenericSubTlv).val>]
class scapy.contrib.isis.ISIS_IPv4InterfaceAddressSubTlv(_pkt, /, *, type=6, len=None, address='0.0.0.0')[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_IPv4InterfaceAddressSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_IPv4InterfaceAddressSubTlv).type>, <FieldLenField (ISIS_IPv4InterfaceAddressSubTlv).len>, <IPField (ISIS_IPv4InterfaceAddressSubTlv).address>]
class scapy.contrib.isis.ISIS_IPv4NeighborAddressSubTlv(_pkt, /, *, type=8, len=None, address='0.0.0.0')[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_IPv4NeighborAddressSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_IPv4NeighborAddressSubTlv).type>, <FieldLenField (ISIS_IPv4NeighborAddressSubTlv).len>, <IPField (ISIS_IPv4NeighborAddressSubTlv).address>]
class scapy.contrib.isis.ISIS_IPv6InterfaceAddressSubTlv(_pkt, /, *, type=12, len=None, address='::')[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_IPv6InterfaceAddressSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_IPv6InterfaceAddressSubTlv).type>, <FieldLenField (ISIS_IPv6InterfaceAddressSubTlv).len>, <IP6Field (ISIS_IPv6InterfaceAddressSubTlv).address>]
class scapy.contrib.isis.ISIS_IPv6NeighborAddressSubTlv(_pkt, /, *, type=13, len=None, address='::')[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_IPv6NeighborAddressSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_IPv6NeighborAddressSubTlv).type>, <FieldLenField (ISIS_IPv6NeighborAddressSubTlv).len>, <IP6Field (ISIS_IPv6NeighborAddressSubTlv).address>]
class scapy.contrib.isis.ISIS_InternalIpReachabilityTlv(_pkt, /, *, type=128, len=None, entries=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_InternalIpReachabilityTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_InternalIpReachabilityTlv).type>, <FieldLenField (ISIS_InternalIpReachabilityTlv).len>, <PacketListField (ISIS_InternalIpReachabilityTlv).entries>]
class scapy.contrib.isis.ISIS_IpInterfaceAddressTlv(_pkt, /, *, type=132, len=None, addresses=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_IpInterfaceAddressTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_IpInterfaceAddressTlv).type>, <FieldLenField (ISIS_IpInterfaceAddressTlv).len>, <FieldListField (ISIS_IpInterfaceAddressTlv).addresses>]
class scapy.contrib.isis.ISIS_IpReachabilityEntry(_pkt, /, *, defmetric=1, delmetric=128, expmetric=128, errmetric=128, ipaddress='0.0.0.0', subnetmask='255.255.255.255')[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.isis.ISIS_IpReachabilityEntry'>, <class 'scapy.packet.Packet'>]
extract_padding(s)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (ISIS_IpReachabilityEntry).defmetric>, <ByteField (ISIS_IpReachabilityEntry).delmetric>, <ByteField (ISIS_IpReachabilityEntry).expmetric>, <ByteField (ISIS_IpReachabilityEntry).errmetric>, <IPField (ISIS_IpReachabilityEntry).ipaddress>, <IPField (ISIS_IpReachabilityEntry).subnetmask>]
class scapy.contrib.isis.ISIS_Ipv6InterfaceAddressTlv(_pkt, /, *, type=232, len=None, addresses=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_Ipv6InterfaceAddressTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_Ipv6InterfaceAddressTlv).type>, <FieldLenField (ISIS_Ipv6InterfaceAddressTlv).len>, <IP6ListField (ISIS_Ipv6InterfaceAddressTlv).addresses>]
class scapy.contrib.isis.ISIS_Ipv6Prefix(_pkt, /, *, metric=1, updown=0, external=0, subtlvindicator=0, reserved=0, pfxlen=None, pfx=('::', 1), subtlvslen=None, subtlvs=[])[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.isis.ISIS_Ipv6Prefix'>, <class 'scapy.packet.Packet'>]
extract_padding(s)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<IntField (ISIS_Ipv6Prefix).metric>, <BitField (ISIS_Ipv6Prefix).updown>, <BitField (ISIS_Ipv6Prefix).external>, <BitField (ISIS_Ipv6Prefix).subtlvindicator>, <BitField (ISIS_Ipv6Prefix).reserved>, <FieldLenField (ISIS_Ipv6Prefix).pfxlen>, <IP6PrefixField (ISIS_Ipv6Prefix).pfx>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>]
class scapy.contrib.isis.ISIS_Ipv6ReachabilityTlv(_pkt, /, *, type=236, len=None, pfxs=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_Ipv6ReachabilityTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_Ipv6ReachabilityTlv).type>, <FieldLenField (ISIS_Ipv6ReachabilityTlv).len>, <PacketListField (ISIS_Ipv6ReachabilityTlv).pfxs>]
class scapy.contrib.isis.ISIS_IsNeighbourTlv(_pkt, /, *, type=6, len=None, neighbours=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_IsNeighbourTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_IsNeighbourTlv).type>, <FieldLenField (ISIS_IsNeighbourTlv).len>, <FieldListField (ISIS_IsNeighbourTlv).neighbours>]
class scapy.contrib.isis.ISIS_IsReachabilityEntry(_pkt, /, *, defmetric=1, delmetric=128, expmetric=128, errmetric=128, neighbourid='0102.0304.0506.07')[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.isis.ISIS_IsReachabilityEntry'>, <class 'scapy.packet.Packet'>]
extract_padding(s)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (ISIS_IsReachabilityEntry).defmetric>, <ByteField (ISIS_IsReachabilityEntry).delmetric>, <ByteField (ISIS_IsReachabilityEntry).expmetric>, <ByteField (ISIS_IsReachabilityEntry).errmetric>, <ISIS_NodeIdField (ISIS_IsReachabilityEntry).neighbourid>]
class scapy.contrib.isis.ISIS_IsReachabilityTlv(_pkt, /, *, type=2, len=None, virtual=0, neighbours=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_IsReachabilityTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_IsReachabilityTlv).type>, <FieldLenField (ISIS_IsReachabilityTlv).len>, <ByteField (ISIS_IsReachabilityTlv).virtual>, <PacketListField (ISIS_IsReachabilityTlv).neighbours>]
class scapy.contrib.isis.ISIS_L1_CSNP(_pkt, /, *, pdulength=None, sourceid='0102.0304.0506.00', startlspid='0000.0000.0000.00-00', endlspid='FFFF.FFFF.FFFF.FF-FF', tlvs=[])[source]

Bases: _ISIS_CSNP_Base

aliastypes = [<class 'scapy.contrib.isis.ISIS_L1_CSNP'>, <class 'scapy.contrib.isis._ISIS_CSNP_Base'>, <class 'scapy.contrib.isis._ISIS_PduBase'>, <class 'scapy.packet.Packet'>]
answers(other)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<_ISIS_PduLengthField (_ISIS_CSNP_Base,ISIS_L1_CSNP,ISIS_L2_CSNP).pdulength>, <ISIS_NodeIdField (_ISIS_CSNP_Base,ISIS_L1_CSNP,ISIS_L2_CSNP).sourceid>, <ISIS_LspIdField (_ISIS_CSNP_Base,ISIS_L1_CSNP,ISIS_L2_CSNP).startlspid>, <ISIS_LspIdField (_ISIS_CSNP_Base,ISIS_L1_CSNP,ISIS_L2_CSNP).endlspid>, <_ISIS_TlvListField (_ISIS_CSNP_Base,ISIS_L1_CSNP,ISIS_L2_CSNP).tlvs>]
class scapy.contrib.isis.ISIS_L1_LAN_Hello(_pkt, /, *, circuittype=<Flag 2 (L2)>, sourceid='0102.0304.0506', holdingtime=30, pdulength=None, priority=1, lanid='0000.0000.0000.00', tlvs=[])[source]

Bases: _ISIS_LAN_HelloBase

aliastypes = [<class 'scapy.contrib.isis.ISIS_L1_LAN_Hello'>, <class 'scapy.contrib.isis._ISIS_LAN_HelloBase'>, <class 'scapy.contrib.isis._ISIS_PduBase'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ISIS_CircuitTypeField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).circuittype>, <ISIS_SystemIdField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).sourceid>, <ShortField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).holdingtime>, <_ISIS_PduLengthField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).pdulength>, <ByteField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).priority>, <ISIS_NodeIdField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).lanid>, <_ISIS_TlvListField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).tlvs>]
class scapy.contrib.isis.ISIS_L1_LSP(_pkt, /, *, pdulength=None, lifetime=1199, lspid='0102.0304.0506.00-00', seqnum=1, checksum=None, typeblock=<Flag 3 (L1+L2)>, tlvs=[])[source]

Bases: _ISIS_LSP_Base

aliastypes = [<class 'scapy.contrib.isis.ISIS_L1_LSP'>, <class 'scapy.contrib.isis._ISIS_LSP_Base'>, <class 'scapy.contrib.isis._ISIS_PduBase'>, <class 'scapy.packet.Packet'>]
answers(other)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<_ISIS_PduLengthField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).pdulength>, <ShortField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).lifetime>, <ISIS_LspIdField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).lspid>, <XIntField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).seqnum>, <XShortField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).checksum>, <FlagsField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).typeblock>, <_ISIS_TlvListField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).tlvs>]
class scapy.contrib.isis.ISIS_L1_PSNP(_pkt, /, *, pdulength=None, sourceid='0102.0304.0506.00', tlvs=[])[source]

Bases: _ISIS_PSNP_Base

aliastypes = [<class 'scapy.contrib.isis.ISIS_L1_PSNP'>, <class 'scapy.contrib.isis._ISIS_PSNP_Base'>, <class 'scapy.contrib.isis._ISIS_PduBase'>, <class 'scapy.packet.Packet'>]
answers(other)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<_ISIS_PduLengthField (_ISIS_PSNP_Base,ISIS_L1_PSNP,ISIS_L2_PSNP).pdulength>, <ISIS_NodeIdField (_ISIS_PSNP_Base,ISIS_L1_PSNP,ISIS_L2_PSNP).sourceid>, <_ISIS_TlvListField (_ISIS_PSNP_Base,ISIS_L1_PSNP,ISIS_L2_PSNP).tlvs>]
class scapy.contrib.isis.ISIS_L2_CSNP(_pkt, /, *, pdulength=None, sourceid='0102.0304.0506.00', startlspid='0000.0000.0000.00-00', endlspid='FFFF.FFFF.FFFF.FF-FF', tlvs=[])[source]

Bases: _ISIS_CSNP_Base

aliastypes = [<class 'scapy.contrib.isis.ISIS_L2_CSNP'>, <class 'scapy.contrib.isis._ISIS_CSNP_Base'>, <class 'scapy.contrib.isis._ISIS_PduBase'>, <class 'scapy.packet.Packet'>]
answers(other)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<_ISIS_PduLengthField (_ISIS_CSNP_Base,ISIS_L1_CSNP,ISIS_L2_CSNP).pdulength>, <ISIS_NodeIdField (_ISIS_CSNP_Base,ISIS_L1_CSNP,ISIS_L2_CSNP).sourceid>, <ISIS_LspIdField (_ISIS_CSNP_Base,ISIS_L1_CSNP,ISIS_L2_CSNP).startlspid>, <ISIS_LspIdField (_ISIS_CSNP_Base,ISIS_L1_CSNP,ISIS_L2_CSNP).endlspid>, <_ISIS_TlvListField (_ISIS_CSNP_Base,ISIS_L1_CSNP,ISIS_L2_CSNP).tlvs>]
class scapy.contrib.isis.ISIS_L2_LAN_Hello(_pkt, /, *, circuittype=<Flag 2 (L2)>, sourceid='0102.0304.0506', holdingtime=30, pdulength=None, priority=1, lanid='0000.0000.0000.00', tlvs=[])[source]

Bases: _ISIS_LAN_HelloBase

aliastypes = [<class 'scapy.contrib.isis.ISIS_L2_LAN_Hello'>, <class 'scapy.contrib.isis._ISIS_LAN_HelloBase'>, <class 'scapy.contrib.isis._ISIS_PduBase'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ISIS_CircuitTypeField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).circuittype>, <ISIS_SystemIdField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).sourceid>, <ShortField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).holdingtime>, <_ISIS_PduLengthField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).pdulength>, <ByteField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).priority>, <ISIS_NodeIdField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).lanid>, <_ISIS_TlvListField (_ISIS_LAN_HelloBase,ISIS_L1_LAN_Hello,ISIS_L2_LAN_Hello).tlvs>]
class scapy.contrib.isis.ISIS_L2_LSP(_pkt, /, *, pdulength=None, lifetime=1199, lspid='0102.0304.0506.00-00', seqnum=1, checksum=None, typeblock=<Flag 3 (L1+L2)>, tlvs=[])[source]

Bases: _ISIS_LSP_Base

aliastypes = [<class 'scapy.contrib.isis.ISIS_L2_LSP'>, <class 'scapy.contrib.isis._ISIS_LSP_Base'>, <class 'scapy.contrib.isis._ISIS_PduBase'>, <class 'scapy.packet.Packet'>]
answers(other)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<_ISIS_PduLengthField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).pdulength>, <ShortField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).lifetime>, <ISIS_LspIdField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).lspid>, <XIntField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).seqnum>, <XShortField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).checksum>, <FlagsField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).typeblock>, <_ISIS_TlvListField (_ISIS_LSP_Base,ISIS_L1_LSP,ISIS_L2_LSP).tlvs>]
class scapy.contrib.isis.ISIS_L2_PSNP(_pkt, /, *, pdulength=None, sourceid='0102.0304.0506.00', tlvs=[])[source]

Bases: _ISIS_PSNP_Base

aliastypes = [<class 'scapy.contrib.isis.ISIS_L2_PSNP'>, <class 'scapy.contrib.isis._ISIS_PSNP_Base'>, <class 'scapy.contrib.isis._ISIS_PduBase'>, <class 'scapy.packet.Packet'>]
answers(other)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<_ISIS_PduLengthField (_ISIS_PSNP_Base,ISIS_L1_PSNP,ISIS_L2_PSNP).pdulength>, <ISIS_NodeIdField (_ISIS_PSNP_Base,ISIS_L1_PSNP,ISIS_L2_PSNP).sourceid>, <_ISIS_TlvListField (_ISIS_PSNP_Base,ISIS_L1_PSNP,ISIS_L2_PSNP).tlvs>]
class scapy.contrib.isis.ISIS_LinkLocalRemoteIdentifiersSubTlv(_pkt, /, *, type=4, len=8, localid='0', remoteid='0')[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_LinkLocalRemoteIdentifiersSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_LinkLocalRemoteIdentifiersSubTlv).type>, <FieldLenField (ISIS_LinkLocalRemoteIdentifiersSubTlv).len>, <IntField (ISIS_LinkLocalRemoteIdentifiersSubTlv).localid>, <IntField (ISIS_LinkLocalRemoteIdentifiersSubTlv).remoteid>]
class scapy.contrib.isis.ISIS_LspEntry(_pkt, /, *, lifetime=1200, lspid='0102.0304.0506.07-08', seqnum=1, checksum=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.isis.ISIS_LspEntry'>, <class 'scapy.packet.Packet'>]
extract_padding(s)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ShortField (ISIS_LspEntry).lifetime>, <ISIS_LspIdField (ISIS_LspEntry).lspid>, <XIntField (ISIS_LspEntry).seqnum>, <XShortField (ISIS_LspEntry).checksum>]
class scapy.contrib.isis.ISIS_LspEntryTlv(_pkt, /, *, type=9, len=None, entries=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_LspEntryTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_LspEntryTlv).type>, <FieldLenField (ISIS_LspEntryTlv).len>, <PacketListField (ISIS_LspEntryTlv).entries>]
class scapy.contrib.isis.ISIS_LspIdField(name, default)[source]

Bases: _ISIS_IdFieldBase

randval()[source]
class scapy.contrib.isis.ISIS_MaximumLinkBandwidthSubTlv(_pkt, /, *, type=9, len=None, maxbw=1000)[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_MaximumLinkBandwidthSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_MaximumLinkBandwidthSubTlv).type>, <FieldLenField (ISIS_MaximumLinkBandwidthSubTlv).len>, <IEEEFloatField (ISIS_MaximumLinkBandwidthSubTlv).maxbw>]
class scapy.contrib.isis.ISIS_MaximumReservableLinkBandwidthSubTlv(_pkt, /, *, type=10, len=None, maxrsvbw=1000)[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_MaximumReservableLinkBandwidthSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_MaximumReservableLinkBandwidthSubTlv).type>, <FieldLenField (ISIS_MaximumReservableLinkBandwidthSubTlv).len>, <IEEEFloatField (ISIS_MaximumReservableLinkBandwidthSubTlv).maxrsvbw>]
class scapy.contrib.isis.ISIS_NodeIdField(name, default)[source]

Bases: _ISIS_IdFieldBase

randval()[source]
class scapy.contrib.isis.ISIS_P2PAdjacencyStateTlv(_pkt, /, *, type=240, len=None, state=2, extlocalcircuitid=None, neighboursystemid=None, neighbourextlocalcircuitid=None)[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_P2PAdjacencyStateTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_P2PAdjacencyStateTlv).type>, <_AdjacencyStateTlvLenField (ISIS_P2PAdjacencyStateTlv).len>, <ByteEnumField (ISIS_P2PAdjacencyStateTlv).state>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>]
class scapy.contrib.isis.ISIS_P2P_Hello(_pkt, /, *, circuittype=<Flag 2 (L2)>, sourceid='0102.0304.0506', holdingtime=30, pdulength=None, localcircuitid=0, tlvs=[])[source]

Bases: _ISIS_PduBase

aliastypes = [<class 'scapy.contrib.isis.ISIS_P2P_Hello'>, <class 'scapy.contrib.isis._ISIS_PduBase'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ISIS_CircuitTypeField (ISIS_P2P_Hello).circuittype>, <ISIS_SystemIdField (ISIS_P2P_Hello).sourceid>, <ShortField (ISIS_P2P_Hello).holdingtime>, <_ISIS_PduLengthField (ISIS_P2P_Hello).pdulength>, <ByteField (ISIS_P2P_Hello).localcircuitid>, <_ISIS_TlvListField (ISIS_P2P_Hello).tlvs>]
class scapy.contrib.isis.ISIS_PaddingTlv(_pkt, /, *, type=8, len=None, padding=b'')[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_PaddingTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_PaddingTlv).type>, <FieldLenField (ISIS_PaddingTlv).len>, <BoundStrLenField (ISIS_PaddingTlv).padding>]
class scapy.contrib.isis.ISIS_PrefixSegmentIdentifierSubTlv(_pkt, /, *, type=3, len=5, flags=<Flag 0 ()>, algorithm=0, sid=0, idx=0)[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_PrefixSegmentIdentifierSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_PrefixSegmentIdentifierSubTlv).type>, <ByteField (ISIS_PrefixSegmentIdentifierSubTlv).len>, <FlagsField (ISIS_PrefixSegmentIdentifierSubTlv).flags>, <ByteField (ISIS_PrefixSegmentIdentifierSubTlv).algorithm>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>]
class scapy.contrib.isis.ISIS_ProtocolsSupportedTlv(_pkt, /, *, type=129, len=None, nlpids=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_ProtocolsSupportedTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_ProtocolsSupportedTlv).type>, <FieldLenField (ISIS_ProtocolsSupportedTlv).len>, <FieldListField (ISIS_ProtocolsSupportedTlv).nlpids>]
class scapy.contrib.isis.ISIS_RouterCapabilityTlv(_pkt, /, *, type=242, len=None, routerid='0.0.0.0', flags=<Flag 0 ()>, subtlvs=[])[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_RouterCapabilityTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_RouterCapabilityTlv).type>, <FieldLenField (ISIS_RouterCapabilityTlv).len>, <IPField (ISIS_RouterCapabilityTlv).routerid>, <FlagsField (ISIS_RouterCapabilityTlv).flags>, <PacketListField (ISIS_RouterCapabilityTlv).subtlvs>]
class scapy.contrib.isis.ISIS_SIDLabelSubTLV(_pkt, /, *, type=1, len=3, sid=0, idx=0)[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_SIDLabelSubTLV'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_SIDLabelSubTLV).type>, <ByteField (ISIS_SIDLabelSubTLV).len>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>]
class scapy.contrib.isis.ISIS_SRAlgorithmSubTLV(_pkt, /, *, type=19, len=None, algorithms=[0])[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_SRAlgorithmSubTLV'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_SRAlgorithmSubTLV).type>, <FieldLenField (ISIS_SRAlgorithmSubTLV).len>, <FieldListField (ISIS_SRAlgorithmSubTLV).algorithms>]
class scapy.contrib.isis.ISIS_SRCapabilitiesSubTLV(_pkt, /, *, type=2, len=None, flags=<Flag 0 ()>, srgb_ranges=[])[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_SRCapabilitiesSubTLV'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_SRCapabilitiesSubTLV).type>, <FieldLenField (ISIS_SRCapabilitiesSubTLV).len>, <FlagsField (ISIS_SRCapabilitiesSubTLV).flags>, <PacketListField (ISIS_SRCapabilitiesSubTLV).srgb_ranges>]
class scapy.contrib.isis.ISIS_SRGBDescriptorEntry(_pkt, /, *, range=0, sid_label=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.isis.ISIS_SRGBDescriptorEntry'>, <class 'scapy.packet.Packet'>]
extract_padding(s)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ThreeBytesField (ISIS_SRGBDescriptorEntry).range>, <PacketField (ISIS_SRGBDescriptorEntry).sid_label>]
class scapy.contrib.isis.ISIS_SystemIdField(name, default)[source]

Bases: _ISIS_IdFieldBase

randval()[source]
class scapy.contrib.isis.ISIS_TEDefaultMetricSubTlv(_pkt, /, *, type=18, len=None, temetric=1000)[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_TEDefaultMetricSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_TEDefaultMetricSubTlv).type>, <FieldLenField (ISIS_TEDefaultMetricSubTlv).len>, <ThreeBytesField (ISIS_TEDefaultMetricSubTlv).temetric>]
class scapy.contrib.isis.ISIS_TERouterIDTlv(_pkt, /, *, type=134, len=None, routerid='0.0.0.0')[source]

Bases: ISIS_GenericTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_TERouterIDTlv'>, <class 'scapy.contrib.isis.ISIS_GenericTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_TERouterIDTlv).type>, <FieldLenField (ISIS_TERouterIDTlv).len>, <IPField (ISIS_TERouterIDTlv).routerid>]
class scapy.contrib.isis.ISIS_UnreservedBandwidthSubTlv(_pkt, /, *, type=11, len=None, unrsvbw=[1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000])[source]

Bases: ISIS_GenericSubTlv

aliastypes = [<class 'scapy.contrib.isis.ISIS_UnreservedBandwidthSubTlv'>, <class 'scapy.contrib.isis.ISIS_GenericSubTlv'>, <class 'scapy.contrib.isis._ISIS_GenericTlv_Base'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ISIS_UnreservedBandwidthSubTlv).type>, <FieldLenField (ISIS_UnreservedBandwidthSubTlv).len>, <FieldListField (ISIS_UnreservedBandwidthSubTlv).unrsvbw>]
scapy.contrib.isis.isis_area2str(area)[source]
scapy.contrib.isis.isis_lspid2str(lspid)[source]
scapy.contrib.isis.isis_nodeid2str(nodeid)[source]
scapy.contrib.isis.isis_str2area(s)[source]
scapy.contrib.isis.isis_str2lspid(s)[source]
scapy.contrib.isis.isis_str2nodeid(s)[source]
scapy.contrib.isis.isis_str2sysid(s)[source]
scapy.contrib.isis.isis_sysid2str(sysid)[source]