Internet Direct (Indy) Version 9.0.1 Beta
TIdIcmpClient
TIdIcmpClient = class(TIdRawClient)
Description
TIdIcmpClient is a Internet Protocol client implementation based on the Internet standards document, RFC 792 - INTERNET CONTROL MESSAGE PROTOCOL , by Jon Postel.

TIdIcmpClient is used to send an Internet Control Message Protocol (ICMP) packet to another computer. ICMP packets are used for ping and TraceRoute capability to help diagnose problems with connectivity.

TIdIcmpClient is a descendant of the abstract class TIdRawClient, and uses the Protocol value Id_IPPROTO_ICMP (Decimal 1). TIdIcmpClient uses the message formats and algorithms as defined in RFC 792.

Use TIdIcmpClient to diagnose a communications links by using Ping. Host identifies the IP address or computer name for the echo request. Use ReplyStatus and OnReply to access information received as a result of the echo request datagram. Set ReceiveTimeout to control the time to wait for a response to the echo request datagram.

Use the TTL property to set the packet's Time To Live value: the maximum number of hops the packet will travel before being bounced.

For Traceroute application, send ping echo requests with increased TTL values. Each reply will hold the IP address of the hop where the TTL expired, allowing the program to build the packet's route. .