top | item 28406966

Traceroute(8) Gets Speed Boost

75 points| protomyth | 4 years ago |undeadly.org | reply

39 comments

order
[+] SkipperCat|4 years ago|reply
I started to use MTR as my traceroute app and have never looked back.
[+] nullwarp|4 years ago|reply
thank you for this, i could have used this earlier debugging wireguard config. i have never heard of this tool before and it's phenomenal
[+] loeg|4 years ago|reply
(MTR is “my traceroute,” for the unfamiliar.)
[+] commandlinefan|4 years ago|reply
I hope this makes a difference - traceroute was invaluable when I first started working in networked environments, but over time, it's become effectively useless because it just reports "* * *" after the first couple of hops. I always assumed that was because of network security policies, but maybe it was just timing out the whole time.
[+] sigjuice|4 years ago|reply
You might have better results if you use different traceroute options (e.g. --tcp on Linux, which uses TCP SYN for probes) or other traceroute-like programs (e.g. lft, paris-traceroute, mtr)
[+] jleahy|4 years ago|reply
I think it’s often due to people using private IP addresses for intermediate nodes, to save on ipv4 addresses.

mtr will keep going after hitting a blackhole in the middle.

[+] yardstick|4 years ago|reply
In linux you can already speed up traceroute with the -w argument to limit how long it waits for responses. Eg traceroute -w 2 8.8.8.8
[+] timw4mail|4 years ago|reply
What does the (8) mean?
[+] p1mrx|4 years ago|reply
It's one of these mystery numbers:

    $ man printf
    [goddammit you stupid computer]
    $ man 3 printf
[+] drewg123|4 years ago|reply
It references the BSD manual section where you can find the documentation.

1 General commands

2 Syscalls

3 Library functions

4 Kernel interfaces

5 File formats

6 Games

7 Misc

8 System commands

9 kernel dev

[ EDIT: I have no idea how to make a single-spaced numbered list here.. ]

[+] sulam|4 years ago|reply
Others have answered what the 8 means, you might also want to know why it's used, since it may be "obvious" that traceroute is a system utility. In many cases it's not obvious whether one is referring to the syscall, kernel API, system utility, etc, since overloading a single simple word is quite common.
[+] drran|4 years ago|reply

    man 8 traceroute
8 is section number for this man page.
[+] sigjuice|4 years ago|reply
Quoting the manual section number is common practice in the OpenBSD project and community. It is used quite heavily in the documentation and on the mailing lists.
[+] loeg|4 years ago|reply
Manual section 8 - “System Manager” commands.
[+] NelsonMinar|4 years ago|reply
It sounds like a good change but it's worth thinking about how this changes what traceroute actually does. I wonder if any significant amount of network infrastructure will respond differently to getting a bunch of probes with different TTLs all at once?

(I've long since switched to MTR for most uses. It's different than traceroute in lots of ways and is noticeable.)

[+] Panino|4 years ago|reply
This is the kind of thing that keeps me running OpenBSD-current - super excited to see this in snaps! Awesome work!
[+] MonkeyClub|4 years ago|reply
Part of the reason I have a huge crash on OpenBSD is that nothing is ever done and dusted, but in constant evolution -- without breaking the universe.
[+] convolvatron|4 years ago|reply
why dont you just issue all the ttls concurrently?
[+] pphysch|4 years ago|reply
You don't know how many hops there are, so it would mean guessing beforehand, or using a big default (like 64) which means a ton of unnecessary packets for the average route.
[+] yannk|4 years ago|reply
You wouldn't know which packet reached its TTL just by flurry of ICMP packets received? i.e. what is the actual order of the path(s)
[+] ur-whale|4 years ago|reply
How does that compare to tracepath?
[+] kzrdude|4 years ago|reply
Why still using cvs? There must be some upside that they see
[+] tptacek|4 years ago|reply
"No mention of openbsd on the internet is complete without a long thread about source control migration." -- tedu@
[+] sneak|4 years ago|reply
Tradition ("if it ain't broke...") as well as general resistance to things that may well be fads (eg github) are hallmarks of people who have been doing serous systems engineering for multiple decades.

There are also real costs to switching tools, borne a little bit by everyone in the project. What they have is obviously working okay for them at the moment.