Blame doc/tracepath.xml

Packit Service 6f2e62
Packit Service 6f2e62
Packit Service 6f2e62
                   "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
Packit Service 6f2e62
Packit Service 6f2e62
<refentry id='tracepath8'>
Packit Service 6f2e62
<refmeta>
Packit Service 6f2e62
  <refentrytitle>TRACEPATH</refentrytitle>
Packit Service 6f2e62
  <manvolnum>8</manvolnum>
Packit Service 6f2e62
  <refmiscinfo class='manual'>iputils</refmiscinfo>
Packit Service 6f2e62
</refmeta>
Packit Service 6f2e62
<refnamediv>
Packit Service 6f2e62
  <refname>tracepath</refname>
Packit Service 6f2e62
  <refname>tracepath6</refname>
Packit Service 6f2e62
  <refpurpose>traces path to a network host discovering MTU along this path</refpurpose>
Packit Service 6f2e62
</refnamediv>
Packit Service 6f2e62
Packit Service 6f2e62
<refsynopsisdiv id='synopsis'>
Packit Service 6f2e62
<cmdsynopsis>
Packit Service 6f2e62
  <command>tracepath</command>
Packit Service 6f2e62
    <arg choice='opt'>-4 </arg>
Packit Service 6f2e62
    <arg choice='opt'>-6 </arg>
Packit Service 6f2e62
    <arg choice='opt'>-n </arg>
Packit Service 6f2e62
    <arg choice='opt'>-b </arg>
Packit Service 6f2e62
    <arg choice='opt'>-l <replaceable>pktlen</replaceable></arg>
Packit Service 6f2e62
    <arg choice='opt'>-m <replaceable>max_hops</replaceable></arg>
Packit Service 6f2e62
    <arg choice='opt'>-p <replaceable>port</replaceable></arg>
Packit Service 6f2e62
    <arg choice='plain'><replaceable>destination</replaceable></arg>
Packit Service 6f2e62
    <sbr/>
Packit Service 6f2e62
  </cmdsynopsis>
Packit Service 6f2e62
</refsynopsisdiv>
Packit Service 6f2e62
Packit Service 6f2e62
Packit Service 6f2e62
<refsect1 id='description'>
Packit Service 6f2e62
  <title>DESCRIPTION</title>
Packit Service 6f2e62
  <para>It traces path to <emphasis remap='I'>destination</emphasis> discovering MTU along this path.
Packit Service 6f2e62
It uses UDP port <emphasis remap='I'>port</emphasis> or some random port.
Packit Service 6f2e62
It is similar to <emphasis remap='B'>traceroute</emphasis>, only does not require superuser
Packit Service 6f2e62
privileges and has no fancy options.</para>
Packit Service 6f2e62
Packit Service 6f2e62
  <para><emphasis remap='B'>tracepath6</emphasis> is good replacement for <emphasis remap='B'>traceroute6</emphasis>
Packit Service 6f2e62
and classic example of application of Linux error queues.
Packit Service 6f2e62
The situation with IPv4 is worse, because commercial
Packit Service 6f2e62
IP routers do not return enough information in ICMP error messages.
Packit Service 6f2e62
Probably, it will change, when they will be updated.
Packit Service 6f2e62
For now it uses Van Jacobson's trick, sweeping a range
Packit Service 6f2e62
of UDP ports to maintain trace history.</para>
Packit Service 6f2e62
</refsect1>
Packit Service 6f2e62
Packit Service 6f2e62
<refsect1 id='options'>
Packit Service 6f2e62
  <title>OPTIONS</title>
Packit Service 6f2e62
<variablelist remap='TP'>
Packit Service 6f2e62
  <varlistentry>
Packit Service 6f2e62
  <term><option>-4</option></term>
Packit Service 6f2e62
  <listitem>
Packit Service 6f2e62
<para>Use IPv4 only..</para>
Packit Service 6f2e62
  </listitem>
Packit Service 6f2e62
  </varlistentry>
Packit Service 6f2e62
  <varlistentry>
Packit Service 6f2e62
  <term><option>-6</option></term>
Packit Service 6f2e62
  <listitem>
Packit Service 6f2e62
<para>Use IPv6 only..</para>
Packit Service 6f2e62
  </listitem>
Packit Service 6f2e62
  </varlistentry>
Packit Service 6f2e62
  <varlistentry>
Packit Service 6f2e62
  <term><option>-n</option></term>
Packit Service 6f2e62
  <listitem>
Packit Service 6f2e62
<para>Print primarily IP addresses numerically.</para>
Packit Service 6f2e62
  </listitem>
Packit Service 6f2e62
  </varlistentry>
Packit Service 6f2e62
  <varlistentry>
Packit Service 6f2e62
  <term><option>-b</option></term>
Packit Service 6f2e62
  <listitem>
Packit Service 6f2e62
<para>Print both of host names and IP addresses.</para>
Packit Service 6f2e62
  </listitem>
Packit Service 6f2e62
  </varlistentry>
Packit Service 6f2e62
  <varlistentry>
Packit Service 6f2e62
  <term><option>-l</option></term>
Packit Service 6f2e62
  <listitem>
Packit Service 6f2e62
<para>Sets the initial packet length to <emphasis remap='I'>pktlen</emphasis> instead of
Packit Service 6f2e62
65535 for <command>tracepath</command> or 128000 for <emphasis remap='B'>tracepath6</emphasis>.</para>
Packit Service 6f2e62
  </listitem>
Packit Service 6f2e62
  </varlistentry>
Packit Service 6f2e62
  <varlistentry>
Packit Service 6f2e62
  <term><option>-m</option></term>
Packit Service 6f2e62
  <listitem>
Packit Service 6f2e62
<para>Set maximum hops (or maximum TTLs) to <emphasis remap='I'>max_hops</emphasis>
Packit Service 6f2e62
instead of 30.</para>
Packit Service 6f2e62
  </listitem>
Packit Service 6f2e62
  </varlistentry>
Packit Service 6f2e62
  <varlistentry>
Packit Service 6f2e62
  <term><option>-p</option></term>
Packit Service 6f2e62
  <listitem>
Packit Service 6f2e62
<para>Sets the initial destination port to use.</para>
Packit Service 6f2e62
  </listitem>
Packit Service 6f2e62
  </varlistentry>
Packit Service 6f2e62
</variablelist>
Packit Service 6f2e62
</refsect1>
Packit Service 6f2e62
Packit Service 6f2e62
<refsect1 id='output'>
Packit Service 6f2e62
  <title>OUTPUT</title>
Packit Service 6f2e62
  <literallayout remap='.nf'>
Packit Service 6f2e62
root@mops:~ # tracepath6 3ffe:2400:0:109::2
Packit Service 6f2e62
 1?: [LOCALHOST]                              pmtu 1500
Packit Service 6f2e62
 1:  dust.inr.ac.ru                   0.411ms
Packit Service 6f2e62
 2:  dust.inr.ac.ru        asymm  1   0.390ms pmtu 1480
Packit Service 6f2e62
 2:  3ffe:2400:0:109::2               463.514ms reached
Packit Service 6f2e62
     Resume: pmtu 1480 hops 2 back 2
Packit Service 6f2e62
</literallayout> 
Packit Service 6f2e62
Packit Service 6f2e62
<para>The first column shows TTL of the probe, followed by colon.
Packit Service 6f2e62
Usually value of TTL is obtained from reply from network,
Packit Service 6f2e62
but sometimes reply does not contain necessary information and
Packit Service 6f2e62
we have to guess it. In this case the number is followed by ?.</para>
Packit Service 6f2e62
Packit Service 6f2e62
<para>The second column shows the network hop, which replied to the probe.
Packit Service 6f2e62
It is either address of router or word [LOCALHOST], if
Packit Service 6f2e62
the probe was not sent to the network.</para>
Packit Service 6f2e62
Packit Service 6f2e62
<para>The rest of line shows miscellaneous information about path to
Packit Service 6f2e62
the correspinding network hop. As rule it contains value of RTT.
Packit Service 6f2e62
Additionally, it can show Path MTU, when it changes.
Packit Service 6f2e62
If the path is asymmetric
Packit Service 6f2e62
or the probe finishes before it reach prescribed hop, difference
Packit Service 6f2e62
between number of hops in forward and backward direction is shown
Packit Service 6f2e62
following keyword async. This information is not reliable.
Packit Service 6f2e62
F.e. the third line shows asymmetry of 1, it is because the first probe
Packit Service 6f2e62
with TTL of 2 was rejected at the first hop due to Path MTU Discovery.</para>
Packit Service 6f2e62
Packit Service 6f2e62
<para>The last line summarizes information about all the path to the destination,
Packit Service 6f2e62
it shows detected Path MTU, amount of hops to the destination and our
Packit Service 6f2e62
guess about amount of hops from the destination to us, which can be
Packit Service 6f2e62
different when the path is asymmetric.</para>
Packit Service 6f2e62
</refsect1>
Packit Service 6f2e62
Packit Service 6f2e62
<refsect1 id='see_also'>
Packit Service 6f2e62
  <title>SEE ALSO</title>
Packit Service 6f2e62
  <para><citerefentry><refentrytitle>traceroute</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
Packit Service 6f2e62
<citerefentry><refentrytitle>traceroute6</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
Packit Service 6f2e62
<citerefentry><refentrytitle>ping</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
Packit Service 6f2e62
</refsect1>
Packit Service 6f2e62
Packit Service 6f2e62
<refsect1 id='author'>
Packit Service 6f2e62
  <title>AUTHOR</title>
Packit Service 6f2e62
  <para><command>tracepath</command> was written by
Packit Service 6f2e62
Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>.</para>
Packit Service 6f2e62
</refsect1>
Packit Service 6f2e62
Packit Service 6f2e62
<refsect1 id='security'>
Packit Service 6f2e62
  <title>SECURITY</title>
Packit Service 6f2e62
  <para>No security issues.</para>
Packit Service 6f2e62
Packit Service 6f2e62
  <para>This lapidary deserves to be elaborated.
Packit Service 6f2e62
<command>tracepath</command> is not a privileged program, unlike
Packit Service 6f2e62
<emphasis remap='B'>traceroute</emphasis>, <emphasis remap='B'>ping</emphasis> and other beasts of this kind.
Packit Service 6f2e62
<command>tracepath</command> may be executed by everyone who has some access
Packit Service 6f2e62
to network, enough to send UDP datagrams to investigated destination
Packit Service 6f2e62
using given port.</para>
Packit Service 6f2e62
</refsect1>
Packit Service 6f2e62
Packit Service 6f2e62
<refsect1 id='availability'>
Packit Service 6f2e62
  <title>AVAILABILITY</title>
Packit Service 6f2e62
  <para><command>tracepath</command> is part of <emphasis remap='I'>iputils</emphasis> package.</para>
Packit Service 6f2e62
</refsect1>
Packit Service 6f2e62
</refentry>
Packit Service 6f2e62