I was a little bit confused about the use of traceroute.
According to this
The traceroute command is used to see how packets are getting routed. It works by sending packets with increasing TTL values, starting with 1. So the first router gets the packet, and it decrements the TTL value by one, thus dropping the packet. The router sends back an ICMP Time Exceeded message back to us. And then the next packet gets a TTL of 2, so it makes it past the first router, but when it gets to the second router the TTL is 0 and it returns another ICMP Time Exceeded message. Traceroute works this way because as it sends and drops packets it is build a list of routers that the packets traverse, until it finally gets to its destination and gets an ICMP Echo Reply message. (source: https://linuxjourney.com/lesson/traceroute)
According to this, how can we be sure that traceroute use the same path at each ICMP packet sending? Can't a packet be routed somewhere else during the second, third, fourth call, and so on?
Thanks.