On Mon, May 30, 2016 at 10:03:33PM -0700, Randy Bush wrote: > .-----------------. > | | > | B |--------- D > S ---------| A R | > | C |--------- (toward S) > | | > `-----------------' > > if the source of a traceroute from S toward D with TTL to expire on R, > and R's FIB wants to exit via C to get back to S (yes, virginia, the > internet is highly asymmetric), the source address of the time exceeded > message should be C. > > of course, simpletons such as i would desire the source of the time > exceeded message to be A. after all, this is the interface to which i > sent the icmp with the TTL to expire. > > is anyone seeing the dreaded rfc1812 behavior in a citable fashion? how > common is it?
On most Linux the default behaviour is using source address "C", but this can be corrected by setting the following somewhere in your /etc/sysctl.d/ files: # make traceroute nice net.ipv4.icmp_errors_use_inbound_ifaddr=1 Kind regards, Job