Topology:
Configure Loopback0 interfaces and links between routers according to topology.
Configure single area OSPF to advertise all interfaces on all routers in the topology.
Requirements:
1. Enable MPLS on all routers in the topology, and on all links between routers.
2. Use standards based protocol to allocate and exchange MPLS labels between routers.
2.1 set the protocol router ID to loopback0 interface.
2.2 on router R1, R2 and R3 explicitly enable the protocol on each interface.
2.3 on routers R4, R5, R6 & R7 enable the protocol using the minimal possible configuration commands.
3. Disable PHP on R1, R2 & R3.
Solution:
Highlight the text below to reveal the solution.
This task requires understanding of basic MPLS and LDP configuration - global MPLS configuration, LDP configuration on specific interfaces and LDP autoconfiguration, implicit vs explicit null label allocation.
Requirement #2 - on routers R4 - R7, use LDP autoconfiguration to minimize the number of commands to configure LDP on all interfaces. on routers R1-R3, configure explicit-null to disable PHP.
!
interface Loopback0
ip address 16.0.1.1 255.255.255.255
!
interface Ethernet0/0
ip address 16.0.12.1 255.255.255.0
mpls ip
!
interface Ethernet0/1
ip address 16.0.16.1 255.255.255.0
mpls ip
!
mpls ldp router-id Loopback0
!
!
mpls ldp explicit-null
mpls ldp
router-id 16.0.3.3
address-family ipv4
label
local
advertise
explicit-null
!
!
!
!
interface GigabitEthernet0/0/0/0
!
interface GigabitEthernet0/0/0/1
!
interface GigabitEthernet0/0/0/2
!
!
mpls ldp
router-id 16.0.4.4
!
!
router ospf 1
mpls ldp autoconfig
router-id 16.0.5.5
network 0.0.0.0 255.255.255.255 area 0
!
!
router ospf 1
mpls ldp autoconfig
router-id 16.0.6.6
network 0.0.0.0 255.255.255.255 area 0
!
!
router ospf 1
mpls ldp autoconfig
router-id 16.0.7.7
network 0.0.0.0 255.255.255.255 area 0
!
This task requires understanding of basic MPLS and LDP configuration - global MPLS configuration, LDP configuration on specific interfaces and LDP autoconfiguration, implicit vs explicit null label allocation.
Requirement #2 - on routers R4 - R7, use LDP autoconfiguration to minimize the number of commands to configure LDP on all interfaces. on routers R1-R3, configure explicit-null to disable PHP.
R1:
!
interface Loopback0
ip address 16.0.1.1 255.255.255.255
!
interface Ethernet0/0
ip address 16.0.12.1 255.255.255.0
mpls ip
!
interface Ethernet0/1
ip address 16.0.16.1 255.255.255.0
mpls ip
!
mpls ldp explicit-null
!mpls ldp router-id Loopback0
!
R2:
!
mpls ldp explicit-null
!
interface Ethernet0/0
ip address 16.0.12.2 255.255.255.0
mpls ip
!
interface Ethernet0/1
ip address 16.0.26.2 255.255.255.0
mpls ip
!
interface Ethernet0/2
ip address 16.0.25.2 255.255.255.0
mpls ip
!
interface Ethernet0/3
ip address 16.0.23.2 255.255.255.0
mpls ip
!
!
mpls ldp router-id Loopback0
!
R3:
mpls ldp
router-id 16.0.3.3
address-family ipv4
label
local
advertise
explicit-null
!
!
!
!
interface GigabitEthernet0/0/0/0
!
interface GigabitEthernet0/0/0/1
!
interface GigabitEthernet0/0/0/2
!
!
R4:
mpls ldp
router-id 16.0.4.4
!
router ospf 1
router-id 16.0.4.4
mpls ldp auto-config
area 0
interface Loopback0
!
interface GigabitEthernet0/0/0/0
!
interface GigabitEthernet0/0/0/2
!
!
!
R5:
!
router ospf 1
mpls ldp autoconfig
router-id 16.0.5.5
network 0.0.0.0 255.255.255.255 area 0
!
mpls ldp router-id Loopback0
!R6:
!
router ospf 1
mpls ldp autoconfig
router-id 16.0.6.6
network 0.0.0.0 255.255.255.255 area 0
!
!
mpls ldp router-id Loopback0
!
R7:
!
router ospf 1
mpls ldp autoconfig
router-id 16.0.7.7
network 0.0.0.0 255.255.255.255 area 0
!
!
mpls ldp router-id Loopback0
!
Verification:
R1#show mpls interfaces
Interface IP Tunnel BGP Static Operational
Ethernet0/0 Yes (ldp) No No No Yes
Ethernet0/1 Yes (ldp) No No No Yes
RP/0/0/CPU0:R3#show mpls interfaces
Sun Jan 3 13:49:13.904 UTC
Interface LDP Tunnel Static Enabled
-------------------------- -------- -------- -------- --------
GigabitEthernet0/0/0/0 Yes No No Yes
GigabitEthernet0/0/0/1 Yes No No Yes
GigabitEthernet0/0/0/2 Yes No No Yes
*Note "explicit-n" vs "Pop Label" in the output below.
R5#show mpls forwarding-table
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16 16 16.0.1.1/32 0 Et0/2 16.0.25.2
16 16.0.1.1/32 0 Et0/3 16.0.56.6
17 explicit-n 16.0.2.2/32 0 Et0/2 16.0.25.2
18 explicit-n 16.0.3.3/32 146 Et0/1 16.0.35.3
19 Pop Label 16.0.4.4/32 774 Et1/0 16.0.45.4
20 Pop Label 16.0.6.6/32 0 Et0/3 16.0.56.6
21 Pop Label 16.0.7.7/32 134 Et0/0 16.0.57.7
22 explicit-n 16.0.12.0/24 0 Et0/2 16.0.25.2
23 Pop Label 16.0.16.0/24 856 Et0/3 16.0.56.6
24 explicit-n 16.0.23.0/24 0 Et0/2 16.0.25.2
explicit-n 16.0.23.0/24 0 Et0/1 16.0.35.3
25 explicit-n 16.0.26.0/24 0 Et0/2 16.0.25.2
Pop Label 16.0.26.0/24 0 Et0/3 16.0.56.6
26 explicit-n 16.0.34.0/24 0 Et0/1 16.0.35.3
Pop Label 16.0.34.0/24 0 Et1/0 16.0.45.4
27 Pop Label 16.0.67.0/24 0 Et0/3 16.0.56.6
Pop Label 16.0.67.0/24 0 Et0/0 16.0.57.7
R7#traceroute mpls ipv4 16.0.4.4 255.255.255.255
Tracing MPLS Label Switched Path to 16.0.4.4/32, timeout is 2 seconds
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'I' - unknown upstream index,
'X' - unknown return code, 'x' - return code 0
Type escape sequence to abort.
0 16.0.57.7 MRU 1500 [Labels: 19 Exp: 0]
L 1 16.0.57.5 MRU 1504 [Labels: implicit-null Exp: 0] 58 ms
! 2 16.0.45.4 11 ms
R7#traceroute mpls ipv4 16.0.3.3 255.255.255.255
Tracing MPLS Label Switched Path to 16.0.3.3/32, timeout is 2 seconds
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'I' - unknown upstream index,
'X' - unknown return code, 'x' - return code 0
Type escape sequence to abort.
0 16.0.57.7 MRU 1500 [Labels: 18 Exp: 0]
L 1 16.0.57.5 MRU 1500 [Labels: explicit-null Exp: 0] 65 ms
! 2 16.0.35.3 10 ms