[j-nsp] traceroute w.x.y.z gateway a.b.c.d

Richard A Steenbergen ras at e-gerbil.net
Mon Jul 31 20:50:00 EDT 2006


On Mon, Jul 31, 2006 at 07:21:41PM -0400, Chuck Anderson wrote:
> I'm trying to test various routes to the same destination, and I'd 
> like to do a traceroute using different outbound links.  However, when 
> I use "traceroute w.x.y.z gateway a.b.c.d" JunOS apparently adds 
> source routing options to the IP packets, and the packets get dropped 
> with !S since most ISP's don't allow source routed IP packets:
> 
> 3  unknown.Level3.net (63.211.178.137)  3.441 ms !S *  3.357 ms !S
> 
> Is there any to just override the first routing decision without 
> adding source route options?

The "gateway" option on traceroute is implemented using source routing, 
which most routers do not support by default. Source routing is 
implemented using IP options, must be slow-path/cpu processed, and is 
generally considered a bad thing to enable (with the exception of some 
odd/legacy peering policies which require it to be enabled on the border 
router for diagnostic purposes). The !S message is the result of an ICMP 
unreachable (type 3 code 5) message being returned, indicating that the 
router in question does not support source routing.

If there is a way to make use of the options on a Juniper traceroute to do 
reasonable diagnostics of routes via different paths, I haven't seen one. 
The "interface" command doesn't seem to have any impact at all, the 
"gateway" command uses source routing which is filtered everywhere, the 
"bypass-routing" command just generates:

traceroute: sendmsg: No route to host

Pretty much the only thing that works other than setting a static route of 
the /32 you're trying to reach, running the traceroute, and removing it, 
is specifying a routing-instance. This still involves getting into config 
mode to set the next-hop every time (unless you happen to have a lot of 
pre-configured routing-instances laying around), plus you need to import 
the interface routes (being careful not to forget lo0 if you use 
default-address-selection)...

If anyone knows of a better way by all means tell me. I swear I vaguely 
remember a time back in junos 3.x or 4.x when gateway didn't imply source 
routing, but its been so long I don't remember for sure.

-- 
Richard A Steenbergen <ras at e-gerbil.net>       http://www.e-gerbil.net/ras
GPG Key ID: 0xF8B12CBC (7535 7F59 8204 ED1F CC1C 53AF 4C41 5ECA F8B1 2CBC)


More information about the juniper-nsp mailing list