0% found this document useful (0 votes)
316 views54 pages

Segment Routing

Segment Routing

Uploaded by

Samarjit Dutta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
316 views54 pages

Segment Routing

Segment Routing

Uploaded by

Samarjit Dutta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 54

SR-INTRO-LAB

Rajmohan R
CX Migrations

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Agenda
• ISIS – SR Configuration

• Prefix & Adjacency SID Verification

• SRGB

• ISIS – Multi Level

• SR Mapping Server

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Lab Topology X – Area; Y – Router
Link Address: 100.Y.Y.Y
Link R1 – R3: 100.1.3.1 – 100.1.3.3
Loopback – 99.99.X.Y
L1/L2 – R1; R2; R6; R7
NET: 49.000X.0000.0000.000Y.00

Level-1 / AREA 1 Level-2 / AREA 0 Level-1 / AREA 2

R11 R1 R3 R6 R8

R13 R4 R10

R2 R5 R7
R12 R9

CE1 CE2

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Base Configuration
• R1 to R13
• Interface configuration
• IGP – ISIS Configuration (Area 0, 1 & 2)
• Default route available at Area 1 & 2 (Level – 1)
• IP reachability from R13 to R10 (No MPLS LSP)

• PE (R13 & R10)


• MP-BGP VPNv4 session
• VRF RED for CE
• PE-CE Static Route

• CE (CE1 & CE2)


• CE loopback
• Default Route
• No reachability between CE routers

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Lab Topology X – Area; Y – Router
Link Address: 100.Y.Y.Y
Link R1 – R3: 100.1.3.1 – 100.1.3.3
Loopback – 99.99.X.Y
L1/L2 – R1; R2; R6; R7
NET: 49.000X.0000.0000.000Y.00

Level-1 / AREA 1 Level-2 / AREA 0 Level-1 / AREA 2

R11 R1 R3 R6 R8

R13 R4 R10

R2 R5 R7
R12 R9

CE1 CE2

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Verify LFIB (Must be empty)

RP/0/0/CPU0:R1#show mpls forwarding


Thu Sep 27 00:17:27.013 UTC
RP/0/0/CPU0:R1#

R2#show mpls forwarding-table


no MPLS apps enabled or MPLS not enabled on any interfaces

R2#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Verify LSD & SRGB

RP/0/0/CPU0:R1#show mpls label table detail


Thu Sep 27 00:26:26.946 UTC
Table Label Owner State Rewrite
----- ------- ------------------------------- ------ -------
0 0 LSD(A) InUse Yes
0 1 LSD(A) InUse Yes
0 2 LSD(A) InUse Yes
0 13 LSD(A) InUse Yes
RP/0/0/CPU0:R1#
RP/0/0/CPU0:R1#show mpls label range
Thu Sep 27 00:26:33.995 UTC
Range for dynamic labels: Min/Max: 24000/1048575
RP/0/0/CPU0:R1#
RP/0/0/CPU0:R1#

R2#show mpls label range


Downstream Generic label region: Min/Max label: 16/100000

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Verify LSP details in ISIS database

RP/0/0/CPU0:R1#show isis database R5.00-00 verbose


Thu Sep 27 00:30:37.309 UTC

IS-IS IGP (Level-2) Link State Database


LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
R5.00-00 0x00000007 0x6c31 750 0/0/0
Area Address: 49.0000
Metric: 10 IS-Extended R2.00
Metric: 10 IS-Extended R4.00
Metric: 10 IS-Extended R7.00
NLPID: 0xcc
IP Address: 99.99.0.5
Metric: 0 IP-Extended 99.99.0.5/32
Prefix Attribute Flags: X:0 R:0 N:1
Hostname: R5
RP/0/0/CPU0:R1#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Configure SR in routers (R4 with absolute label value. All other routers with Index)

IOS XR Configuration IOS/XE Configuration


! !
router isis IGP segment-routing mpls
! !
address-family ipv4 connected-prefix-sid-map
segment-routing mpls address-family ipv4
! 99.99.0.2/32 index 2 range 1
interface Loopback0 !99.99.0.4/32 absolute 16004!
address-family ipv4 exit-address-family
prefix-sid index 1 !
!prefix-sid absolute 16004! !
! router isis IGP
! segment-routing mpls
!

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Verify LSD & SRGB R2#sh mpls label range
Downstream Generic label region: Min/Max label: 16/100000
Range for Reserved labels:
1. Range ID: 0 Owner: SR-APP
Min/Max label: 16000/23999
Clients Permitted: ISIS OSPF
BGP-Segment-Routing
Clients In Use: ISIS
Checkpoint Labels Unclaimed: FALSE

R2#

RP/0/0/CPU0:R1#show mpls label table detail


<...snip...>
Table Label Owner State Rewrite
----- ------- ------------------------------- ------ -------
0 0 LSD(A) InUse Yes
0 1 LSD(A) InUse Yes
0 2 LSD(A) InUse Yes
0 13 LSD(A) InUse Yes
0 16000 ISIS(A):IGP InUse No
(Lbl-blk SRGB, vers:0, (start_label=16000, size=8000)
0 24000 ISIS(A):IGP InUse Yes
(SR Adj Segment IPv4, vers:0, index=1, type=0, intf=Gi0/0/0/0, nh=100.1.2.2)
0 24001 ISIS(A):IGP InUse Yes
(SR Adj Segment IPv4, vers:0, index=3, type=0, intf=Gi0/0/0/0, nh=100.1.2.2)
©<...snip...>
2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Verify LSP details in ISIS database (Router Capability, Adj-SID, Prefix-SID)

RP/0/0/CPU0:R4#show isis database R4.00-00 verbose


Thu Sep 27 00:52:52.177 UTC

IS-IS IGP (Level-2) Link State Database


LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
R4.00-00 0x0000000f 0xd54a 1104 0/0/0
Area Address: 49.0000
NLPID: 0xcc
Router Cap: 99.99.0.4, D:0, S:0
Segment Routing: I:1 V:0, SRGB Base: 16000 Range: 8000
SR Algorithm:
Algorithm: 0
Algorithm: 1
Node Maximum SID Depth:
Subtype: 1, Value: 16
Hostname: R4
Metric: 10 IS-Extended R3.00
ADJ-SID: F:0 B:0 V:1 L:1 S:0 P:0 weight:0 Adjacency-sid:16
Metric: 10 IS-Extended R3.00
ADJ-SID: F:0 B:0 V:1 L:1 S:0 P:0 weight:0 Adjacency-sid:17
Metric: 10 IS-Extended R5.00
ADJ-SID: F:0 B:0 V:1 L:1 S:0 P:0 weight:0 Adjacency-sid:18
IP Address: 99.99.0.4
Metric: 0 IP-Extended 99.99.0.4/32
Prefix Attribute Flags: X:0 R:0 N:1
Prefix-SID
© 2018 Index:
Cisco and/or its affiliates. All rights 4, Algorithm:0,
reserved. Cisco Confidential R:0 N:1 P:0 E:0 V:0 L:0
Task 1: Configure SR in Area 0
• Verify LSP details in ISIS database (Router Capability, Adj-SID, Prefix-SID)

RP/0/0/CPU0:R5#sh isis database R5.00-00 verbose


IS-IS IGP (Level-2) Link State Database
<.. Snip ..>
Router Cap: 99.99.0.5, D:0, S:0
Segment Routing: I:1 V:0, SRGB Base: 16000 Range: 8000
SR Algorithm:
Algorithm: 0
Algorithm: 1
Node Maximum SID Depth:
Subtype: 1, Value: 10
<.. Snip ..>
Metric: 0 IP-Extended 99.99.0.5/32
Prefix-SID Index: 5, Algorithm:0, R:0 N:1 P:0 E:0 V:0 L:0
Prefix Attribute Flags: X:0 R:0 N:1
Metric: 10 IS-Extended R4.00
ADJ-SID: F:0 B:0 V:1 L:1 S:0 P:0 weight:0 Adjacency-sid:24005
Metric: 10 IS-Extended R4.00
ADJ-SID: F:0 B:0 V:1 L:1 S:0 P:0 weight:0 Adjacency-sid:24007
<.. Snip ..>
RP/0/0/CPU0:R5#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Verify LFIB (Prefix & Adj SID population)

RP/0/0/CPU0:R1#show mpls forwarding


Thu Sep 27 01:10:08.316 UTC
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
16002 Unlabelled SR Pfx (idx 2) Gi0/0/0/4 100.1.11.11 0
16003 Pop SR Pfx (idx 3) Gi0/0/0/2 100.1.3.3 0
16004 16004 SR Pfx (idx 4) Gi0/0/0/2 100.1.3.3 0
16005 16005 SR Pfx (idx 5) Gi0/0/0/0 100.1.2.2 0
16006 16006 SR Pfx (idx 6) Gi0/0/0/2 100.1.3.3 0
16007 16007 SR Pfx (idx 7) Gi0/0/0/0 100.1.2.2 0
16007 SR Pfx (idx 7) Gi0/0/0/2 100.1.3.3 0
24000 Pop SR Adj (idx 1) Gi0/0/0/0 100.1.2.2 0
24001 Pop SR Adj (idx 3) Gi0/0/0/0 100.1.2.2 0
24002 Pop SR Adj (idx 1) Gi0/0/0/2 100.1.3.3 0
24003 Pop SR Adj (idx 3) Gi0/0/0/2 100.1.3.3 0
24004 Pop SR Adj (idx 0) Gi0/0/0/4 100.1.11.11 0
24005 Pop SR Adj (idx 2) Gi0/0/0/4 100.1.11.11 0

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Verify LFIB (Prefix & Adj SID population)

RP/0/0/CPU0:R1#show isis adjacency detail

IS-IS IGP Level-2 adjacencies:


System Id Interface SNPA State Hold Changed NSF IPv4 IPv6
BFD BFD
R2 Gi0/0/0/0 *PtoP* Up 27 03:24:11 Yes None None
Area Address: 49.0001
Neighbor IPv4 Address: 100.1.2.2*
Adjacency SID: 24000
Non-FRR Adjacency SID: 24001
Topology: IPv4 Unicast
R3 Gi0/0/0/2 *PtoP* Up 24 03:32:23 Yes None None
Area Address: 49.0000
Neighbor IPv4 Address: 100.1.3.3*
Adjacency SID: 24002
Non-FRR Adjacency SID: 24003
Topology: IPv4 Unicast

Total adjacency count: 2

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Verify LFIB (Prefix & Adj SID population)

R2#sh mpls forwarding-table


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16 Pop Label 100.2.12.12-A 0 Et0/3 100.2.12.12
17 Pop Label 100.1.2.1-A 0 Et0/0 100.1.2.1
18 Pop Label 100.2.5.5-A 0 Et0/1 100.2.5.5
16001 No Label 99.99.0.1/32 0 Et0/3 100.2.12.12
16003 16003 99.99.0.3/32 0 Et0/0 100.1.2.1
16004 16004 99.99.0.4/32 0 Et0/1 100.2.5.5
16005 Pop Label 99.99.0.5/32 0 Et0/1 100.2.5.5
16006 16006 99.99.0.6/32 0 Et0/0 100.1.2.1
16006 99.99.0.6/32 0 Et0/1 100.2.5.5
16007 16007 99.99.0.7/32 0 Et0/1 100.2.5.5

A - Adjacency SID

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Verify MPLS LSP between Routers (R2 – R6)

R2#sh mpls forwarding-table 99.99.0.6 32


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16006 16006 99.99.0.6/32 0 Et0/0 100.1.2.1
16006 99.99.0.6/32 0 Et0/1 100.2.5.5
R2#
R2#ping 99.99.0.6 source loopback0
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 99.99.0.6, timeout is 2 seconds:
Packet sent with a source address of 99.99.0.2
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 3/3/5 ms
R2#
R2#traceroute 99.99.0.6 source loopback0 probe 2 numeric
Type escape sequence to abort.
Tracing the route to 99.99.0.6
VRF info: (vrf in name/id, vrf out name/id)
1 100.1.2.1 [MPLS: Label 16006 Exp 0] 4 msec
100.2.5.5 [MPLS: Label 16006 Exp 0] 6 msec
2 100.1.3.3 [MPLS: Label 16006 Exp 0] 3 msec
100.5.7.7 [MPLS: Label 16006 Exp 0] 2 msec
3 100.3.6.6 3 msec
100.6.7.6 4 msec
R2#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Change SRGB to 17000 – 23999 in R5 !
router isis IGP
segment-routing global-block 17000 23999
!

RP/0/0/CPU0:R5#sh mpls label table detail


Table Label Owner State Rewrite
----- ------- ------------------------------- ------ -------
0 0 LSD(A) InUse Yes
0 1 LSD(A) InUse Yes
0 2 LSD(A) InUse Yes
0 13 LSD(A) InUse Yes
0 17000 ISIS(A):IGP InUse No
(Lbl-blk SRGB, vers:0, (start_label=17000, size=7000)
0 24000 ISIS(A):IGP InUse Yes
(SR Adj Segment IPv4, vers:0, index=1, type=0, intf=Gi0/0/0/1, nh=100.2.5.2)
0 24001 ISIS(A):IGP InUse Yes
(SR Adj Segment IPv4, vers:0, index=3, type=0, intf=Gi0/0/0/1, nh=100.2.5.2)
RP/0/0/CPU0:R5#
RP/0/0/CPU0:R5#sh mpls forwarding
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
17001 16001 SR Pfx (idx 1) Gi0/0/0/1 100.2.5.2 0
17002 Pop SR Pfx (idx 2) Gi0/0/0/1 100.2.5.2 0
17003 16003 SR Pfx (idx 3) Gi0/0/0/0 100.4.5.44 0
16003 SR Pfx (idx 3) Gi0/0/0/2 100.4.5.4 0
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 1: Configure SR in Area 0
• Verify MPLS LSP between Routers (R2 – R6)

R2#sh mpls forwarding-table 99.99.0.6 32


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16006 16006 99.99.0.6/32 0 Et0/0 100.1.2.1
17006 99.99.0.6/32 0 Et0/1 100.2.5.5
R2#
R2#ping 99.99.0.6 source loopback0
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 99.99.0.6, timeout is 2 seconds:
Packet sent with a source address of 99.99.0.2
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/6 ms
R2#
R2#traceroute 99.99.0.6 source loopback0 probe 2 numeric
Type escape sequence to abort.
Tracing the route to 99.99.0.6
VRF info: (vrf in name/id, vrf out name/id)
1 100.1.2.1 [MPLS: Label 16006 Exp 0] 5 msec
100.2.5.5 [MPLS: Label 17006 Exp 0] 4 msec
2 100.1.3.3 [MPLS: Label 16006 Exp 0] 3 msec
100.5.7.7 [MPLS: Label 16006 Exp 0] 4 msec
3 100.3.6.6 4 msec
100.6.7.6 4 msec
R2#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 2: Configure SR in Area 1

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Lab Topology X – Area; Y – Router
Link Address: 100.Y.Y.Y
Link R1 – R3: 100.1.3.1 – 100.1.3.3
Loopback – 99.99.X.Y
L1/L2 – R1; R2; R6; R7
NET: 49.000X.0000.0000.000Y.00

Level-1 / AREA 1 Level-2 / AREA 0 Level-1 / AREA 2

R11 R1 R3 R6 R8

R13 R4 R10

R2 R5 R7
R12 R9

CE1 CE2

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 2: Configure SR in Area 1
• Configure SR in all routers

IOS XR Configuration IOS/XE Configuration


! !
router isis IGP segment-routing mpls
! !
address-family ipv4 connected-prefix-sid-map
segment-routing mpls address-family ipv4
! 99.99.1.11/32 index 11 range 1
interface Loopback0 !99.99.1.12/32 absolute 16012!
address-family ipv4 exit-address-family
prefix-sid index 11 !
!prefix-sid absolute 16012! !
! router isis IGP
! segment-routing mpls
!

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 2: Configure SR in Area 1
• Verify LSP details in ISIS database (Router Capability, Adj-SID, Prefix-SID)

R13#sh isis database verbose R1.00-00


<..snip..>
Metric: 0 IP 99.99.0.1/32
Prefix-SID Index: 1, Algorithm:SPF, R:0 N:1 P:0 E:0 V:0 L:0
Prefix-attr: X:0 R:0 N:1
Hostname: R1
Router CAP: 99.99.0.1, D:0, S:0
Segment Routing: I:1 V:0, SRGB Base: 16000 Range: 8000
Segment Routing Algorithms: SPF, Strict-SPF
Node-MSD
MSD: 10
Metric: 10 IS-Extended R11.00
Adjacency SID Value:24003 F:0 B:0 V:1 L:1 S:0 Weight:0
Interface IP Address: 100.1.11.1
Neighbor IP Address: 100.1.11.11
Unknown Sub TLV: 15
Metric: 10 IS-Extended R2.00
Adjacency SID Value:24007 F:0 B:0 V:1 L:1 S:0 Weight:0
Interface IP Address: 100.1.2.1
Neighbor IP Address: 100.1.2.2
Unknown Sub TLV: 15
R13#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 2: Configure SR in Area 1
• Verify LFIB (Prefix & Adj SID population)

R13#show mpls forwarding-table


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16 No Label 100.1.13.0/24[V] 0 aggregate/RED
17 No Label 192.168.255.1/32[V] \
0 Et0/2 100.1.13.1
18 Pop Label 100.11.13.11-A 0 Et0/0 100.11.13.11
19 Pop Label 100.12.13.12-A 0 Et0/1 100.12.13.12
16001 16001 99.99.0.1/32 0 Et0/0 100.11.13.11
16002 16002 99.99.0.2/32 0 Et0/1 100.12.13.12
16011 Pop Label 99.99.1.11/32 0 Et0/0 100.11.13.11
16012 Pop Label 99.99.1.12/32 0 Et0/1 100.12.13.12

A - Adjacency SID

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 2: Configure SR in Area 1
• Verify MPLS LSP between Routers (R13 – R1 & R2)

R13#show mpls forwarding-table 99.99.0.1 32


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16001 16001 99.99.0.1/32 0 Et0/0 100.11.13.11
R13#
R13#show mpls forwarding-table 99.99.0.2 32
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16002 16002 99.99.0.2/32 0 Et0/1 100.12.13.12
R13#
R13#traceroute 99.99.0.1 source loopback 0 numeric probe 1
Type escape sequence to abort.
Tracing the route to 99.99.0.1
VRF info: (vrf in name/id, vrf out name/id)
1 100.11.13.11 [MPLS: Label 16001 Exp 0] 1 msec
2 100.1.11.1 8 msec
R13#
R13#
R13#traceroute 99.99.0.2 source loopback 0 numeric probe 1
Type escape sequence to abort.
Tracing the route to 99.99.0.2
VRF info: (vrf in name/id, vrf out name/id)
1 100.12.13.12 [MPLS: Label 16002 Exp 0] 9 msec
2 100.2.12.2 2 msec
R13#
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 2: Configure SR in Area 1
• Verify MPLS LSP between Routers (R13 – R6)

R13#show mpls forwarding-table 99.99.0.6 32


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
R13#
R13#traceroute 99.99.0.6 source loopback 0 numeric probe 2
Type escape sequence to abort.
Tracing the route to 99.99.0.6
VRF info: (vrf in name/id, vrf out name/id)
1 100.12.13.12 2 msec
100.11.13.11 1 msec
2 100.2.12.2 2 msec
100.1.11.1 3 msec
3 100.1.2.1 [MPLS: Label 16006 Exp 0] 5 msec
100.1.3.3 [MPLS: Label 16006 Exp 0] 3 msec
4 100.1.3.3 [MPLS: Label 16006 Exp 0] 3 msec
100.3.6.6 4 msec
R13#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 3: L2-to-L1 Route Leaking

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Lab Topology X – Area; Y – Router
Link Address: 100.Y.Y.Y
Link R1 – R3: 100.1.3.1 – 100.1.3.3
Loopback – 99.99.X.Y
L1/L2 – R1; R2; R6; R7
NET: 49.000X.0000.0000.000Y.00

Level-1 / AREA 1 Level-2 / AREA 0 Level-1 / AREA 2

R11 R1 R3 R6 R8

R13 R4 R10

R2 R5 R7
R12 R9

CE1 CE2

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 2: Configure SR in Area 1
• Verify ISIS LSP of R1

R13#sh isis database verbose R1.00-00


IS-IS Level-1 LSP R1.00-00
<..snip..>
Metric: 0 IP 99.99.0.1/32
Prefix-SID Index: 1, Algorithm:SPF, R:0 N:1 P:0 E:0 V:0 L:0
Prefix-attr: X:0 R:0 N:1
Hostname: R1
Router CAP: 99.99.0.1, D:0, S:0
Segment Routing: I:1 V:0, SRGB Base: 16000 Range: 8000
Segment Routing Algorithms: SPF, Strict-SPF
Node-MSD
MSD: 10
Metric: 10 IS-Extended R11.00
Adjacency SID Value:24003 F:0 B:0 V:1 L:1 S:0 Weight:0
Interface IP Address: 100.1.11.1
Neighbor IP Address: 100.1.11.11
Unknown Sub TLV: 15
Metric: 10 IS-Extended R2.00
Adjacency SID Value:24007 F:0 B:0 V:1 L:1 S:0 Weight:0
Interface IP Address: 100.1.2.1
Neighbor IP Address: 100.1.2.2
Unknown Sub TLV: 15
R13#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 3: L2-to-L1 Route Leaking
• Route Leaking Configuration

R2: IOS-XE R1: IOS XR


! !
ip prefix-list leak seq 5 permit 99.99.0.0/24 le 32 prefix-set leak
ip prefix-list leak seq 10 permit 99.99.2.0/24 le 32 99.99.0.0/24 le 32,
! 99.99.2.0/24 le 32
route-map leak permit 10 end-set
match ip address prefix-list leak !
! route-policy leak
! if destination in leak then
router isis IGP pass
redistribute isis ip level-2 into level-1 route-map leak else
! drop
endif
end-policy
!
router isis IGP
address-family ipv4 unicast
propagate level 2 into level 1 route-policy leak
!
!

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 2: Configure SR in Area 1
• Verify ISIS LSP of R1 – L2 Prefix-SIDs leaked to L1

R13#sh isis database verbose R1.00-00


<..snip..>
Metric: 0 IP 99.99.0.1/32
Prefix-SID Index: 1, Algorithm:SPF, R:0 N:1 P:0 E:0 V:0 L:0
Prefix-attr: X:0 R:0 N:1
Metric: 10 IP-Interarea 99.99.0.3/32
Prefix-SID Index: 3, Algorithm:SPF, R:1 N:1 P:1 E:0 V:0 L:0
Prefix-attr: X:0 R:1 N:1
Metric: 20 IP-Interarea 99.99.0.4/32
Prefix-SID Index: 4, Algorithm:SPF, R:1 N:1 P:1 E:0 V:0 L:0
Prefix-attr: X:0 R:1 N:1
Metric: 20 IP-Interarea 99.99.0.5/32
Prefix-SID Index: 5, Algorithm:SPF, R:1 N:1 P:1 E:0 V:0 L:0
Prefix-attr: X:0 R:1 N:1
Metric: 20 IP-Interarea 99.99.0.6/32
Prefix-SID Index: 6, Algorithm:SPF, R:1 N:1 P:1 E:0 V:0 L:0
Prefix-attr: X:0 R:1 N:1
Metric: 30 IP-Interarea 99.99.0.7/32
Prefix-SID Index: 7, Algorithm:SPF, R:1 N:1 P:1 E:0 V:0 L:0
Prefix-attr: X:0 R:1 N:1
<..snip..>
R13#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 2: Configure SR in Area 1
• Verify MPLS LSP between Routers (R13 – R1 & R2)

R13#sh mpls forwarding-table


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16 No Label 100.1.13.0/24[V] 0 aggregate/RED
17 No Label 192.168.255.1/32[V] \
0 Et0/2 100.1.13.1
18 Pop Label 100.11.13.11-A 0 Et0/0 100.11.13.11
19 Pop Label 100.12.13.12-A 0 Et0/1 100.12.13.12
16001 16001 99.99.0.1/32 0 Et0/0 100.11.13.11
16002 16002 99.99.0.2/32 0 Et0/1 100.12.13.12
16003 16003 99.99.0.3/32 0 Et0/0 100.11.13.11
16004 16004 99.99.0.4/32 0 Et0/0 100.11.13.11
16004 99.99.0.4/32 0 Et0/1 100.12.13.12
16005 16005 99.99.0.5/32 0 Et0/1 100.12.13.12
16006 16006 99.99.0.6/32 0 Et0/0 100.11.13.11
16007 16007 99.99.0.7/32 0 Et0/1 100.12.13.12
16011 Pop Label 99.99.1.11/32 0 Et0/0 100.11.13.11
16012 Pop Label 99.99.1.12/32 0 Et0/1 100.12.13.12

A - Adjacency SID

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 2: Configure SR in Area 1
• Verify MPLS LSP between Routers (R13 – R1 & R2)
R13#sh mpls forwarding-table 99.99.0.6
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16006 16006 99.99.0.6/32 0 Et0/0 100.11.13.11
R13#
R13#sh mpls forwarding-table 99.99.0.7
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16007 16007 99.99.0.7/32 0 Et0/1 100.12.13.12
R13#
R13#traceroute 99.99.0.6 source loopback 0 numeric probe 1
VRF info: (vrf in name/id, vrf out name/id)
1 100.11.13.11 [MPLS: Label 16006 Exp 0] 5 msec
2 100.1.11.1 [MPLS: Label 16006 Exp 0] 3 msec
3 100.1.3.3 [MPLS: Label 16006 Exp 0] 8 msec
4 100.3.6.6 5 msec
R13#
R13#
R13#traceroute 99.99.0.7 source loopback 0 numeric probe 1
VRF info: (vrf in name/id, vrf out name/id)
1 100.12.13.12 [MPLS: Label 16007 Exp 0] 27 msec
2 100.2.12.2 [MPLS: Label 16007 Exp 0] 6 msec
3 100.2.5.5 [MPLS: Label 17007 Exp 0] 6 msec
4 100.5.7.7 5 msec
R13#
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure LDP in Area 2

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Lab Topology X – Area; Y – Router
Link Address: 100.Y.Y.Y
Link R1 – R3: 100.1.3.1 – 100.1.3.3
Loopback – 99.99.X.Y
L1/L2 – R1; R2; R6; R7
NET: 49.000X.0000.0000.000Y.00

Level-1 / AREA 1 Level-2 / AREA 0 Level-1 / AREA 2

R11 R1 R3 R6 R8

R13 R4 R10

R2 R5 R7
R12 R9

CE1 CE2

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure LDP in Area 2
• LDP Configuration in Area 2 R1: IOS XR
!
R2: IOS-XE mpls ldp
! router-id 99.99.2.9
router isis IGP interface GigabitEthernet0/0/0/0
mpls ldp autoconfig !
! interface GigabitEthernet0/0/0/1
!
interface GigabitEthernet0/0/0/2
!
!

R10#sh mpls ldp neighbor


Peer LDP Ident: 99.99.2.8:0; Local LDP Ident 99.99.2.10:0
TCP connection: 99.99.2.8.646 - 99.99.2.10.41505
State: Oper; Msgs sent/rcvd: 14/15; Downstream
Up time: 00:02:53
<..snip..>
TCP connection: 99.99.2.9.646 - 99.99.2.10.63802
State: Oper; Msgs sent/rcvd: 12/13; Downstream
Up time: 00:01:00
<..snip..>
R10#
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure LDP in Area 2
• LSP Verification between R2 and R10

R2 to R10
R2#sh ip cef 99.99.2.10/32 detail
99.99.2.10/32, epoch 0
nexthop 100.2.5.5 Ethernet0/1
R2#
R2#show mpls forwarding-table 99.99.2.10
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
None No Label 99.99.2.10/32 0 Et0/1 100.2.5.5
R2#
R2#trace 99.99.2.10 so lo0 probe 1 num
Type escape sequence to abort.
Tracing the route to 99.99.2.10
VRF info: (vrf in name/id, vrf out name/id)
1 100.2.5.5 1 msec
2 100.5.7.7 3 msec
3 100.7.9.9 [MPLS: Label 24000 Exp 0] 5 msec
4 100.9.10.10 5 msec
R2#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure LDP in Area 2
• LSP Verification between R2 and R10

R10 to R2

R10#sh ip cef 99.99.0.2/32 detail


%Prefix not found
R10#
R10#sh mpls forwarding-table 99.99.0.2 32
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
R10#
R10#traceroute 99.99.0.2 source lo0 probe 1 numeric
Type escape sequence to abort.
Tracing the route to 99.99.0.2
VRF info: (vrf in name/id, vrf out name/id)
1 100.8.10.8 0 msec
100.9.10.9 1 msec
2 100.6.8.6 3 msec
100.7.9.7 5 msec
3 100.3.6.3 [MPLS: Label 16002 Exp 0] 7 msec
100.5.7.5 [MPLS: Label 17002 Exp 0] 6 msec
4 100.1.3.1 [MPLS: Label 16002 Exp 0] 7 msec
100.2.5.2 5 msec
R10#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure LDP in Area 2
• Verify RIB in R10

R10#sh ip route isis


<..snip..>

Gateway of last resort is 100.9.10.9 to network 0.0.0.0

i*L1 0.0.0.0/0 [115/20] via 100.9.10.9, 04:02:49, Ethernet0/1


[115/20] via 100.8.10.8, 04:02:49, Ethernet0/0
99.0.0.0/32 is subnetted, 5 subnets
i L1 99.99.0.6 [115/20] via 100.8.10.8, 04:24:31, Ethernet0/0
i L1 99.99.0.7 [115/20] via 100.9.10.9, 04:02:49, Ethernet0/1
i L1 99.99.2.8 [115/10] via 100.8.10.8, 08:13:05, Ethernet0/0
i L1 99.99.2.9 [115/10] via 100.9.10.9, 07:50:39, Ethernet0/1
R10#
R10#sh mpls forwarding-table
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16 No Label 100.2.10.0/24[V] 0 aggregate/RED
17 No Label 192.168.255.2/32[V] \
0 Et0/2 100.2.10.2
18 16 99.99.0.6/32 0 Et0/0 100.8.10.8
19 24002 99.99.0.7/32 0 Et0/1 100.9.10.9
20 Pop Label 99.99.2.8/32 0 Et0/0 100.8.10.8
21 Pop Label 99.99.2.9/32 0 Et0/1 100.9.10.9

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 3: Configure LDP in Area 2
• Route Leaking Configuration

R7: IOS-XE R6: IOS XR


! !
ip prefix-list leak seq 5 permit 99.99.0.0/24 le 32 prefix-set leak
ip prefix-list leak seq 10 permit 99.99.1.0/24 le 32 99.99.0.0/24 le 32,
! 99.99.1.0/24 le 32
route-map leak permit 10 end-set
match ip address prefix-list leak !
! route-policy leak
! if destination in leak then
router isis IGP pass
redistribute isis ip level-2 into level-1 route-map leak else
! drop
endif
end-policy
!
router isis IGP
address-family ipv4 unicast
propagate level 2 into level 1 route-policy leak
!
!

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure LDP in Area 2
• Verify RIB in R10

R10#sh mpls forwarding-table


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16 No Label 100.2.10.0/24[V] 0 aggregate/RED
17 No Label 192.168.255.2/32[V] \
0 Et0/2 100.2.10.2
18 16 99.99.0.6/32 0 Et0/0 100.8.10.8
19 24002 99.99.0.7/32 0 Et0/1 100.9.10.9
20 Pop Label 99.99.2.8/32 0 Et0/0 100.8.10.8
21 Pop Label 99.99.2.9/32 0 Et0/1 100.9.10.9
22 20 99.99.0.1/32 0 Et0/0 100.8.10.8
23 24010 99.99.0.2/32 0 Et0/1 100.9.10.9
24 22 99.99.0.3/32 0 Et0/0 100.8.10.8
25 23 99.99.0.4/32 0 Et0/0 100.8.10.8
24008 99.99.0.4/32 0 Et0/1 100.9.10.9
26 24007 99.99.0.5/32 0 Et0/1 100.9.10.9
27 25 99.99.1.11/32 0 Et0/0 100.8.10.8
28 24005 99.99.1.12/32 0 Et0/1 100.9.10.9
29 27 99.99.1.13/32 0 Et0/0 100.8.10.8
24004 99.99.1.13/32 0 Et0/1 100.9.10.9

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure LDP in Area 2
• LSP Verification between R2 and R10

R2 to R10
R2#sh ip cef 99.99.2.10/32 detail
99.99.2.10/32, epoch 0
nexthop 100.2.5.5 Ethernet0/1
R2#
R2#show mpls forwarding-table 99.99.2.10
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
None No Label 99.99.2.10/32 0 Et0/1 100.2.5.5
R2#
R2#trace 99.99.2.10 so lo0 probe 1 num
Type escape sequence to abort.
Tracing the route to 99.99.2.10
VRF info: (vrf in name/id, vrf out name/id)
1 100.2.5.5 1 msec
2 100.5.7.7 3 msec
3 100.7.9.9 [MPLS: Label 24000 Exp 0] 5 msec
4 100.9.10.10 5 msec
R2#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure LDP in Area 2
• LSP Verification between R2 and R10

R10 to R2

R10#sh ip cef 99.99.0.2/32 detail


99.99.0.2/32, epoch 0
dflt local label info: global/23 [0x3]
nexthop 100.9.10.9 Ethernet0/1 label 24010-(local:23)
R10#
R10#sh mpls forwarding-table 99.99.0.2 32
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
23 24010 99.99.0.2/32 0 Et0/1 100.9.10.9
R10#
R10#traceroute 99.99.0.2 source lo0 probe 1 numeric
Type escape sequence to abort.
Tracing the route to 99.99.0.2
VRF info: (vrf in name/id, vrf out name/id)
1 100.9.10.9 [MPLS: Label 24010 Exp 0] 7 msec
2 100.7.9.7 [MPLS: Label 21 Exp 0] 7 msec
3 100.5.7.5 [MPLS: Label 17002 Exp 0] 6 msec
4 100.2.5.2 6 msec
R10#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 5: Configure Mapping Server in Area 0

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Lab Topology X – Area; Y – Router
Link Address: 100.Y.Y.Y
Link R1 – R3: 100.1.3.1 – 100.1.3.3
Loopback – 99.99.X.Y
L1/L2 – R1; R2; R6; R7
NET: 49.000X.0000.0000.000Y.00

Level-1 / AREA 1 Level-2 / AREA 0 Level-1 / AREA 2

R11 R1 R3 R6 R8

R13 R4 R10

R2 R5 R7
R12 R9

CE1 CE2

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure Mapping Server in Area 0
• R5 – ISIS LSP database

RP/0/0/CPU0:R5#show isis database verbose R5.00-00


<..snip..>
Metric: 10 IS-Extended R2.00
ADJ-SID: F:0 B:0 V:1 L:1 S:0 P:0 weight:0 Adjacency-sid:24001
Metric: 10 IS-Extended R4.00
ADJ-SID: F:0 B:0 V:1 L:1 S:0 P:0 weight:0 Adjacency-sid:24003
Metric: 10 IS-Extended R4.00
ADJ-SID: F:0 B:0 V:1 L:1 S:0 P:0 weight:0 Adjacency-sid:24005
Metric: 10 IS-Extended R7.00
ADJ-SID: F:0 B:0 V:1 L:1 S:0 P:0 weight:0 Adjacency-sid:24007
Metric: 0 IP-Extended 99.99.0.5/32
Prefix-SID Index: 5, Algorithm:0, R:0 N:1 P:0 E:0 V:0 L:0
Prefix Attribute Flags: X:0 R:0 N:1
Router Cap: 99.99.0.5, D:0, S:0
Segment Routing: I:1 V:0, SRGB Base: 17000 Range: 7000
SR Algorithm:
Algorithm: 0
Algorithm: 1
Node Maximum SID Depth:
Subtype: 1, Value: 10

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure Mapping Server in Area 0
• R5 – Mapping server Configuration

!
segment-routing
mapping-server
prefix-sid-map
address-family ipv4
99.99.2.8/32 8 range 1
99.99.2.9/32 9 range 1
99.99.2.10/32 10 range 1
!
!
!
!
router isis IGP
address-family ipv4 unicast
segment-routing prefix-sid-map advertise-local
!

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure Mapping Server in Area 0
• R5 – ISIS LSP database

RP/0/0/CPU0:R5#show isis database verbose R5.00-00


<..snip..>
Router Cap: 99.99.0.5, D:0, S:0
Segment Routing: I:1 V:0, SRGB Base: 17000 Range: 7000
SR Algorithm:
Algorithm: 0
Algorithm: 1
Node Maximum SID Depth:
Subtype: 1, Value: 10
SID Binding: 99.99.2.8/32 F:0 M:0 S:0 D:0 A:0 Weight:0 Range:1
SID: Start:8, Algorithm:0, R:0 N:0 P:0 E:0 V:0 L:0
SID Binding: 99.99.2.9/32 F:0 M:0 S:0 D:0 A:0 Weight:0 Range:1
SID: Start:9, Algorithm:0, R:0 N:0 P:0 E:0 V:0 L:0
SID Binding: 99.99.2.10/32 F:0 M:0 S:0 D:0 A:0 Weight:0 Range:1
SID: Start:10, Algorithm:0, R:0 N:0 P:0 E:0 V:0 L:0
RP/0/0/CPU0:R5#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure Mapping Server in Area 0
• Verify LFIB at R2

R2#sh mpls forwarding-table 99.99.2.8 32


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16008 16008 99.99.2.8/32 0 Et0/0 100.1.2.1
17008 99.99.2.8/32 0 Et0/1 100.2.5.5
R2#
R2#sh mpls forwarding-table 99.99.2.9 32
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16009 17009 99.99.2.9/32 0 Et0/1 100.2.5.5
R2#
R2#sh mpls forwarding-table 99.99.2.10 32
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16010 17010 99.99.2.10/32 0 Et0/1 100.2.5.5
R2#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure Mapping Server in Area 0
• Verify LFIB at R13

R13#sh mpls forwarding-table 99.99.2.8 32


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
None No Label 99.99.2.8/32 0 Et0/0 100.11.13.11
R13#
R13#sh mpls forwarding-table 99.99.2.9 32
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
None No Label 99.99.2.9/32 0 Et0/1 100.12.13.12
R13#
R13#sh mpls forwarding-table 99.99.2.10 32
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
None No Label 99.99.2.10/32 0 Et0/0 100.11.13.11
No Label 99.99.2.10/32 0 Et0/1 100.12.13.12
R13#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure Mapping Server in Area 0
• R2 – Mapping server Configuration

!
segment-routing mpls
!
mapping-server
!
prefix-sid-map
address-family ipv4
99.99.2.8/32 index 8 range 1
99.99.2.9/32 index 9 range 1
99.99.2.10/32 index 10 range 1
exit-address-family
!
!
!
router isis IGP
segment-routing prefix-sid-map advertise-local
!

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure Mapping Server in Area 0
• Verify LFIB at R13

R13#sh mpls forwarding-table 99.99.2.8 32


Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16008 16008 99.99.2.8/32 0 Et0/0 100.11.13.11
R13#
R13#
R13#sh mpls forwarding-table 99.99.2.9 32
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16009 16009 99.99.2.9/32 0 Et0/1 100.12.13.12
R13#
R13#sh mpls forwarding-table 99.99.2.10 32
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16010 16010 99.99.2.10/32 0 Et0/0 100.11.13.11
16010 99.99.2.10/32 0 Et0/1 100.12.13.12
R13#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Task 4: Configure Mapping Server in Area 0
• Verify reachability between CE routers

CE1#ping 192.168.255.2 so lo0


Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.255.2, timeout is 2 seconds:
Packet sent with a source address of 192.168.255.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 7/10/17 ms
CE1#
CE1#
CE1#traceroute 192.168.255.2 so lo0 numeric probe 1
Type escape sequence to abort.
Tracing the route to 192.168.255.2
VRF info: (vrf in name/id, vrf out name/id)
1 100.1.13.13 1 msec
2 100.12.13.12 [MPLS: Labels 16010/17 Exp 0] 9 msec
3 100.2.12.2 [MPLS: Labels 16010/17 Exp 0] 7 msec
4 100.2.5.5 [MPLS: Labels 17010/17 Exp 0] 8 msec
5 100.5.7.7 [MPLS: Labels 16010/17 Exp 0] 11 msec
6 100.7.9.9 [MPLS: Labels 24000/17 Exp 0] 8 msec
7 100.2.10.10 [MPLS: Label 17 Exp 0] 7 msec
8 100.2.10.2 7 msec
CE1#

© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Confidential

You might also like