{
    "mode": "info",
    "parameter": "TRACEROUTE",
    "section": "",
    "url": "https://www.chedong.com/phpMan.php/info/TRACEROUTE/json",
    "generated": "2026-07-05T13:04:45Z",
    "synopsis": "traceroute [-46dFITUnreAV] [-f firstttl] [-g gate,...]\n[-i device] [-m maxttl] [-p port] [-s srcaddr]\n[-q nqueries] [-N squeries] [-t tos]\n[-l flowlabel] [-w waittimes] [-z sendwait] [-UL] [-D]\n[-P proto] [--sport=port] [-M method] [-O modoptions]\n[--mtu] [--back]\nhost [packetlen]\ntraceroute6  [options]\ntcptraceroute  [options]\nlft  [options]",
    "sections": {
        "NAME": {
            "content": "traceroute - print the route packets trace to network host\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "traceroute [-46dFITUnreAV] [-f firstttl] [-g gate,...]\n[-i device] [-m maxttl] [-p port] [-s srcaddr]\n[-q nqueries] [-N squeries] [-t tos]\n[-l flowlabel] [-w waittimes] [-z sendwait] [-UL] [-D]\n[-P proto] [--sport=port] [-M method] [-O modoptions]\n[--mtu] [--back]\nhost [packetlen]\ntraceroute6  [options]\ntcptraceroute  [options]\nlft  [options]\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "traceroute  tracks  the route packets taken from an IP network on their\nway to a given host. It utilizes the IP protocol's time to  live  (TTL)\nfield  and  attempts to elicit an ICMP TIMEEXCEEDED response from each\ngateway along the path to the host.\n\ntraceroute6 is equivalent to traceroute -6\n\ntcptraceroute is equivalent to traceroute -T\n\nlft , the Layer  Four  Traceroute,  performs  a  TCP  traceroute,  like\ntraceroute -T , but attempts to provide compatibility with the original\nsuch implementation, also called \"lft\".\n\nThe only required parameter is the name or IP address of  the  destina-\ntion host .  The optional packetlen`gth is the total size of the prob-\ning packet (default 60 bytes for IPv4 and 80 for IPv6).  The  specified\nsize  can  be  ignored  in some situations or increased up to a minimal\nvalue.\n\nThis program attempts to trace the route an IP packet would  follow  to\nsome internet host by launching probe packets with a small ttl (time to\nlive) then listening for an ICMP \"time exceeded\" reply from a  gateway.\nWe  start our probes with a ttl of one and increase by one until we get\nan ICMP \"port unreachable\" (or TCP reset), which means we  got  to  the\n\"host\",  or hit a max (which defaults to 30 hops). Three probes (by de-\nfault) are sent at each ttl setting and a line is printed  showing  the\nttl,  address of the gateway and round trip time of each probe. The ad-\ndress can be followed by additional information when requested. If  the\nprobe  answers  come  from  different gateways, the address of each re-\nsponding system will be printed.  If there is no response within a cer-\ntain timeout, an \"*\" (asterisk) is printed for that probe.\n\nAfter the trip time, some additional annotation can be printed: !H, !N,\nor !P  (host,  network  or  protocol  unreachable),  !S  (source  route\nfailed),  !F (fragmentation needed), !X (communication administratively\nprohibited), !V (host precedence violation), !C (precedence  cutoff  in\neffect),  or  !<num>  (ICMP unreachable code <num>).  If almost all the\nprobes result in some kind of unreachable, traceroute will give up  and\nexit.\n\nWe don't want the destination host to process the UDP probe packets, so\nthe destination port is set to an unlikely value  (you  can  change  it\nwith  the  -p flag). There is no such a problem for ICMP or TCP tracer-\nouting (for TCP we use half-open technique, which prevents  our  probes\nto be seen by applications on the destination host).\n\nIn  the  modern  network environment the traditional traceroute methods\ncan not be always applicable, because of widespread use  of  firewalls.\nSuch  firewalls  filter  the \"unlikely\" UDP ports, or even ICMP echoes.\nTo solve this, some additional  tracerouting  methods  are  implemented\n(including  tcp), see LIST OF AVAILABLE METHODS below. Such methods try\nto use particular protocol and source/destination port, in order to by-\npass firewalls (to be seen by firewalls just as a start of allowed type\nof a network session).\n",
            "subsections": []
        },
        "OPTIONS": {
            "content": "--help Print help info and exit.\n\n-4, -6 Explicitly force IPv4 or IPv6 tracerouting. By default, the pro-\ngram  will  try to resolve the name given, and choose the appro-\npriate protocol automatically. If resolving a host name  returns\nboth IPv4 and IPv6 addresses, traceroute will use IPv4.\n",
            "subsections": [
                {
                    "name": "-I, --icmp",
                    "content": "Use ICMP ECHO for probes\n",
                    "flag": "-I",
                    "long": "--icmp"
                },
                {
                    "name": "-T, --tcp",
                    "content": "Use TCP SYN for probes\n",
                    "flag": "-T",
                    "long": "--tcp"
                },
                {
                    "name": "-d, --debug",
                    "content": "Enable  socket  level  debugging (when the Linux kernel supports\nit)\n",
                    "flag": "-d",
                    "long": "--debug"
                },
                {
                    "name": "-F, --dont-fragment",
                    "content": "Do not fragment probe packets. (For IPv4 it also  sets  DF  bit,\nwhich  tells  intermediate  routers  not to fragment remotely as\nwell).\n\nVarying the size of the probing packet by the packetlen command\nline  parameter,  you  can manually obtain information about the\nMTU of individual network hops. The  --mtu  option  (see  below)\ntries to do this automatically.\n\nNote, that non-fragmented features (like -F or --mtu) work prop-\nerly since the Linux kernel 2.6.22 only.  Before  that  version,\nIPv6  was always fragmented, IPv4 could use the once the discov-\nered final mtu only (from the route cache), which  can  be  less\nthan the actual mtu of a device.\n\n-f firstttl, --first=firstttl\nSpecifies with what TTL to start. Defaults to 1.\n\n-g gateway, --gateway=gateway\nTells  traceroute to add an IP source routing option to the out-\ngoing packet that tells the network to route the packet  through\nthe specified gateway (most routers have disabled source routing\nfor security reasons).  In general, several gateway's is allowed\n(comma  separated).  For  IPv6, the form of num,addr,addr...  is\nallowed, where num is a route header type (default is  type  2).\nNote the type 0 route header is now deprecated (rfc5095).\n\n-i interface, --interface=interface\nSpecifies  the  interface  through  which traceroute should send\npackets. By default, the interface is selected according to  the\nrouting table.\n\n-m maxttl, --max-hops=maxttl\nSpecifies  the  maximum  number of hops (max time-to-live value)\ntraceroute will probe. The default is 30.\n\n-N squeries, --sim-queries=squeries\nSpecifies the number of probe packets sent  out  simultaneously.\nSending several probes concurrently can speed up traceroute con-\nsiderably. The default value is 16.\nNote that some routers and hosts can use ICMP  rate  throttling.\nIn such a situation specifying too large number can lead to loss\nof some responses.\n\n-n     Do not try to map IP addresses to  host  names  when  displaying\nthem.\n\n-p port, --port=port\nFor  UDP tracing, specifies the destination port base traceroute\nwill use (the destination port number  will  be  incremented  by\neach probe).\nFor ICMP tracing, specifies the initial ICMP sequence value (in-\ncremented by each probe too).\nFor TCP and others specifies  just  the  (constant)  destination\nport to connect. When using the tcptraceroute wrapper, -p speci-\nfies the source port.\n\n-t tos, --tos=tos\nFor IPv4, set the Type of Service (TOS)  and  Precedence  value.\nUseful  values  are 16 (low delay) and 8 (high throughput). Note\nthat in order to use some TOS precedence values, you have to  be\nsuper user.\nFor IPv6, set the Traffic Control value.\n\n-l flowlabel, --flowlabel=flowlabel\nUse specified flowlabel for IPv6 packets.\n\n-w max[,here,near], --wait=max[,here,near]\nDetermines how long to wait for a response to a probe.\n\nThere  are  three (in general) float values separated by a comma\n(or a slash).  Max specifies the maximum time (in  seconds,  de-\nfault 5.0) to wait, in any case.\n\nTraditional  traceroute  implementation  always waited whole max\nseconds for any probe. But if we already have some replies  from\nthe  same  hop, or even from some next hop, we can use the round\ntrip time of such a reply as a hint to determine the actual rea-\nsonable amount of time to wait.\n\nThe  optional  here (default 3.0) specifies a factor to multiply\nthe round trip time of an already  received  response  from  the\nsame  hop.  The  resulting  value  is  used as a timeout for the\nprobe, instead of (but no more than)  max.   The  optional  near\n(default  10.0)  specifies  a similar factor for a response from\nsome next hop.  (The time of the first found result is  used  in\nboth cases).\n\nFirst,  we  look  for  the  same hop (of the probe which will be\nprinted first from now).  If nothing found, then look  for  some\nnext  hop.  If nothing found, use max.  If here and/or near have\nzero values, the corresponding computation is skipped.\nHere and near are always set to zero if only  max  is  specified\n(for compatibility with previous versions).\n\n-q nqueries, --queries=nqueries\nSets the number of probe packets per hop. The default is 3.\n\n-r     Bypass  the normal routing tables and send directly to a host on\nan attached network.  If the host is not on a  directly-attached\nnetwork,  an error is returned.  This option can be used to ping\na local host through an interface that has no route through it.\n\n-s sourceaddr, --source=sourceaddr\nChooses an alternative source address. Note that you must select\nthe  address  of one of the interfaces.  By default, the address\nof the outgoing interface is used.\n\n-z sendwait, --sendwait=sendwait\nMinimal time interval between probes (default 0).  If the  value\nis  more  than  10,  then it specifies a number in milliseconds,\nelse it is a number of seconds (float point values allowed too).\nUseful when some routers use rate-limit for ICMP messages.\n",
                    "flag": "-F",
                    "long": "--dont-fragment"
                },
                {
                    "name": "-e, --extensions",
                    "content": "Show  ICMP extensions (rfc4884). The general form is CLASS/TYPE:\nfollowed by a hexadecimal dump.  The  MPLS  (rfc4950)  is  shown\nparsed,  in  a form: MPLS:L=label,E=expuse,S=stackbottom,T=TTL\n(more objects separated by / ).\n",
                    "flag": "-e",
                    "long": "--extensions"
                },
                {
                    "name": "-A, --as-path-lookups",
                    "content": "Perform AS path lookups in routing registries and print  results\ndirectly after the corresponding addresses.\n",
                    "flag": "-A",
                    "long": "--as-path-lookups"
                },
                {
                    "name": "-V, --version",
                    "content": "Print the version and exit.\n\nThere  are  additional options intended for advanced usage (such as al-\nternate trace methods etc.):\n\n--sport=port\nChooses the source port to use. Implies  -N 1 -w 5  .   Normally\nsource ports (if applicable) are chosen by the system.\n\n--fwmark=mark\nSet the firewall mark for outgoing packets (since the Linux ker-\nnel 2.6.25).\n\n-M method, --module=name\nUse specified method for traceroute operations.  Default  tradi-\ntional  udp method has name default, icmp (-I) and tcp (-T) have\nnames icmp and tcp respectively.\nMethod-specific options can be passed by -O .  Most methods have\ntheir simple shortcuts, (-I means -M icmp, etc).\n\n-O option, --options=options\nSpecifies some method-specific option. Several options are sepa-\nrated by comma (or use several -O on cmdline).  Each method  may\nhave its own specific options, or many not have them at all.  To\nprint information about available options, use -O help.\n",
                    "flag": "-V",
                    "long": "--version"
                },
                {
                    "name": "-U, --udp",
                    "content": "Use UDP to particular destination port for tracerouting (instead\nof  increasing  the  port  per  each  probe). Default port is 53\n(dns).\n\n-UL    Use UDPLITE for tracerouting (default port is 53).\n",
                    "flag": "-U",
                    "long": "--udp"
                },
                {
                    "name": "-D, --dccp",
                    "content": "Use DCCP Requests for probes.\n\n-P protocol, --protocol=protocol\nUse raw packet of specified protocol for  tracerouting.  Default\nprotocol is 253 (rfc3692).\n\n--mtu  Discover  MTU along the path being traced. Implies -F -N 1.  New\nmtu is printed once in a form of F=NUM at the first probe  of  a\nhop which requires such mtu to be reached. (Actually, the corre-\nspond \"frag needed\" icmp message normally is sent by the  previ-\nous hop).\n\nNote, that some routers might cache once the seen information on\na fragmentation. Thus you can  receive  the  final  mtu  from  a\ncloser hop.  Try to specify an unusual tos by -t , this can help\nfor one attempt (then it can be cached there as well).\nSee -F option for more info.\n\n--back Print the number of backward hops when it seems  different  with\nthe forward direction. This number is guessed in assumption that\nremote hops send reply packets with initial ttl  set  to  either\n64, or 128 or 255 (which seems a common practice). It is printed\nas a negate value in a form of '-NUM' .\n",
                    "flag": "-D",
                    "long": "--dccp"
                }
            ]
        },
        "LIST OF AVAILABLE METHODS": {
            "content": "In general, a particular traceroute method may have  to  be  chosen  by\n-M name,  but  most  of  the methods have their simple cmdline switches\n(you can see them after the method name, if present).\n\ndefault\nThe traditional, ancient method of tracerouting. Used by default.\n\nProbe packets are udp datagrams with so-called  \"unlikely\"  destination\nports.   The \"unlikely\" port of the first probe is 33434, then for each\nnext probe it is incremented by one. Since the ports are expected to be\nunused,  the destination host normally returns \"icmp unreach port\" as a\nfinal response.  (Nobody knows what happens when some application  lis-\ntens for such ports, though).\n\nThis method is allowed for unprivileged users.\n\nicmp       -I\nMost usual method for now, which uses icmp echo packets for probes.\nIf  you can ping(8) the destination host, icmp tracerouting is applica-\nble as well.\n\nThis method may be allowed for unprivileged users since the kernel  3.0\n(IPv4,  for IPv6 since 3.11), which supports new dgram icmp (or \"ping\")\nsockets.   To   allow   such   sockets,   sysadmin    should    provide\nnet/ipv4/pinggrouprange sysctl range to match any group of the user.\nOptions:\n\nraw    Use only raw sockets (the traditional way).\nThis  way is tried first by default (for compatibility reasons),\nthen new dgram icmp sockets as fallback.\n\ndgram  Use only dgram icmp sockets.\n\ntcp        -T\nWell-known modern method, intended to bypass firewalls.\nUses the constant destination port (default is 80, http).\n\nIf some filters are present in the network path, then most probably any\n\"unlikely\"  udp  ports  (as for default method) or even icmp echoes (as\nfor icmp) are filtered, and whole tracerouting will just stop at such a\nfirewall.  To bypass a network filter, we have to use only allowed pro-\ntocol/port combinations. If we trace for some,  say,  mailserver,  then\nmore likely -T -p 25 can reach it, even when -I can not.\n\nThis  method  uses well-known \"half-open technique\", which prevents ap-\nplications on the destination host from seeing our probes at all.  Nor-\nmally,  a tcp syn is sent. For non-listened ports we receive tcp reset,\nand all is done. For active listening ports we receive tcp syn+ack, but\nanswer  by tcp reset (instead of expected tcp ack), this way the remote\ntcp session is dropped even without the application ever taking notice.\n\nThere is a couple of options for tcp method:\n\nsyn,ack,fin,rst,psh,urg,ece,cwr\nSets specified tcp flags for probe packet, in any combination.\n\nflags=num\nSets the flags field in the tcp header exactly to num.\n\necn    Send syn packet with tcp flags ECE and CWR (for Explicit Conges-\ntion Notification, rfc3168).\n\nsack,timestamps,windowscaling\nUse  the  corresponding  tcp header option in the outgoing probe\npacket.\n\nsysctl Use current sysctl (/proc/sys/net/*) setting for the tcp  header\noptions  above  and ecn.  Always set by default, if nothing else\nspecified.\n\nmss=num\nUse value of num for maxseg tcp header option (when syn).\n\ninfo   Print tcp flags of final tcp replies when  the  target  host  is\nreached.  Allows to determine whether an application listens the\nport and other useful things.\n\nDefault options is syn,sysctl.\n\ntcpconn\nAn initial implementation of tcp method, simple using connect(2)  call,\nwhich  does  full  tcp session opening. Not recommended for normal use,\nbecause a destination application is always affected (and can  be  con-\nfused).\n\nudp        -U\nUse udp datagram with constant destination port (default 53, dns).\nIntended to bypass firewall as well.\n\nNote, that unlike in tcp method, the correspond application on the des-\ntination host always receive our probes (with random  data),  and  most\ncan  easily  be confused by them. Most cases it will not respond to our\npackets though, so we will never see the final hop in the trace.  (For-\ntunately, it seems that at least dns servers replies with something an-\ngry).\n\nThis method is allowed for unprivileged users.\n\nudplite    -UL\nUse udplite datagram for probes (with constant  destination  port,  de-\nfault 53).\n\nThis method is allowed for unprivileged users.\nOptions:\n\ncoverage=num\nSet udplite send coverage to num.\n\ndccp    -D\nUse DCCP Request packets for probes (rfc4340).\n\nThis  method  uses the same \"half-open technique\" as used for TCP.  The\ndefault destination port is 33434.\n\nOptions:\n\nservice=num\nSet DCCP service code to num (default is 1885957735).\n\nraw        -P proto\nSend raw packet of protocol proto.\nNo protocol-specific headers are used, just IP header only.\nImplies -N 1 -w 5 .\nOptions:\n\nprotocol=proto\nUse IP protocol proto (default 253).\n",
            "subsections": []
        },
        "NOTES": {
            "content": "To speed up work, normally several probes are sent simultaneously.   On\nthe other hand, it creates a \"storm of packages\", especially in the re-\nply direction. Routers can throttle the rate  of  icmp  responses,  and\nsome  of replies can be lost. To avoid this, decrease the number of si-\nmultaneous probes, or even set it to 1 (like in initial traceroute  im-\nplementation), i.e.  -N 1\n\nThe  final  (target) host can drop some of the simultaneous probes, and\nmight even answer only the latest ones. It can  lead  to  extra  \"looks\nlike  expired\"  hops  near  the  final hop. We use a smart algorithm to\nauto-detect such a situation, but if it cannot help in your case,  just\nuse -N 1 too.\n\nFor  even  greater stability you can slow down the program's work by -z\noption, for example use -z 0.5 for half-second pause between probes.\n\nTo avoid an extra waiting, we use adaptive algorithm for timeouts  (see\n-w  option  for more info). It can lead to premature expiry (especially\nwhen response times differ at times) and  printing  \"*\"  instead  of  a\ntime.  In such a case, switch this algorithm off, by specifying -w with\nthe desired timeout only (for example, -w 5).\n\nIf some hops report nothing for every method, the last chance to obtain\nsomething  is  to  use  ping  -R  command (IPv4, and for nearest 8 hops\nonly).\n",
            "subsections": []
        },
        "SEE ALSO": {
            "content": "ping(8), ping6(8), tcpdump(8), netstat(8)\n\nTraceroute                      11 October 2006                  TRACEROUTE(1)",
            "subsections": []
        }
    },
    "summary": "traceroute - print the route packets trace to network host",
    "flags": [
        {
            "flag": "-I",
            "long": "--icmp",
            "arg": null,
            "description": "Use ICMP ECHO for probes"
        },
        {
            "flag": "-T",
            "long": "--tcp",
            "arg": null,
            "description": "Use TCP SYN for probes"
        },
        {
            "flag": "-d",
            "long": "--debug",
            "arg": null,
            "description": "Enable socket level debugging (when the Linux kernel supports it)"
        },
        {
            "flag": "-F",
            "long": "--dont-fragment",
            "arg": null,
            "description": "Do not fragment probe packets. (For IPv4 it also sets DF bit, which tells intermediate routers not to fragment remotely as well). Varying the size of the probing packet by the packetlen command line parameter, you can manually obtain information about the MTU of individual network hops. The --mtu option (see below) tries to do this automatically. Note, that non-fragmented features (like -F or --mtu) work prop- erly since the Linux kernel 2.6.22 only. Before that version, IPv6 was always fragmented, IPv4 could use the once the discov- ered final mtu only (from the route cache), which can be less than the actual mtu of a device. -f firstttl, --first=firstttl Specifies with what TTL to start. Defaults to 1. -g gateway, --gateway=gateway Tells traceroute to add an IP source routing option to the out- going packet that tells the network to route the packet through the specified gateway (most routers have disabled source routing for security reasons). In general, several gateway's is allowed (comma separated). For IPv6, the form of num,addr,addr... is allowed, where num is a route header type (default is type 2). Note the type 0 route header is now deprecated (rfc5095). -i interface, --interface=interface Specifies the interface through which traceroute should send packets. By default, the interface is selected according to the routing table. -m maxttl, --max-hops=maxttl Specifies the maximum number of hops (max time-to-live value) traceroute will probe. The default is 30. -N squeries, --sim-queries=squeries Specifies the number of probe packets sent out simultaneously. Sending several probes concurrently can speed up traceroute con- siderably. The default value is 16. Note that some routers and hosts can use ICMP rate throttling. In such a situation specifying too large number can lead to loss of some responses. -n Do not try to map IP addresses to host names when displaying them. -p port, --port=port For UDP tracing, specifies the destination port base traceroute will use (the destination port number will be incremented by each probe). For ICMP tracing, specifies the initial ICMP sequence value (in- cremented by each probe too). For TCP and others specifies just the (constant) destination port to connect. When using the tcptraceroute wrapper, -p speci- fies the source port. -t tos, --tos=tos For IPv4, set the Type of Service (TOS) and Precedence value. Useful values are 16 (low delay) and 8 (high throughput). Note that in order to use some TOS precedence values, you have to be super user. For IPv6, set the Traffic Control value. -l flowlabel, --flowlabel=flowlabel Use specified flowlabel for IPv6 packets. -w max[,here,near], --wait=max[,here,near] Determines how long to wait for a response to a probe. There are three (in general) float values separated by a comma (or a slash). Max specifies the maximum time (in seconds, de- fault 5.0) to wait, in any case. Traditional traceroute implementation always waited whole max seconds for any probe. But if we already have some replies from the same hop, or even from some next hop, we can use the round trip time of such a reply as a hint to determine the actual rea- sonable amount of time to wait. The optional here (default 3.0) specifies a factor to multiply the round trip time of an already received response from the same hop. The resulting value is used as a timeout for the probe, instead of (but no more than) max. The optional near (default 10.0) specifies a similar factor for a response from some next hop. (The time of the first found result is used in both cases). First, we look for the same hop (of the probe which will be printed first from now). If nothing found, then look for some next hop. If nothing found, use max. If here and/or near have zero values, the corresponding computation is skipped. Here and near are always set to zero if only max is specified (for compatibility with previous versions). -q nqueries, --queries=nqueries Sets the number of probe packets per hop. The default is 3. -r Bypass the normal routing tables and send directly to a host on an attached network. If the host is not on a directly-attached network, an error is returned. This option can be used to ping a local host through an interface that has no route through it. -s sourceaddr, --source=sourceaddr Chooses an alternative source address. Note that you must select the address of one of the interfaces. By default, the address of the outgoing interface is used. -z sendwait, --sendwait=sendwait Minimal time interval between probes (default 0). If the value is more than 10, then it specifies a number in milliseconds, else it is a number of seconds (float point values allowed too). Useful when some routers use rate-limit for ICMP messages."
        },
        {
            "flag": "-e",
            "long": "--extensions",
            "arg": null,
            "description": "Show ICMP extensions (rfc4884). The general form is CLASS/TYPE: followed by a hexadecimal dump. The MPLS (rfc4950) is shown parsed, in a form: MPLS:L=label,E=expuse,S=stackbottom,T=TTL (more objects separated by / )."
        },
        {
            "flag": "-A",
            "long": "--as-path-lookups",
            "arg": null,
            "description": "Perform AS path lookups in routing registries and print results directly after the corresponding addresses."
        },
        {
            "flag": "-V",
            "long": "--version",
            "arg": null,
            "description": "Print the version and exit. There are additional options intended for advanced usage (such as al- ternate trace methods etc.): --sport=port Chooses the source port to use. Implies -N 1 -w 5 . Normally source ports (if applicable) are chosen by the system. --fwmark=mark Set the firewall mark for outgoing packets (since the Linux ker- nel 2.6.25). -M method, --module=name Use specified method for traceroute operations. Default tradi- tional udp method has name default, icmp (-I) and tcp (-T) have names icmp and tcp respectively. Method-specific options can be passed by -O . Most methods have their simple shortcuts, (-I means -M icmp, etc). -O option, --options=options Specifies some method-specific option. Several options are sepa- rated by comma (or use several -O on cmdline). Each method may have its own specific options, or many not have them at all. To print information about available options, use -O help."
        },
        {
            "flag": "-U",
            "long": "--udp",
            "arg": null,
            "description": "Use UDP to particular destination port for tracerouting (instead of increasing the port per each probe). Default port is 53 (dns). -UL Use UDPLITE for tracerouting (default port is 53)."
        },
        {
            "flag": "-D",
            "long": "--dccp",
            "arg": null,
            "description": "Use DCCP Requests for probes. -P protocol, --protocol=protocol Use raw packet of specified protocol for tracerouting. Default protocol is 253 (rfc3692). --mtu Discover MTU along the path being traced. Implies -F -N 1. New mtu is printed once in a form of F=NUM at the first probe of a hop which requires such mtu to be reached. (Actually, the corre- spond \"frag needed\" icmp message normally is sent by the previ- ous hop). Note, that some routers might cache once the seen information on a fragmentation. Thus you can receive the final mtu from a closer hop. Try to specify an unusual tos by -t , this can help for one attempt (then it can be cached there as well). See -F option for more info. --back Print the number of backward hops when it seems different with the forward direction. This number is guessed in assumption that remote hops send reply packets with initial ttl set to either 64, or 128 or 255 (which seems a common practice). It is printed as a negate value in a form of '-NUM' ."
        }
    ],
    "examples": [],
    "see_also": [
        {
            "name": "ping",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/ping/8/json"
        },
        {
            "name": "ping6",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/ping6/8/json"
        },
        {
            "name": "tcpdump",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/tcpdump/8/json"
        },
        {
            "name": "netstat",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/netstat/8/json"
        }
    ]
}