4

I'm doing some tests in my lab preparing for CCIE R&S and I'm diving into how MPLS works and I ran into a issue with getting traceroute to display the label path in it's output. I have not found out why this is not working.

I can ping fine between the CE's.

this is the setup.

CE1 - PE1 - P1 - P2 - PE2 - CE2

P1/P2 only have OSPF enabled with OSPF mpls autoconfig for area 0

CE-PE protocol is BGP

here is the PE2 BGP config:

router bgp 100
 bgp router-id 80.2.2.2
 bgp log-neighbor-changes
 no bgp default ipv4-unicast
 neighbor 80.1.1.1 remote-as 100
 neighbor 80.1.1.1 update-source Loopback0
 !
 address-family ipv4
  redistribute ospf 1
  neighbor 80.1.1.1 activate
  neighbor 80.1.1.1 send-community
 exit-address-family
 !
 address-family vpnv4
  neighbor 80.1.1.1 activate
  neighbor 80.1.1.1 send-community extended
 exit-address-family
 !
 address-family ipv4 vrf CPE2
  redistribute connected
  redistribute ospf 1010
  neighbor 192.168.99.20 remote-as 20
  neighbor 192.168.99.20 activate
  neighbor 192.168.99.20 next-hop-self
 exit-address-family

IP VRF:

ip vrf CPE2
 rd 20:20
 route-target export 200:200
 route-target export 700:700
 route-target import 100:100
 route-target import 700:700

and here are show commands

PE2#show ip bgp vpnv4 vrf CPE2 
BGP table version is 31, local router ID is 80.2.2.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, 
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, 
              x best-external, a additional-path, c RIB-compressed, 
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
Route Distinguisher: 20:20 (default for vrf CPE2)
 *>i 192.168.1.0      80.1.1.1                 0    100      0 ?
 *>i 192.168.10.0     80.1.1.1                 0    100      0 10 ?
 *>  192.168.20.0     192.168.99.20            0             0 20 ?
 *>  192.168.99.0     0.0.0.0                  0         32768 ?
 *                    192.168.99.20            0             0 20 ?
 *>i 192.168.100.1/32 80.1.1.1                 0    100      0 10 ?
 *>  192.168.100.2/32 192.168.99.20            0             0 20 ?

and here is the mpls forwarding table

PE2# show mpls forwarding-table 
Local      Outgoing   Prefix           Bytes Label   Outgoing   Next Hop    
Label      Label      or Tunnel Id     Switched      interface              
1200       Pop Label  10.1.2.2/32      0             Et0/0      10.50.1.2   
1201       Pop Label  10.10.10.0/24    0             Et0/0      10.50.1.2   
1202       Pop Label  10.10.8.0/24     0             Et0/0      10.50.1.2   
1203       Pop Label  10.10.7.0/24     0             Et0/0      10.50.1.2   
1204       Pop Label  10.10.2.0/24     0             Et0/0      10.50.1.2   
1205       Pop Label  10.10.1.0/24     0             Et0/0      10.50.1.2   
1206       202        80.1.1.1/32      0             Et0/0      10.50.1.2   
1207       203        10.1.1.1/32      0             Et0/0      10.50.1.2   
1208       204        10.40.2.0/24     0             Et0/0      10.50.1.2   
1209       205        10.10.9.0/24     0             Et0/0      10.50.1.2   
1210       206        10.10.6.0/24     0             Et0/0      10.50.1.2   
1211       207        10.10.5.0/24     0             Et0/0      10.50.1.2   
1212       208        10.40.1.0/24     0             Et0/0      10.50.1.2   
1213       No Label   192.168.20.0/24[V]   \
                                       0             Et1/0      192.168.99.20
1214       No Label   192.168.99.0/24[V]   \
                                       3420          aggregate/CPE2 
1215       No Label   192.168.100.2/32[V]   \
                                       696           Et1/0      192.168.99.20

PE2# show ip bgp vpnv4 vrf CPE2 192.168.100.2
BGP routing table entry for 20:20:192.168.100.2/32, version 12
Paths: (1 available, best #1, table CPE2)
  Advertised to update-groups:
     3         
  Refresh Epoch 2
  20
    192.168.99.20 from 192.168.99.20 (192.168.100.2)
      Origin incomplete, metric 0, localpref 100, valid, external, best
      Extended Community: RT:200:200 RT:700:700
      mpls labels in/out 1215/nolabel
      rx pathid: 0, tx pathid: 0x0

CPE2#traceroute 192.168.100.1 source lo0
Type escape sequence to abort.
Tracing the route to 192.168.100.1
VRF info: (vrf in name/id, vrf out name/id)
  1 192.168.99.2 1 msec 0 msec 0 msec
  2  *  *  * 
  3  *  *  * 
  4  *  *  * 
  5 192.168.1.111 [AS 100] 1 msec *  0 msec

the Loopbacks of CE1 / CE2 are 192.168.100.1 and 192.168.100.2 So you see that I have the local lable for 192.168.100.2 - that is going from PE2->CE2 non mpls - but what I don't see are labels for the 192.168.100.1 that is going to go over the P routers. the BGP points to 8.1.1.1 and that has a label.

so is this normal - or do I have to make some changes to get the router to create labels for every route - perhaps I'm missing some point here.

  • benni
  • Did any answer help you? If so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you could provide and accept your own answer. – Ron Maupin Aug 11 '17 at 15:12
3

but what I don't see are labels for the 192.168.100.1 that is going to go over the P routers. the BGP points to 8.1.1.1 and that has a label - If you have configured PE1 as 8.1.1.1 with next-hop-self then that is how the routes should look.

I suggesst you read more about BGP behaviour for MPBGP sessions and sending labeled updates for IPV4 unicast and VPNV4 etc.

-2

I'm certainly nowhere near the IE level yet, but when I've run into this issue at work, it has usually been that "mpls oam" was not enabled. Your label distribution is working as intended, that's the only reason I could imagine you're not seeing the labels

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.