- Traceroute
traceroute is a
computer network tool used to determine the route taken by packets across an IP network. AnIPv6 variant, traceroute6, is also widely available.The tracert tool is available on practically all
Unix-like operating systems. Variants with similar functionality are also available, such as tracepath on modernLinux installations and tracert onMicrosoft Windows operating system s.Windows NT -based operating systems also providepathping , which provides similar functionality.Implementation
Traceroute works by increasing the "time-to-live" value of each successive batch of packets sent. The first three packets sent have a time-to-live (TTL) value of one (implying that they are not forwarded by the next router and make only a single hop). The next three packets have a TTL value of 2, and so on. When a packet passes through a host, normally the host decrements the TTL value by one, and forwards the packet to the next host. When a packet with a TTL of one reaches a host, the host discards the packet and sends an ICMP time exceeded (type 11) packet to the sender. The traceroute utility uses these returning packets to produce a list of hosts that the packets have traversed en route to the destination. The three timestamp values returned for each host along the path are the delay (aka latency) values typically in milliseconds (ms) for each packet in the batch. If a packet does not return within the expected timeout window, a star (asterisk) is traditionally printed. Traceroute may not list the real hosts. It indicates that the first host is at one hop, the second host at two hops, etc. IP does not guarantee that all the packets take the same route. Also note that if the host at hop number N does not reply, the hop will be skipped in the output.
On modern
Unix andLinux -based operating systems, the traceroute utility by default uses UDPdatagram s with destination ports number from 33434 to 33534. The traceroute utility usually has an option to specify use of ICMP echo request (type 8) instead, as used by the Windows tracert utility. If you have a firewall and if you want traceroute to work from both machines (Unix/Linux and Windows) you will need to allow both protocols inbound through your firewall (UDP with ports from 33434 to 33534 and ICMP type 8).There are also traceroute implementations that use TCP packets, such as
tcptraceroute or lft.pathping is a utility introduced withWindows NT that combines ping and traceroute functionality.mtr (My traceroute) is an enhanced version of ICMP traceroute which is available for Unix and Windows systems. All implementations of traceroute rely on ICMP (type 11) packets being sent to the originator.Example
Estonia to theUnited States . 195.80.96.219 (kauge.aso.ee) to 130.94.122.199 (larousse.wikipedia.org).Windows command : tracert 130.94.122.199
Linux orMac OS X command : traceroute 130.94.122.199AS/400 command : QSYS/TRCTCPRTE RMTSYS('130.94.122.199')*1 et-gw.aso.ee
*2 kjj-bb2-fe-0-1-4.ee.estpak.ee
*3 noe-bb2-ge-0-0-0-1.ee.estpak.ee
*4 s-b3-pos0-3.telia.net
*5 s-bb1-pos1-2-0.telia.net
*6 adm-bb1-pos1-1-0.telia.net
*7 adm-b1-pos2-0.telia.net
*8 p4-1-2-0.r00.amstnl02.nl.bb.verio.net
*9 p4-0-3-0.r01.amstnl02.nl.bb.verio.net
*10 p4-0-1-0.r80.nwrknj01.us.bb.verio.net
*11 p4-0-3-0.r00.nwrknj01.us.bb.verio.net
*12 p16-0-1-1.r20.mlpsca01.us.bb.verio.net
*13 xe-1-2-0.r21.mlpsca01.us.bb.verio.net
*14 xe-0-2-0.r21.snjsca04.us.bb.verio.net
*15 p64-0-0-0.r21.lsanca01.us.bb.verio.net
*16 p16-3-0-0.r01.sndgca01.us.bb.verio.net
*17 ge-1-2.a03.sndgca01.us.da.verio.net
*18 larousse.wikipedia.orgUses
Traceroute is often used for network troubleshooting. By showing a list of routers traversed, it allows the user to identify the path taken to reach a particular destination on the network. This can help identify routing problems or firewalls that may be blocking access to a site. Traceroute is also used by penetration testers to gather information about network infrastructure and IP ranges around a given host. It can also be used when downloading data, and if there are multiple mirrors available for the same piece of data, one can trace each mirror to get a good idea of which mirror would be the fastest to use.
ecurity concerns
Supplying such detailed information about the pathways taken was considered acceptable and convenient in the early days of the Internet, but later was considered questionable for privacy and security reasons. Traceroute information has been frequently used by crackers as a way to acquire sensitive information about a company's network architecture. By using the traceroute command, a cracker can quickly map out what nodes are available on a company's network architecture and exploit vulnerable or compromised nodes/computers.
For these reasons, while traceroute was widely used during the early days of the
Internet , by the 1990s many Internet sites were blocking traceroute requests. fact|date=July 2008 Usually, however, traceroute will function up to the borders of blocked sites, revealing the path to a given site, but in many cases not the network within that site.Origins
The traceroute man page states that the original traceroute program was written by
Van Jacobson in 1987 from a suggestion by Steve Deering, with particularly cogent suggestions or fixes from C. Philip Wood, Tim Seaver and Ken Adelman.ee also
*
Layer Four Trace , a more modern traceroute (IP network tracing) implementation that supports a multitude of layer-4 protocols
*mtr (My traceroute)
*Pathping
*List of Unix programs
*List of DOS commands External links
* RFC 1393: Traceroute using an IP Option Internet RFC
* RFC 792: Internet Control Message Protocol (ICMP)
* [http://www.freebsd.org/cgi/man.cgi?query=traceroute traceroute man page]
* [http://www.traceroute.org traceroute.org] : monthly updated list of online traceroutes
* http://www.willemijns.com/tracert.htm VivilProject Traceroute List
* [http://www.bgp4.net/tr BGP4.net Traceroute Wiki] : hundreds of traceroute servers, sorted byAutonomous System Number
* [http://www.nabber.org/projects/geotrace/ GeoTrace] - Geographically map a hostname or domain with traceroute
* [http://www.loriotpro.com/Products/On-line_Documentation_V5/LoriotProDoc_EN/J10-Loriotpro_tools/J10-U21_Trace_Route_EN.htm Graphical TraceRoute for Windows]----
Wikimedia Foundation. 2010.