Routing

 View Only
last person joined: 2 days ago 

Ask questions and share experiences about ACX Series, CTP Series, MX Series, PTX Series, SSR Series, JRR Series, and all things routing, including portfolios and protocols.
  • 1.  routing questions

    Posted 03-12-2023 14:32

    I have the following:

    root@LS-UW# run show route 10.146.41.10 logical-system LS-MC              
    
    MC.inet.0: 35 destinations, 118 routes (35 active, 0 holddown, 0 hidden)
    + = Active Route, - = Last Active, * = Both
    
    10.146.41.0/24     *[BGP/170] 00:11:23, localpref 160, from 10.220.1.2
                          AS path: 64851 64874 64850 64870 I, validation-state: unverified
                        > to 10.55.1.0 via ge-0/0/6.5, Push 302592
                        [BGP/170] 00:37:04, localpref 160, from 10.220.1.2
                          AS path: 64851 64874 64850 64870 I, validation-state: unverified
                        > to 10.55.2.0 via ge-0/0/7.5, Push 302576
                        [BGP/170] 00:37:03, localpref 100, from 10.220.1.1
                          AS path: 64851 64874 64850 64870 I, validation-state: unverified
                        > to 10.55.1.0 via ge-0/0/6.5, Push 302592
                        [BGP/170] 00:10:59, localpref 100, from 10.220.1.1
                          AS path: 64851 64874 64850 64870 I, validation-state: unverified
                        > to 10.55.2.0 via ge-0/0/7.5, Push 302576
    

    I expect to see two, but I have four here. why the same route appears  twice?

    Here are the details for the first two

    root@LS-UW# run show route 10.146.41.10 logical-system LS-MC extensive    
    
    MC.inet.0: 35 destinations, 118 routes (35 active, 0 holddown, 0 hidden)
    10.146.41.0/24 (4 entries, 1 announced)
    TSI:
    KRT in-kernel 10.146.41.0/24 -> {indirect(1048577)}
            *BGP    Preference: 170/-161
                    Route Distinguisher: 10.220.1.1:1
                    Next hop type: Indirect
                    Address: 0x9758a3c
                    Next-hop reference count: 145
                    Source: 10.220.1.2
                    Next hop type: Router, Next hop index: 717
                    Next hop: 10.55.1.0 via ge-0/0/6.5, selected
                    Label operation: Push 302592
                    Label TTL action: prop-ttl
                    Load balance label: Label 302592: None; 
                    Session Id: 0x100003
                    Protocol next hop: 10.220.1.1
                    Label operation: Push 302592
                    Label TTL action: prop-ttl
                    Load balance label: Label 302592: None; 
                    Indirect next hop: 0x9780110 1048577 INH Session ID: 0x100007
                    State: <Secondary Active Int Ext ProtectionCand>
                    Local AS: 64850 Peer AS: 64850
                    Age: 12:24      Metric2: 1 
                    Validation State: unverified 
                    Task: BGP_64850.10.220.1.2+59509
                    Announcement bits (1): 0-KRT 
                    AS path: 64851 64874 64850 64870 I (Originator)
                    Cluster list:  12.12.12.12
                    Originator ID: 10.220.1.1
                    Communities: 64850:20150 64874:1 target:64850:10
                    Import Accepted
                    VPN Label: 302592
                    Localpref: 160
                    Router ID: 10.220.1.2
                    Primary Routing Table bgp.l3vpn.0
                    Indirect next hops: 1
                            Protocol next hop: 10.220.1.1 Metric: 1
                            Label operation: Push 302592
                            Label TTL action: prop-ttl
                            Load balance label: Label 302592: None; 
                            Indirect next hop: 0x9780110 1048577 INH Session ID: 0x100007
                            Indirect path forwarding next hops: 1
                                    Next hop type: Router
                                    Next hop: 10.55.1.0 via ge-0/0/6.5
                                    Session Id: 0x100003
                            10.220.1.1/32 Originating RIB: inet.3
                              Metric: 1                       Node path count: 1
                              Forwarding nexthops: 1
                                    Nexthop: 10.55.1.0 via ge-0/0/6.5
             BGP    Preference: 170/-161
                    Route Distinguisher: 10.220.1.2:2
                    Next hop type: Indirect
                    Address: 0x9758d30
                    Next-hop reference count: 120
                    Source: 10.220.1.2
                    Next hop type: Router, Next hop index: 716
                    Next hop: 10.55.2.0 via ge-0/0/7.5, selected
                    Label operation: Push 302576
                    Label TTL action: prop-ttl
                    Load balance label: Label 302576: None; 
                    Session Id: 0x100001
                    Protocol next hop: 10.220.1.2
                    Label operation: Push 302576
                    Label TTL action: prop-ttl
                    Load balance label: Label 302576: None; 
                    Indirect next hop: 0x9780220 1048576 INH Session ID: 0x100006
                    State: <Secondary NotBest Int Ext ProtectionCand>
                    Inactive reason: Not Best in its group - Router ID
                    Local AS: 64850 Peer AS: 64850
                    Age: 38:05      Metric2: 1 
                    Validation State: unverified 
                    Task: BGP_64850.10.220.1.2+59509
                    AS path: 64851 64874 64850 64870 I
                    Communities: 64850:20150 64874:1 target:64850:10
                    Import Accepted
                    VPN Label: 302576
                    Localpref: 160
                    Router ID: 10.220.1.2
                    Primary Routing Table bgp.l3vpn.0
                    Indirect next hops: 1
                            Protocol next hop: 10.220.1.2 Metric: 1
                            Label operation: Push 302576
                            Label TTL action: prop-ttl
                            Load balance label: Label 302576: None; 
                            Indirect next hop: 0x9780220 1048576 INH Session ID: 0x100006
                            Indirect path forwarding next hops: 1
                                    Next hop type: Router
                                    Next hop: 10.55.2.0 via ge-0/0/7.5
                                    Session Id: 0x100001
                            10.220.1.2/32 Originating RIB: inet.3
                              Metric: 1                       Node path count: 1
                              Forwarding nexthops: 1
                                    Nexthop: 10.55.2.0 via ge-0/0/7.5

    What is the Address in hex ?

    how to interpret Next hop index ?

    root@LS-UW# run show route receive-protocol bgp 10.220.1.2 logical-system LS-MC 10.146.40.0 
    
    MC.inet.0: 35 destinations, 118 routes (35 active, 0 holddown, 0 hidden)
      Prefix                  Nexthop              MED     Lclpref    AS path
    * 10.146.40.0/24          10.220.1.1                   100        64851 64874 64850 64870 I
                              10.220.1.2                   100        64851 64874 64850 64870 I
    
    root@LS-UW# run show route receive-protocol bgp 10.220.1.2 logical-system LS-MC 10.146.40.0 extensive 
    
    MC.inet.0: 35 destinations, 118 routes (35 active, 0 holddown, 0 hidden)
    * 10.146.40.0/24 (4 entries, 1 announced)
         Import Accepted
         Route Distinguisher: 10.220.1.1:1
         VPN Label: 302592
         Nexthop: 10.220.1.1
         Localpref: 100
         AS path: 64851 64874 64850 64870 I (Originator)
         Cluster list:  12.12.12.12
         Originator ID: 10.220.1.1
         Communities: 64850:20150 64874:1 target:64850:10
         Import Accepted
         Route Distinguisher: 10.220.1.2:2
         VPN Label: 302576
         Nexthop: 10.220.1.2
         Localpref: 100
         AS path: 64851 64874 64850 64870 I
         Communities: 64850:20150 64874:1 target:64850:10
    
    

    Why does the router receive two routes ?

    thanks so much !



  • 2.  RE: routing questions

    Posted 03-16-2023 10:40

    Hi, @gongyayu. Can you send the topology? Please, display ASNs, IPs, Cluster (in case use Route Reflector).



    ------------------------------
    Guilherme Rigueti
    ------------------------------



  • 3.  RE: routing questions

    Posted 03-17-2023 10:39

    thanks!   I will power on my lab this Saturday and send my whole topology.




  • 4.  RE: routing questions
    Best Answer

    Posted 03-17-2023 12:22
    Edited by gongyayu 03-17-2023 15:05

    I see the same type of thing occur in my network.   You mentioned "I expect to see two, but I have four here. why the same route appears twice?"

    2x2=4

    In my network, I see 6 for my 0/0 default route to the Internet.  I have 3 internet connections, which all receive a default route.  At first glance, you might expect remote PE's to receive 3 default routes... but they receive 6.  Because, like you, I also have dual route reflectors...

    3x2=6

    When running dual route reflector nodes, your mp-ibgp rr clients  will always receive X2 routes for everything.  This is because  the RR cluster members have the naturally learned route and the reflected route from the far-side rr neighbor, so x2 routes result at each RR node.  Then those 2 RR cluster nodes reflect those x2 routes to RR clients which will then have 4.  2 from RR node 1, and 2 from RR node 2

    The RR clients ends up with all 4 entries like you have shown ...

    10.146.41.0/24     
    1 --- AS path: 64851 64874 64850 64870 I
    2 --- AS path: 64851 64874 64850 64870 I
    3 --- AS path: 64851 64874 64850 64870 I
    4 --- AS path: 64851 64874 64850 64870 I

    The client can see the source of those reflected routes like this... 2 from each RR cluster member

    show route 10.146.41.10 logical-system LS-MC extensive | grep "protocol next hop"

    10.220.1.1
    10.220.1.1
    10.220.1.2
    10.220.1.2

    I'm thinking those ip addresses are the loopbacks (RID, router ID) of each of the 2 RR cluster nodes which you also use for peering, if so...

    you can see these routes received from each RR like this...

    show route receive-protocol bgp 10.220.1.1 10.146.41.0/24 exact table MC.inet.0

    show route receive-protocol bgp 10.220.1.2 10.146.41.0/24 exact table MC.inet.0

    you can see the best/active route with...

    show route 10.146.41.10 logical-system LS-MC active

    to learn why it's active, you can look at the reason....

    show route 10.146.41.10 logical-system LS-MC extensive | grep reason

    in the default state, the reason is lowest loopback address.  so all traffic will probably flow via 10.220.1.1

    when I needed to load balance traffic in my network I learned the following...

    A few protocols (i think bgp-based l3vpn, and perhaps rsvp-te) will use the inet.3 table for its metrics when deciding best path 

    show route table inet.3 | grep metric

    ...you should see that all metrics are 1

    with that, now see this command...

    show route 10.146.41.10 logical-system LS-MC extensive | grep metric

    you will see that the metric for all 4 routes is 1, this is because, inet.3 doesn't use the inet.0 IGP metric.  however, I wanted my remote PE's to load balance for Internet, particularly CGNat balancing, so I needed the inet.0 IGP metric to be used as part of the best path calculation to the cgnat node exit point... here's a simple LDP command to enable this...

    set protocols ldp track-igp-metric

    this command will now cause all inet.0 metrics to be copied into inet.3

    show route table inet.0 | grep metric

    show route table inet.3 | grep metric

    you should see the inet.0 and inet.3 metrics the same now.

    now you will see the ripple affect into the bgp metrics for best path calculation, and are no longer simply based on a RID tie-breaker

    show route 10.146.41.10 logical-system LS-MC extensive | grep metric

    and now your best path active/inactive reason will change...

    show route 10.146.41.10 logical-system LS-MC extensive | grep reason

    In your simple 3-node-triangle network, your remote PE "LS-UW" may not see a change since the underlying default ospf metrics are 1, but now if you change one of those ospf interfaces , you could then see how to alter the best path calculation using the igp metric.  there are others ways of traffic engineering, but this is a simply way to alter it and see the dependencies and points of influence

    set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 metric 2

    having dual route reflector hub architecture is wonderful for redundancy and fault tolerance, and, I'll add, for maintenance activities which may/will cause bgp neighbors to bounce.  adding new address families for growth or new technologies (evpn, l2vpn, inet6) will cause a neighbor session to flap, but don't worry since the other rr neighbor connection will stay up and you should not have an outage.  very nice.  

    btw, i did a video about this.  Maybe it will help you and others...

    "juniper and cisco i-bgp scalability using dual route reflectors"

    https://youtu.be/J4dmmpat9ZI



    ------------------------------
    - Aaron
    ------------------------------



  • 5.  RE: routing questions

    Posted 03-17-2023 15:06

    aaron:

        thanks so much !! I will definitely  study this this weekend.