From: root on
FYI:
Sometime, a long time ago, my traceroute
stopped working. I only got * for every
step. Recently I found a need for traceroute
and looked online to find a fix. I found
suggestions, but no fix. After a little
experimenting I find that traceroute
works as before if you use the -I option.
You can alias traceroute to "traceroute -I"
From: Lew Pitcher on
On June 1, 2010 18:45, in alt.os.linux.slackware, NoEMail(a)home.org wrote:

> FYI:
> Sometime, a long time ago, my traceroute
> stopped working. I only got * for every
> step. Recently I found a need for traceroute
> and looked online to find a fix. I found
> suggestions, but no fix. After a little
> experimenting I find that traceroute
> works as before if you use the -I option.

"Classic" traceroute sends UDP packets with ascending TTL values to high-end
(and presumably unused) ports on the target system. As each TTL expires,
the expiry point sends back an ICMP time-exceeded packet (ICMP type 5, code
0), which includes the expiry point's IP address. This is the default for
the traceroute included in Slackware.

Other implementations of traceroute use the ICMP "ECHO REQUEST" packet (ICMP
type 8, code 0), again with ascending TTL values, and get back ICMP
time-exceeded packets when each TTL expires. This is the behaviour of
Slackware's traceroute, with the -I option.

Historically, traceroute used UDP packets ("classic" traceroute)
because /some/ routers would *not* return ICMP error packets to ICMP
messages. Had "classic" traceroute used ICMP "ECHO REQUEST" messages, these
routers would silently discard the expired message, leaving a TTL
unaccounted for. Hopefully, those sorts of router have disappeared.

These days, the "classic" traceroute might not work because of firewalling.
Typically, firewalls block some (or all) UDP traffic, causing the "classic"
traceroute's UDP packets to be silently discarded.

OTOH, there's no guarantee that the ICMP "ECHO REQUEST" traceroute will fare
any better. Those same firewalls can (and often do) drop some ICMP
messages. Those firewalls practice a sort of "security by obscurity" by
preventing outsiders from "pinging" addresses inside the firewall.

> You can alias traceroute to "traceroute -I"

HTH
--
Lew Pitcher
Master Codewright & JOAT-in-training | Registered Linux User #112576
Me: http://pitcher.digitalfreehold.ca/ | Just Linux: http://justlinux.ca/
---------- Slackware - Because I know what I'm doing. ------


From: root on
Lew Pitcher <lpitcher(a)teksavvy.com> wrote:
>
> These days, the "classic" traceroute might not work because of firewalling.
> Typically, firewalls block some (or all) UDP traffic, causing the "classic"
> traceroute's UDP packets to be silently discarded.
>
> OTOH, there's no guarantee that the ICMP "ECHO REQUEST" traceroute will fare
> any better. Those same firewalls can (and often do) drop some ICMP
> messages. Those firewalls practice a sort of "security by obscurity" by
> preventing outsiders from "pinging" addresses inside the firewall.
>
>> You can alias traceroute to "traceroute -I"
>
> HTH

Thanks for responding. I turned off all firewalling in attempts
to get traceroute to work: no luck. At least for the time
being I am happy with this fix.
From: Mike Spencer on

It's also possible that misconfiguration at your ISP can block
traceroute. This happened to me at one point. I would have been
stumped had it not been the case that my ISP had two portal machines
(I forget the technical term) for dialup and traceroute worked when my
connection went through one but not with the other.

Because I was able to point to this discrepancy, the ISP support guy
fixed things up.

I have no idea what specific config detail(s) caused this.

--
Mike Spencer Nova Scotia, Canada
From: Mikhail Zotov on
On Tue, 1 Jun 2010 22:45:13 +0000 (UTC)
root <NoEMail(a)home.org> wrote:

> FYI:
> Sometime, a long time ago, my traceroute
> stopped working. I only got * for every
> step. Recently I found a need for traceroute
> and looked online to find a fix. I found
> suggestions, but no fix. After a little
> experimenting I find that traceroute
> works as before if you use the -I option.
> You can alias traceroute to "traceroute -I"

Sometimes, tcptraceroute can be a more convenient tool.

--
Mikhail