Solaris 2.3/4/5 all do this w/ traceroute - ICMP port unreachable

Solaris 2.3/4/5 all do this w/ traceroute - ICMP port unreachable

Post by Mike Batchel » Sat, 23 Mar 1996 04:00:00



traceroute to thingy.batch.com (206.42.93.10), 30 hops max, 40 byte packets
 1  204.193.144.1  4.593 ms  2.671 ms  3.27 ms
 2  204.193.145.1  30.009 ms  30.664 ms  29.756 ms
 3  192.41.177.150  31 ms  31.063 ms  30.494 ms
 4  137.39.128.45  40.525 ms  44.684 ms  40.64 ms
 5  137.39.33.130  40.623 ms  110.379 ms  45.906 ms
 6  137.39.100.78  69.912 ms  37.313 ms  39.713 ms
 7  137.39.11.1  52.821 ms  45.663 ms  38.854 ms
 8  192.41.177.85  42.001 ms  92.705 ms  49.333 ms
 9  205.252.5.24  88.846 ms  43.215 ms  40.659 ms
10  206.161.140.69  42.728 ms  56.664 ms  44.778 ms
11  206.42.80.1  219.006 ms  214.96 ms  101.089 ms
12  206.42.80.163  47.261 ms  58.328 ms  47.848 ms
13  206.42.93.1  86.461 ms  88.136 ms  132.766 ms
14  206.42.93.10  102.442 ms *  82.87 ms

Every Solaris 2 machine I have tested so far does this.  The * on the second
packet bounced off the Solaris target is accompanied by an ICMP port
unreachable message.  Every single Solaris box I have tested does this, for
the second packet traceroute sends to it.  I haven't yet found another
non-Solaris system that behaves this way.  SunOS 4.1.3 doesn't appear to
have this behavior.

What gives?
--

   Internet   %%%%%%%%%%% 301-322-5095 % V.34/ISDN %%%%%%%%%%%   Internet
     Services %% Serving Washington DC, No.VA, and Maryland %%     Services

 
 
 

Solaris 2.3/4/5 all do this w/ traceroute - ICMP port unreachable

Post by Mike Horwa » Sun, 24 Mar 1996 04:00:00


: traceroute to thingy.batch.com (206.42.93.10), 30 hops max, 40 byte packets
:  1  204.193.144.1  4.593 ms  2.671 ms  3.27 ms
:  2  204.193.145.1  30.009 ms  30.664 ms  29.756 ms
:  3  192.41.177.150  31 ms  31.063 ms  30.494 ms
[snip]
: 13  206.42.93.1  86.461 ms  88.136 ms  132.766 ms
: 14  206.42.93.10  102.442 ms *  82.87 ms
:
: Every Solaris 2 machine I have tested so far does this.  The * on the second
: packet bounced off the Solaris target is accompanied by an ICMP port
: unreachable message.  Every single Solaris box I have tested does this, for
: the second packet traceroute sends to it.  I haven't yet found another
: non-Solaris system that behaves this way.  SunOS 4.1.3 doesn't appear to
: have this behavior.

Normal for solaris, it is dropping the second packet.

Traceroute directly to a cisco router, does the same thing.

No problems, just different behaviour.


--


Twin Cities area Internet Access:  612-941-9177 for more info
Founding member of Minnesota Coalition for Internet Accessibility

 
 
 

Solaris 2.3/4/5 all do this w/ traceroute - ICMP port unreachable

Post by Casper H.S. Dik - Network Security Engine » Tue, 26 Mar 1996 04:00:00



>traceroute to thingy.batch.com (206.42.93.10), 30 hops max, 40 byte packets
> 1  204.193.144.1  4.593 ms  2.671 ms  3.27 ms
> 2  204.193.145.1  30.009 ms  30.664 ms  29.756 ms
> 3  192.41.177.150  31 ms  31.063 ms  30.494 ms
> 4  137.39.128.45  40.525 ms  44.684 ms  40.64 ms
> 5  137.39.33.130  40.623 ms  110.379 ms  45.906 ms
> 6  137.39.100.78  69.912 ms  37.313 ms  39.713 ms
> 7  137.39.11.1  52.821 ms  45.663 ms  38.854 ms
> 8  192.41.177.85  42.001 ms  92.705 ms  49.333 ms
> 9  205.252.5.24  88.846 ms  43.215 ms  40.659 ms
>10  206.161.140.69  42.728 ms  56.664 ms  44.778 ms
>11  206.42.80.1  219.006 ms  214.96 ms  101.089 ms
>12  206.42.80.163  47.261 ms  58.328 ms  47.848 ms
>13  206.42.93.1  86.461 ms  88.136 ms  132.766 ms
>14  206.42.93.10  102.442 ms *  82.87 ms
>Every Solaris 2 machine I have tested so far does this.  The * on the second
>packet bounced off the Solaris target is accompanied by an ICMP port
>unreachable message.  Every single Solaris box I have tested does this, for
>the second packet traceroute sends to it.  I haven't yet found another
>non-Solaris system that behaves this way.  SunOS 4.1.3 doesn't appear to
>have this behavior.

It's "ICMP error rate limiting".

The solaris FAQ says:

6.23) Traceroute to Solaris 2.x machines gives many timeouts.

    Solaris 2.4 and later (and Solaris 2.3 w/ high rev kernel jumbo
    patches) limit the number of ICMP error message to one
    per 500 milliseconds.  To switch off this feature, use:

        /usr/sbin/ndd -set /dev/ip ip_icmp_err_interval 0

    --- end of excerpt from the FAQ

Questions marked with a * or + have been changed or added since
the FAQ was last posted

The most recently posted version of the FAQ is available from
ftp.fwi.uva.nl in directory /pub/solaris
--
Expressed in this posting are my opinions.  They are in no way related
to opinions held by my employer, Sun Microsystems.
Statements on Sun products included here are not gospel and may
be fiction rather than truth.

 
 
 

1. How do you determine IP:port that caused an ICMP port unreachable?

Using the 2.2.16 kernel, after an ICMP port unreachable message is
received for a UDP socket, recvfrom() will return -1 and errno is set
to ECONNREFUSED.  However, recvfrom() doesn't fill in the "from"
sockaddr.  I'm able to obtain the IP address of the remote host via
the MSG_ERRQUEUE recvmsg() flag.  However, the sockaddr_in contained
in the resulting IP_RECVERR data does not contain a valid port (it
appears to be garbage).

Am I doing something wrong?  Is there some other way to obtain the
port?  Any advice/assistance would be appreciated.

Thanks,
Erik

2. upgrade red hat? and other ??s

3. Determining IP:port corresponding to an ICMP port unreachable

4. is GNU malloc/free really slow?

5. ICMP Destination Unreachable (Host Unreachable) [**] [Solved!!!]

6. setting up the default route

7. Is it possible, bind has done but the OS still respond with ICMP destination unreachable

8. Compaq NetFlex 3 with Redhat 4.2?

9. Need traceroute for Solaris 2.3

10. Solaris 2.3 - traceroute

11. traceroute for solaris 2.3

12. Traceroute for Solaris 2.3

13. Wanted: traceroute for Solaris 2.3