In article <(E-Mail Removed). com>, alexk wrote:
>I've a novice tracert/tracerout question:
TRACERT (and 'tracerout') are the semi-broken microsoft version of the
Unix 'traceroute' command. While similar, they really are different.
>Since the packet can take multiple routes each time, how does tracert
>performs its job ?
"can take" does not mean it must take different routes. Generally, routing
doesn't shift from path to path very quickly. If the routing does change
during a trace, the Unix version of traceroute will print out the "new"
address that is responding.
>Is it running on top of TCP and establishes predefined virtual circuit,
>so the packets with given TTL count will travel each time same route ?
No. The windoze version of tracert uses ICMP Echo Requests and increments
the Time To Live st each step. The Unix version _can_ be made to use ICMP
Echo Requests (see the '-I' option) but defaults to using UDP packets. There
is a similar program called 'tcptraceroute' that uses TCP packets, but this
is not commonly found in *nix distributions.
>Any links to tracert explanation that consider this topic,
>would be greatly appreciated - I couldn't find, by "googling" anything,
>except repeated explanations about interpreting the command output.
The concept of traceroute is quite simple, and is well explained in the
man page. All it's doing is sending a packet with an intentionally small
time to live, and depending on the intermediate routers to send back an
ICMP Time Exceeded message. What traceroute is showing is the results
of routing decisions at intermediate stages, and THAT can be a very
complex subject, especially when there are multiple routes available.
The terms you are looking for are 'dynamic routing', and there are a
number of protocols dealing with this - such as RIP, OSPF, BGP, and so on.
For more details on that, see the Adv-Routing-HOWTO and NET3-4-HOWTO
-rw-rw-r-- 1 gferg ldp 297491 Sep 4 2003 Adv-Routing-HOWTO
-rw-rw-r-- 1 gferg ldp 203891 Sep 29 09:00 NET3-4-HOWTO
which are available from the Linux Documentation Project
(
http://en.tldp.org/HOWTO/HOWTO-INDEX/howtos.html).
Old guy