IPX - Internetwork Packet Exchange#

pcapkit.protocols.internet.ipx contains IPX only, which implements extractor for Internetwork Packet Exchange (IPX) [*], whose structure is described as below:

Octets

Bits

Name

Description

0

0

ipx.cksum

Checksum

2

16

ipx.len

Packet Length (header includes)

4

32

ipx.count

Transport Control (hop count)

5

40

ipx.type

Packet Type

6

48

ipx.dst

Destination Address

18

144

ipx.src

Source Address

class pcapkit.protocols.internet.ipx.IPX(file=None, length=None, **kwargs)[source]#

Bases: Internet[IPX, IPX]

This class implements Internetwork Packet Exchange.

property name: Literal['Internetwork Packet Exchange']#

Name of corresponding protocol.

property length: Literal[30]#

Header length of corresponding protocol.

property protocol: TransType#

Name of next layer protocol.

property src: str#

Source IPX address.

property dst: str#

Destination IPX address.

read(length=None, **kwargs)[source]#

Read Internetwork Packet Exchange.

Parameters:
  • length (Optional[int]) – Length of packet data.

  • **kwargs (Any) – Arbitrary keyword arguments.

Return type:

IPX

Returns:

Parsed packet data.

make(chksum=b'\\x00\\x00', count=0, type=Packet.Unknown, type_default=None, type_namespace=None, type_reversed=False, dst=b'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00', src=b'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00', payload=b'', **kwargs)[source]#

Make (construct) packet data.

Parameters:
Returns:

Constructed packet data.

Return type:

bytes

classmethod _make_data(data)[source]#

Create key-value pairs from data for protocol construction.

Parameters:

data (IPX) – protocol data

Return type:

dict[str, Any]

Returns:

Key-value pairs for protocol construction.

classmethod __index__()[source]#

Numeral registry index of the protocol.

Return type:

TransType

Returns:

Numeral registry index of the protocol in IANA.

Header Schemas#

class pcapkit.protocols.schema.internet.ipx.IPX(dict_=None, **kwargs)[source]#

Bases: Schema

Header schema for IPX packet.

chksum: bytes = <BytesField chksum>#

Checksum.

len: int = <UInt16Field len>#

Packet length (header includes).

count: int = <UInt8Field count>#

Transport control (hop count).

type: Enum_Packet = <EnumField type>#

Packet type.

dst: bytes = <BytesField dst>#

Destination address.

src: bytes = <BytesField src>#

Source address.

payload: bytes = <PayloadField payload>#

Payload.

Data Models#

class pcapkit.protocols.data.internet.ipx.IPX(*args: VT, **kwargs: VT)[source]#

Bases: Protocol

Data model for Internetwork Packet Exchange.

chksum: bytes#

Checksum.

len: int#

Packet length (header includes).

count: int#

Transport control (hop count).

type: Packet#

Packet type.

dst: Address#

Destination Address.

src: Address#

Source Address.

class pcapkit.protocols.data.internet.ipx.Address(*args: VT, **kwargs: VT)[source]#

Bases: Data

Data model for IPX address.

network: str#

Network number (: separated).

node: str#

Node number (- separated).

socket: Socket#

Socket number (: separated).

addr: str#

Full address (: separated).

Footnotes