TraceRoute Class

Properties   Methods   Events   Configuration Settings   Errors  

The TraceRoute class allows you to trace the path IP packets take on the Internet.

Class Name

IPWorks_TraceRoute

Procedural Interface

 ipworks_traceroute_open();
 ipworks_traceroute_close($res);
 ipworks_traceroute_register_callback($res, $id, $function);
 ipworks_traceroute_get_last_error($res);
 ipworks_traceroute_get_last_error_code($res);
 ipworks_traceroute_set($res, $id, $index, $value);
 ipworks_traceroute_get($res, $id, $index);
 ipworks_traceroute_do_config($res, $configurationstring);
 ipworks_traceroute_do_doevents($res);
 ipworks_traceroute_do_interrupt($res);
 ipworks_traceroute_do_reset($res);
 ipworks_traceroute_do_traceto($res, $host);

Remarks

The component implements a standard IP Traceroute as defined in RFC 1393.

To use the class, simply call the TraceTo method and set the Host parameter to the domain name or IP address of the host you want to trace the path to. This is identical to setting the RemoteHost property to the domain name or IP address. The class will start sending probe packets towards the host, and as it receives replies it will fire Hop events giving information about the route. The same information is also provided in the Hops properties.

The ResolveNames property enables or disables DNS resolution of IP addresses received during the trace. If set to False only IP addresses are provided. If set to True the class will attempt to resolve the names of the hosts in the route. This may considerably increase the time it takes to complete the trace.

The HopTimeout property determines the maximum waiting time for a response in each hop of the trace, while the Timeout property defines the maximum waiting time for the whole trace. The HopLimit property specifies the maximum number of hops allowed for a trace.

Property List


The following is the full list of the properties of the class with short descriptions. Click on the links for further details.

HopLimitThe maximum number of hops to allow for a trace.
HopCountThe number of records in the Hop arrays.
HopErrorCodeThe error code for particular hop in the trace.
HopErrorDescriptionThe error description for particular hop in the trace.
HopHostAddressThe IP address of the host for a particular hop in the trace.
HopHostNameThe name of the host for a particular hop in the trace.
HopTimeThe amount of time taken by a particular hop in the trace.
HopTimeoutMaximum amount of time to wait for an individual hop to complete.
IdleThe current status of the class.
LocalHostThe name of the local host or user-assigned IP interface through which connections are initiated or accepted.
RemoteHostThe address of a host to trace to.
ResolveNamesDetermines whether the class resolves the host name for each host during the trace.
TimeoutA timeout for the class.

Method List


The following is the full list of the methods of the class with short descriptions. Click on the links for further details.

ConfigSets or retrieves a configuration setting.
DoEventsProcesses events from the internal message queue.
InterruptInterrupt the current method.
ResetReset the class.
TraceToTrace the route to a host.

Event List


The following is the full list of the events fired by the class with short descriptions. Click on the links for further details.

ErrorInformation about errors during data delivery.
HopFired for each hop in the trace to the RemoteHost .
HopResolvedFired when the name of a hop address is found.

Configuration Settings


The following is a list of configuration settings for the class with short descriptions. Click on the links for further details.

HopTimeoutInMillisecondsThe hop timeout is treated as milliseconds.
TimeoutInMillisecondsThe timeout is treated as milliseconds.
DontFragmentWhether the DontFragment control flag is set.
IcmpDllTimeoutThe timeout for the class when using the icmp.dll.
MaxMessageSizeThe maximum length of the messages that can be received.
MulticastTTLThe time to live (TTL) value for multicast ICMP packets sent by the class.
ReceiveAllModeEnables a socket to receive all IPv4 or IPv6 packets on the network.
TimeoutInMillisecondsThe timeout is treated as milliseconds.
UseConnectionDetermines whether to use a connected socket.
UseICMPDLLUse the icmp.dll included on Windows Systems.
UseIPHLPDLLUse the iphlpapi.dll included on Windows Systems.
UseIPv6Whether to use IPv6.
AbsoluteTimeoutDetermines whether timeouts are inactivity timeouts or absolute timeouts.
FirewallDataUsed to send extra data to the firewall.
InBufferSizeThe size in bytes of the incoming queue of the socket.
OutBufferSizeThe size in bytes of the outgoing queue of the socket.
BuildInfoInformation about the product's build.
CodePageThe system code page used for Unicode to Multibyte translations.
LicenseInfoInformation about the current license.
ProcessIdleEventsWhether the class uses its internal event loop to process events when the main thread is idle.
SelectWaitMillisThe length of time in milliseconds the class will wait when DoEvents is called if there are no events to process.
UseInternalSecurityAPITells the class whether or not to use the system security libraries or an internal implementation.

Copyright (c) 2022 /n software inc. - All rights reserved.
IPWorks 2020 PHP Edition - Version 20.0 [Build 8307]