Using traceroute

Trenix25

Active Member
Joined
Aug 15, 2017
Messages
291
Reaction score
123
Credits
2,633
It seems traceroute uses ICMP echo requests, but the man page says I can tell it to use ICMP echo requests using the -I option which implies that it can use something else instead if I don't. What will it use without using the -I option? Is there any way to get this to work if networks block ping requests? I'm getting a lot of stars when trying to trace the path to my favorite web sites. It can be handy when my network connection to my ISP goes down though. It makes it possible to find a clue about just where the network has failed.

Signed,

Matthew Campbell
 


Without the -I option, traceroute typically uses UDP packets by default. It sends UDP packets to high-numbered ports (starting at 33434) and listens for ICMP “port unreachable” messages from the destination. This is different from the ICMP echo requests used when the -I option is specified.
 
Without the -I option, traceroute typically uses UDP packets by default. It sends UDP packets to high-numbered ports (starting at 33434) and listens for ICMP “port unreachable” messages from the destination. This is different from the ICMP echo requests used when the -I option is specified.
Hmmm, this is going to be a problem considering my ISP blocks UDP packets, except those used by NTP.

I can send UDP packets, as far as I know, but I can't receive them. If I send UDP probes will I still get ICMP messages?

Signed,

Matthew Campbell
 
If I send UDP probes will I still get ICMP messages?

The short answer is no. UDP is a "connectionless" protocol. Meaning it doesn't ever send replies.
It's "fire and forget". or "best effort". You send packets, but there is no way of knowing if they got through, because there is no
reply or no acknowledgment that the packet was received.


It's usually a little faster, and a little more lightweight because it doesn't have the overhead of acknowledgment replies.
But less reliable, because you never know if the data made it through or not.
 
So if I cannot receive UDP packets because of the ISP firewall that blocks them when they are sent to me then I will have to use ICMP every time? I know what a UDP packet is. How does it cause a response like I would otherwise get from an ICMP packet?

Signed,

Matthew Campbell
 
Some distro's have something called tcptraceroute. It is very similar to traceroute.
 
Some distro's have something called tcptraceroute. It is very similar to traceroute.
I have that. I'll give that a try. Thanks.

I recently tried to ping a remote host, but another host answered the ping request. The intended remote host was in a foreign country, the the host that answered was in the US. Any idea how that could happen?

Signed,

Matthew Campbell
 

Members online


Top