You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
202 lines
5.7 KiB
202 lines
5.7 KiB
<refentry id="tracepath">
|
|
|
|
<refmeta>
|
|
<refentrytitle>tracepath</refentrytitle>
|
|
<manvolnum>8</manvolnum>
|
|
<refmiscinfo>iputils-&snapshot;</refmiscinfo>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>tracepath, tracepath6</refname>
|
|
<refpurpose>
|
|
traces path to a network host discovering MTU along this path</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<cmdsynopsis>
|
|
<command>tracepath</command>
|
|
<arg choice="opt">-n</arg>
|
|
<arg choice="opt">-b</arg>
|
|
<arg choice="opt">-l <replaceable/pktlen/</arg>
|
|
<arg choice="opt">-m <replaceable/max_hops/</arg>
|
|
<arg choice="opt">-p <replaceable/port/</arg>
|
|
<arg choice="req"><replaceable/destination/</arg>
|
|
</cmdsynopsis>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1><title>DESCRIPTION</title>
|
|
<para>
|
|
It traces path to <replaceable/destination/ discovering MTU along this path.
|
|
It uses UDP port <replaceable/port/ or some random port.
|
|
It is similar to <command/traceroute/, only does not require superuser
|
|
privileges and has no fancy options.
|
|
</para>
|
|
|
|
<para>
|
|
<command/tracepath6/ is good replacement for <command/traceroute6/
|
|
and classic example of application of Linux error queues.
|
|
The situation with IPv4 is worse, because commercial
|
|
IP routers do not return enough information in ICMP error messages.
|
|
Probably, it will change, when they will be updated.
|
|
For now it uses Van Jacobson's trick, sweeping a range
|
|
of UDP ports to maintain trace history.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1><title>OPTIONS</title>
|
|
<variablelist>
|
|
|
|
<varlistentry>
|
|
<term><option/-n/</term>
|
|
<listitem><para>
|
|
Print primarily IP addresses numerically.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option/-b/</term>
|
|
<listitem><para>
|
|
Print both of host names and IP addresses.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option/-l/</term>
|
|
<listitem><para>
|
|
Sets the initial packet length to <replaceable/pktlen/ instead of
|
|
65535 for <command/tracepath/ or 128000 for <command/tracepath6/.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option/-m</term>
|
|
<listitem><para>
|
|
Set maximum hops (or maximum TTLs) to <replaceable/max_hops/
|
|
instead of 30.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option/-p/</term>
|
|
<listitem><para>
|
|
Sets the initial destination port to use.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1><title>OUTPUT</title>
|
|
<para>
|
|
<literallayout>
|
|
root@mops:~ # tracepath6 3ffe:2400:0:109::2
|
|
1?: [LOCALHOST] pmtu 1500
|
|
1: dust.inr.ac.ru 0.411ms
|
|
2: dust.inr.ac.ru asymm 1 0.390ms pmtu 1480
|
|
2: 3ffe:2400:0:109::2 463.514ms reached
|
|
Resume: pmtu 1480 hops 2 back 2
|
|
</literallayout>
|
|
</para>
|
|
|
|
<para>
|
|
The first column shows <literal/TTL/ of the probe, followed by colon.
|
|
Usually value of <literal/TTL/ is obtained from reply from network,
|
|
but sometimes reply does not contain necessary information and
|
|
we have to guess it. In this case the number is followed by ?.
|
|
</para>
|
|
|
|
<para>
|
|
The second column shows the network hop, which replied to the probe.
|
|
It is either address of router or word <literal/[LOCALHOST]/, if
|
|
the probe was not sent to the network.
|
|
</para>
|
|
|
|
<para>
|
|
The rest of line shows miscellaneous information about path to
|
|
the correspinding network hop. As rule it contains value of RTT.
|
|
Additionally, it can show Path MTU, when it changes.
|
|
If the path is asymmetric
|
|
or the probe finishes before it reach prescribed hop, difference
|
|
between number of hops in forward and backward direction is shown
|
|
following keyword <literal/async/. This information is not reliable.
|
|
F.e. the third line shows asymmetry of 1, it is because the first probe
|
|
with TTL of 2 was rejected at the first hop due to Path MTU Discovery.
|
|
</para>
|
|
|
|
<para>
|
|
The last line summarizes information about all the path to the destination,
|
|
it shows detected Path MTU, amount of hops to the destination and our
|
|
guess about amount of hops from the destination to us, which can be
|
|
different when the path is asymmetric.
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
|
|
<refsect1><title>SEE ALSO</title>
|
|
<para>
|
|
<citerefentry><refentrytitle/traceroute/<manvolnum/8/</citerefentry>,
|
|
<link linkend="traceroute6">
|
|
<citerefentry><refentrytitle/traceroute6/<manvolnum/8/</citerefentry></link>,
|
|
<link linkend="ping">
|
|
<citerefentry><refentrytitle/ping/<manvolnum/8/</citerefentry></link>.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1><title>AUTHOR</title>
|
|
<para>
|
|
<command/tracepath/ was written by
|
|
<ulink url="mailto:kuznet@ms2.inr.ac.ru">Alexey Kuznetsov
|
|
<kuznet@ms2.inr.ac.ru></ulink>.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1><title>SECURITY</title>
|
|
<para>
|
|
No security issues.
|
|
</para>
|
|
<para>
|
|
This lapidary deserves to be elaborated.
|
|
<command/tracepath/ is not a privileged program, unlike
|
|
<command/traceroute/, <command/ping/ and other beasts of this kind.
|
|
<command/tracepath/ may be executed by everyone who has some access
|
|
to network, enough to send UDP datagrams to investigated destination
|
|
using given port.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1><title>AVAILABILITY</title>
|
|
<para>
|
|
<command/tracepath/ is part of <filename/iputils/ package
|
|
and the latest versions are available in source form at
|
|
<ulink url="http://www.skbuff.net/iputils/iputils-current.tar.bz2">
|
|
http://www.skbuff.net/iputils/iputils-current.tar.bz2</ulink>.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<![IGNORE[
|
|
<refsect1><title>COPYING</title>
|
|
<para>
|
|
<literallayout>
|
|
This documentation is free software; you can redistribute
|
|
it and/or modify it under the terms of the GNU General Public
|
|
License Version 2.
|
|
|
|
This program is distributed in the hope that it will be
|
|
useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
See the GNU General Public License for more details.
|
|
|
|
For more details see the file COPYING in the source
|
|
distribution of Linux kernel of version 2.4.
|
|
</literallayout>
|
|
</para>
|
|
</refsect1>
|
|
]]>
|
|
|
|
|
|
|
|
|
|
</refentry>
|