[j-nsp] unreachable indirect next-hop-static

Stefan Fouant sfouant at shortestpathfirst.net
Sun Nov 29 22:34:31 EST 2009


Yep, as I mentioned before, the packet is getting to R3, but R3 has no route to the 10.10.10/30 subnet.  This is the fundamental premise behing "hop-by-hop" routing.  Each router along the path needs to consult it's routing table to find a match.  If you don't like this behavior, use MPLS ;)  The resolve keyword on R4 only allows R4 to recursively look in it's routing table for a path to reach an indirectly connected next-hop, it doesn't instill any intelligence on R3.  When the packet gets to R3 it needs to know where to forward the packet.  That is why your traceroute is returning ICMP unreachables after the first hop.

Sorry for the top posting.  I'm on BB.

Stefan Fouant
www.shortestpathfirst.net
Sent from my Verizon Wireless BlackBerry

-----Original Message-----
From: amin amin <amiensda at gmail.com>
Date: Mon, 30 Nov 2009 09:48:35 
To: Stefan Fouant<sfouant at shortestpathfirst.net>
Cc: <juniper-nsp at puck.nether.net>
Subject: Re: [j-nsp] unreachable indirect next-hop-static

In indirect next-hop should it need route define at r3 for prefix
10.10.10/30?
here is the configuration:
logical-systems {
    r1 {
        interfaces {
            ge-2/1/6 {
                unit 1 {
                    vlan-id 1;
                    ##
                    ## invalid path element 'aggregated-ether-options'
                    ##
                    family inet {
                        address 10.10.10.1/30;
                    }
                }
            }
        }
        routing-options {
            static {
                route 0.0.0.0/0 next-hop 10.10.10.2;
            }
        }
    }
    r2 {
        interfaces {
            ge-2/1/7 {
                unit 1 {
                    vlan-id 1;
                    ##
                    ## invalid path element 'aggregated-ether-options'
                    ##
                    family inet {
                        address 10.10.10.2/30;
                    }
                }
                unit 2 {
                    vlan-id 2;
                    ##
                    ## invalid path element 'aggregated-ether-options'
                    ##
                    family inet {
                        address 100.100.100.1/30;
                    }
                }
            }
        }
        protocols {
            ospf {
                area 0.0.0.0 {
                    interface ge-2/1/7.2;
                }
            }
        }
    }
    r3 {
        interfaces {
            ge-2/1/6 {
                unit 2 {
                    vlan-id 2;
                    ##
                    ## invalid path element 'aggregated-ether-options'
                    ##
                    family inet {
                        address 100.100.100.2/30;
                    }
                }
                unit 3 {
                    vlan-id 3;
                    ##
                    ## invalid path element 'aggregated-ether-options'
                    ##
                    family inet {
                        address 20.20.20.1/30;
                    }
                }
            }
        }
        protocols {
            ospf {
                area 0.0.0.0 {
                    interface all;
                }
            }
        }
    }
    r4 {
        interfaces {
            ge-2/1/7 {
                unit 3 {
                    vlan-id 3;
                    ##
                    ## invalid path element 'aggregated-ether-options'
                    ##
                    family inet {
                        address 20.20.20.2/30;
                    }
                }
            }
        }
        protocols {
            ospf {
                area 0.0.0.0 {
                    interface all;
                }
            }
        }
        routing-options {
            static {
                route 10.10.10.0/30 {
                    next-hop 100.100.100.1;
                    resolve;
                }
            }
        }
    }
}
interfaces {
    ge-2/1/6 {
        vlan-tagging;
    }
    ge-2/1/7 {
        vlan-tagging;
    }
}

[edit]
lab# run show route 10.10.10.1 logical-system r3

[edit]
lab# run show route 10.10.10.1 logical-system r4

inet.0: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

10.10.10.0/30      *[Static/5] 00:21:17, metric2 2
                    > to 20.20.20.1 via ge-2/1/7.3

[edit]
lab# run show route 20.20.20.2 logical-system r1

inet.0: 3 destinations, 3 routes (3 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

0.0.0.0/0          *[Static/5] 00:20:40
                    > to 10.10.10.2 via ge-2/1/6.1

[edit]
lab# run traceroute 10.10.10.1 logical-system r4
traceroute to 10.10.10.1 (10.10.10.1), 30 hops max, 40 byte packets
 1  20.20.20.1 (20.20.20.1)  0.388 ms !N  0.298 ms !N  0.273 ms !N

[edit]
lab# run traceroute 20.20.20.1 logical-system r1
traceroute to 20.20.20.1 (20.20.20.1), 30 hops max, 40 byte packets
 1  10.10.10.2 (10.10.10.2)  0.388 ms  0.289 ms  0.276 ms
^C
[edit]

rgds,
samin

On Sat, Nov 28, 2009 at 11:05 AM, Stefan Fouant <
sfouant at shortestpathfirst.net> wrote:

> > -----Original Message-----
> > From: juniper-nsp-bounces at puck.nether.net [mailto:juniper-nsp-
> > bounces at puck.nether.net] On Behalf Of amin amin
> > Sent: Friday, November 27, 2009 7:38 PM
> >
> > Can Junos do indirect next-hop static, let me say
> > r1-r2-r3-r4
> > r4 should reach r1 using static route with gateway 100.100.100.1
> > r1 using default route static
> > r2-r3-r4 are using ospf protocol area 0
> > r1's IP to r2 = 10.10.10.1/30
> > r2's IP to r1 = 10.10.10.2/30
> > r2's IP to r3 = 100.100.100.1/30
> > r3's IP to r2 = 100.100.100.2/30
> > r3's IP to r4 = 20.20.20.1/30
> > r4's IP to r3 = 20.20.20.2/30
> >
> > when I check availble route 10.10.10/30 at r4, it's always shown up.
> > but it
> > never be reached
> > the configuration at r4 for static route
> > set routing-option static route 10.10.10/30 next-hop 100.100.100.1
> > resolve
> > set routing-option forwarding-table indirect-next-hop
> >
> >
> > the configuration static route at r1
> > set routing-option static route 0/0 next-hop 10.10.10.2
>
> What happens when you do a traceroute?  Based on your configs, I imagine
> the
> packets would get dropped on r3 as there is no route defined on r3 to reach
> the 10.10.10/30 subnet.
>
> Also, you do not need to do 'set routing-options forwarding-table
> indirect-next-hop'.  That has nothing to do with the 'resolve' keyword
> under
> [edit routing-options static route].  Rather, it is used to improve route
> convergence time by abstracting a level of recursion so that fewer route to
> forwarding next-hop bindings need to be updated when underlying next-hop
> paths are changed.  More details on that can be found via the link below:
>
>
> http://www.juniper.net/techpubs/software/junos/junos92/swconfig-routing/enab
> ling-an-indirect-next-hop.html<http://www.juniper.net/techpubs/software/junos/junos92/swconfig-routing/enab%0Aling-an-indirect-next-hop.html>
>
> Stefan Fouant
> www.shortestpathfirst.net
> GPG Key ID: 0xB5E3803D
>
>


-- 
-------------------------------------------
   http://aministi.web.id/
-------------------------------------------



More information about the juniper-nsp mailing list