IPPacket Event
Fired whenever a packet is received.
Syntax
type TIPPacketEvent = procedure IPPacket(Sender: TObject; const SourceAddress: String; SourcePort: Integer; const DestinationAddress: String; DestinationPort: Integer; IPVersion: Integer; TOS: Integer; Id: Integer; Flags: Integer; Offset: Integer; TTL: Integer; Checksum: Integer; IPProtocol: Integer; Payload: String) of object;property OnIPPacket: TIPPacketEvent read FOnIPPacket write FOnIPPacket;
Remarks
When Active is True, the component will listen for network traffic. For each packet sent across the interface in LocalHost, the component will parse the packet and fire an IPPacket event with the header fields and payload. The parameters are defined as follows:
SourceAddress | The IP address of the originating host in IP dotted format. |
DestinationAddress | The IP address of the destination host in IP dotted format. |
IPVersion | The IP protocol version being used by this packet. |
TOS | The type of service being used by this packet. |
Id | The packet id used to identify and track packets. |
Flags | Flags relating to the status of the packet and desired responses. |
Offset | The fragment offset of this packet in relation to larger data. |
TTL | The time to live for this packet. |
IPProtocol | The IP protocol used in the payload. |
Payload | The data field of the IP packet. This field may contain extra IP headers, depending upon the IP protocol used to create it. |
TOS
Bit 0, 1, 2 | Precedence (see below) |
Bit 3 | Delay (0 = Normal, 1 = Low) |
Bit 4 | Throughput (0 = Normal, 1 = High) |
Bit 5 | Reliability (0 = Normal, 1 = High) |
Precedence
000 | Routine |
001 | Priority |
010 | Immediate |
011 | Flash |
100 | Flash Override |
101 | CRITIC/ECP |
110 | Internetwork Control |
111 | Network Control |
Flags
Bit 0 | Always zero |
Bit 1 | Don't Fragment (0 = May Fragment, 1 = Don't Fragment) |
Bit 2 | More Fragments (0 = Last Fragment, 1 = More Fragments) |
IPProtocol - for a full list, visit www.iana.org.
1 | ICMP |
2 | IGMP |
4 | IP |
6 | TCP |
17 | UDP |