Support Support Downloads Knowledge Base Case Manager My Juniper Community

Knowledge Base

Search our Knowledge Base sites to find answers to your questions.

Ask All Knowledge Base Sites All Knowledge Base Sites JunosE Defect (KA)Knowledge BaseSecurity AdvisoriesTechnical BulletinsTechnotes Sign in to display secure content and recently viewed articles

[Junos] Without "family mpls," a labeled route may be unresolvable over an interface

0

0

Article ID: KB33705 KB Last Updated: 31 Jan 2019Version: 1.0
Summary:

This article describes what happens when a labeled route is resolved over an interface, and details the configuration that is required for the route to be resolved successfully.

 

Symptoms:

Observe the following simple topology, where we have the Open Shortest Path First (OSPF) and Internal Border Gateway Protocol (IBGP) protocols with labeled-unicast between the R1 and R2 lo0 address. Note that in this case R2 is advertising the route, 165.24.32.0/32, towards R1.

 
R1 -----------OSPF / BGP labeled-unicast---------R2
 
labroot@RR-R1> show configuration | display set
set interfaces xe-5/0/0 unit 0 family inet address 11.11.11.1/30
set interfaces fxp0 unit 0 family inet address 10.219.34.216/26
set interfaces lo0 unit 0 family inet address 192.168.1.1/32
set routing-options static route 0.0.0.0/0 next-hop 10.219.34.193
set routing-options autonomous-system 100
set protocols bgp group ibgp type internal
set protocols bgp group ibgp local-address 192.168.1.1
set protocols bgp group ibgp neighbor 192.168.1.2 family inet labeled-unicast
set protocols ospf area 0.0.0.0 interface all


labroot@R2> show configuration | display set
set interfaces xe-5/0/1 unit 0 family inet address 11.11.11.2/30
set interfaces lo0 unit 1 family inet address 192.168.1.2/32
set protocols bgp group ibgp type internal
set protocols bgp group ibgp local-address 192.168.1.2
set protocols bgp group ibgp export dir-bgp
set protocols bgp group ibgp neighbor 192.168.1.1 family inet labeled-unicast
set protocols ospf area 0.0.0.0 interface all
set policy-options policy-statement dir-bgp term 1 from protocol static
set policy-options policy-statement dir-bgp term 1 from route-filter 165.24.32.0/32 exact
set policy-options policy-statement dir-bgp term 1 then accept
set routing-options static route 165.24.32.0/32 discard
set routing-options router-id 192.168.1.2
set routing-options autonomous-system 100


labroot@R2> show route advertising-protocol bgp 192.168.1.1 
inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
  Prefix                  Nexthop              MED     Lclpref    AS path
* 165.24.32.0/32          Self                         100        I


labroot@R2> show route advertising-protocol bgp 192.168.1.1 extensive
inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
* 165.24.32.0/32 (1 entry, 1 announced)
BGP group ibgp type Internal
     Route Label: 16
     Nexthop: Self
     Flags: Nexthop Change
     Localpref: 100
     AS path: [100] I
     Entropy label capable

 

Cause:

As per default behavior, the BGP protocol next-hop for a labeled route is resolved through the inet.3 table, and if there is no route resolution in the inet.3 table, route resolution is attempted in the inet.0 table.

In the above topology, we have a route for protocol next-hop in the inet.0 table but the route 165.24.32.0/32 is in hidden state because the protocol next-hop 192.168.1.2 is pointing to an interface, xe-5/0/0.0, where family mpls has not been configured.

The route becomes hidden due to a check that was added in PR1242589. As per PR1242589, an interface must have family mpls configured for the route to be successfully resolved. If family mpls is missing on an interface, it is expected that the route would go into a hidden state.

labroot@RR-R1# run show route receive-protocol bgp 192.168.1.2 hidden   
inet.0: 10 destinations, 10 routes (9 active, 0 holddown, 1 hidden)
  Prefix                  Nexthop              MED     Lclpref    AS path
  165.24.32.0/32          192.168.1.2                  100        I


labroot@RR-R1# run show route receive-protocol bgp 192.168.1.2 hidden extensive   
inet.0: 10 destinations, 10 routes (9 active, 0 holddown, 1 hidden)
  165.24.32.0/32 (1 entry, 0 announced)
     Accepted
     Route Label: 16
     Nexthop: 192.168.1.2
     Localpref: 100
     AS path: I
     Entropy label capable, next hop field matches route next hop


labroot@RR-R1# run show route 165.24.32.0/32 hidden
inet.0: 10 destinations, 10 routes (9 active, 0 holddown, 1 hidden)
+ = Active Route, - = Last Active, * = Both

165.24.32.0/32      [BGP/170] 00:04:05, localpref 100, from 192.168.1.2
                      AS path: I, validation-state: unverified
                      Unusable


labroot@RR-R1# run show route 165.24.32.0/32 extensive
inet.0: 10 destinations, 10 routes (9 active, 0 holddown, 1 hidden)


labroot@RR-R1# run show route 165.24.32.0/32 hidden extensive
inet.0: 10 destinations, 10 routes (9 active, 0 holddown, 1 hidden)
165.24.32.0/32 (1 entry, 0 announced)
         BGP    Preference: 170/-101
                Next hop type: Unusable, Next hop index: 0
                Address: 0x2a36c64
                Next-hop reference count: 2
                State: <Hidden Int Ext>
                Local AS:   100 Peer AS:   100
                Age: 4:14
                Validation State: unverified
                Task: BGP_100.192.168.1.2+179
                AS path: I
                Accepted
                Route Label: 16
                Localpref: 100
                Router ID: 192.168.1.2
                Indirect next hops: 1
                        Protocol next hop: 192.168.1.2
                        Label operation: Push 16
                        Label TTL action: prop-ttl
                        Load balance label: Label 16: None;
                        Indirect next hop: 0x0 - INH Session ID: 0x0
                        Indirect path forwarding next hops: 0
                                Next hop type: Unusable


labroot@RR-R1# run show route 192.168.1.2
inet.0: 10 destinations, 10 routes (9 active, 0 holddown, 1 hidden)
+ = Active Route, - = Last Active, * = Both
192.168.1.2/32     *[OSPF/10] 01:07:52, metric 1
                    > to 11.11.11.2 via xe-5/0/0.0


labroot@RR-R1# run show route 192.168.1.2 extensive
inet.0: 10 destinations, 10 routes (9 active, 0 holddown, 1 hidden)
192.168.1.2/32 (1 entry, 1 announced)
        State: <FlashAll>
TSI:
KRT in-kernel 192.168.1.2/32 -> {11.11.11.2}
        *OSPF   Preference: 10
                Next hop type: Router, Next hop index: 653
                Address: 0x48df3b4
                Next-hop reference count: 3
                Next hop: 11.11.11.2 via xe-5/0/0.0, selected
                Session Id: 0x148
                State: <Active Int>
                Local AS:   100
                Age: 1:07:55    Metric: 1
                Validation State: unverified
                Area: 0.0.0.0
                Task: OSPF
                Announcement bits (3): 0-KRT 5-Resolve tree 1 6-LDP
                AS path: I

 
labroot@RR-R1> show configuration interfaces xe-5/0/0
unit 0 {
    family inet {
        address 11.11.11.1/30;
    }
}

 

Solution:

As shown below, when family mpls is configured, the labeled route is resolvable.

labroot@RR-R1# set interfaces xe-5/0/0.0 family mpls      
labroot@RR-R1# commit
commit complete


labroot@RR-R1# run show route 165.24.32.0/32             
inet.0: 10 destinations, 10 routes (10 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

165.24.32.0/32     *[BGP/170] 00:00:44, localpref 100, from 192.168.1.2
                      AS path: I, validation-state: unverified
                    > to 11.11.11.2 via xe-5/0/0.0, Push 16


labroot@RR-R1# run show route 165.24.32.0/32 extensive   
inet.0: 10 destinations, 10 routes (10 active, 0 holddown, 0 hidden)
165.24.32.0/32 (1 entry, 1 announced)
TSI:
KRT in-kernel 165.24.32.0/32 -> {indirect(1048574)}
        *BGP    Preference: 170/-101
                Next hop type: Indirect, Next hop index: 0
                Address: 0x48df024
                Next-hop reference count: 2
                Source: 192.168.1.2
                Next hop type: Router, Next hop index: 655
                Next hop: 11.11.11.2 via xe-5/0/0.0, selected
                Label operation: Push 16
                Label TTL action: prop-ttl
                Load balance label: Label 16: None;
                Label element ptr: 0x3e2de00
                Label parent element ptr: 0x0
                Label element references: 1
                Label element child references: 0
                Label element lsp id: 0
                Session Id: 0x148
                Protocol next hop: 192.168.1.2
                Label operation: Push 16
                Label TTL action: prop-ttl
                Load balance label: Label 16: None;
                Indirect next hop: 0x7ad8200 1048574 INH Session ID: 0x14d
                State: <Active Int Ext>
                Local AS:   100 Peer AS:   100
                Age: 45         Metric2: 1
                Validation State: unverified
                Task: BGP_100.192.168.1.2+179
                Announcement bits (2): 0-KRT 5-Resolve tree 1
                AS path: I
                Accepted
                Route Label: 16
                Localpref: 100
                Router ID: 192.168.1.2
                Indirect next hops: 1
                        Protocol next hop: 192.168.1.2 Metric: 1
                        Label operation: Push 16
                        Label TTL action: prop-ttl
                        Load balance label: Label 16: None;
                        Indirect next hop: 0x7ad8200 1048574 INH Session ID: 0x14d
                        Indirect path forwarding next hops: 1
                                Next hop type: Router
                                Next hop: 11.11.11.2 via xe-5/0/0.0
                                Session Id: 0x148
                        192.168.1.2/32 Originating RIB: inet.0
                          Metric: 1                       Node path count: 1
                          Forwarding nexthops: 1
                                Nexthop: 11.11.11.2 via xe-5/0/0.0
                                Session Id: 148

 

Comment on this article > Affected Products Browse the Knowledge Base for more articles related to these product categories. Select a category to begin.

Getting Up and Running with Junos

Getting Up and Running with Junos Security Alerts and Vulnerabilities Product Alerts and Software Release Notices Problem Report (PR) Search Tool EOL Notices and Bulletins JTAC User Guide Customer Care User Guide Pathfinder SRX High Availability Configurator SRX VPN Configurator Training Courses and Videos End User Licence Agreement Global Search