Cisco Labs – Redundant and Resilient networks (16) – Multicast Redundancy IPv6

Introduction

During my university studies I was doing a diploma thesis in field of Redundant and reliable networking. The purpose of itwas to create LAB examples for students, so they can test First Hop Redundancy Protocols (FHRP) , Any Transport over MPLS (AToM) and Border Gateway Protocol (BGP) on Cisco platform. These tasks are created to Virtlab (Virtual lab with physical Cisco routers) however configuration is valid and tested on physical Cisco routers as well.

Each task in the series will have its separate post with brief description of the task and schema. Complete task can be downloaded on My Skydrive

ZIP file contains:

  • *.HTML file – complete step by step guide how to perform the task
  • *.PNG – pictures with topology and others
  • *_preconf.txt – file with basic configuration of topology to be able to focus on task goal (IP addresses, interfaces and so on)
  • *_end.txt – file with complete configuration. Once put to the routers, you will get working task
  • *.dia – Topology in free DIA editor
  • *.XML – topology in XML format

To complete the task:

  • Connect your environment accorrding the topology
  • open the file *_preconf.txt from ZIP file with complete task and configure your environment with basic settings so you can start with the task.



Multicast redundancy – IPv6

Title: Multicast redundancy – IPv6

Goal:

Configure Protocol Indipendent Multicast on IPv6 network.

Configure PIM with BSR feature. Configure routers RP1 and RP2 as rendezvouz point candidates. Configure MA1 and MA2 as BSR candidatets.

Test multicast redundancy and functionality.

Required time: 120 minutes

Theoretical background:

Topology:

Multicast-Redundancy-IPv6

Configuration:

 

1) Basic network configuration

IPv6 addresses and RIP routing process RIP should be configured on each router and PC.

PC1

     
      PC1#ip -6 addr add 2001:1::1/64 dev eth0
      PC1#ip -6 route add default via 2001:1::2

PC2

     
      PC2#ip -6 addr add 2001:2::2/64 dev eth0
      PC2#ip -6 route add default via 2001:2::1

Router MA1

MA1(config)#hostname MA1

MA1(config)#ipv6 unicast-routing

MA1(config)#ipv6 router rip RIP

MA1(config)#interface #MA1:MA1-SW#

MA1(config-if)#ipv6 address 2001::1/128

MA1(config-if)#ipv6 rip RIP enable

MA1(config)#no shutdown
 

Router MA2

MA2(config)#hostname MA2

MA2(config)#ipv6 unicast-routing

MA2(config)#ipv6 router rip RIP

MA2(config)#interface #MA2:MA2-SW#

MA2(config-if)#ipv6 address 2001::2/128

MA2(config-if)#ipv6 rip RIP enable
 

Router RP1

RP1(config)#hostname RP1

RP1(config)#ipv6 unicast-routing

RP1(config)#ipv6 router rip RIP

RP1(config)#interface #RP1:RP1-SW#

RP1(config-if)#ipv6 address 2001::4/128

RP1(config-if)#ipv6 rip RIP enable
 

Router RP2

RP2(config)#hostname RP2

RP2(config)#ipv6 unicast-routing

RP2(config)#ipv6 router rip RIP

RP2(config)#interface #RP2:RP2-SW#

RP2(config-if)#ipv6 address 2001::6/128

RP2(config-if)#ipv6 rip RIP enable
 

Router R1

R1(config)#hostname R1

R1(config)#ipv6 unicast-routing

R1(config)#ipv6 router rip RIP

R1(config)#interface #R1:R1-SW#

R1(config)#ipv6 address 2001::3/128

R1(config)#ipv6 rip RIP enable

R1(config)#interface #R1:PC1-R1#

R1(config)#ipv6 address 2001:1::2/64

R1(config)#ipv6 rip RIP enable
 

Router R2

R2(config)#hostname R2

R2(config)#ipv6 unicast-routing

R2(config)#ipv6 router rip RIP

R2(config)#interface #R2:R2-SW#

R2(config)#ipv6 address 2001::5/128

R2(config)#ipv6 rip RIP enable

R2(config)#interface #R2:PC2-R2#

R2(config)#ipv6 address 2001:2::1/64

R2(config)#ipv6 rip RIP enable
 

Test connectivity between devices using ping6 command.

 

2) Multicast configuration – BSR candidates

Router MA1

MA1(config)#ipv6 multicast-routing; enable multicast routing on the router

MA1(config)#ipv6 pim bsr candidate bsr 2001::1 priority 10; set router as BSR candidate with priority 10 (lower number mean lower priority)
 

Router MA2

MA2(config)#ipv6 multicast-routing; enable multicast routing on the router

MA2(config)#ipv6 pim bsr candidate bsr 2001::2 priority 20; set router as BSR candidate with priority 20 (lower number mean lower priority)
 

3) Multicast configuration – rendezvous points

Router RP1

      RP1(config)#ipv6 multicast-routing; enable multicast routing on the router
      RP1(config)#ipv6 pim bsr candidate rp 2001::4 priority 10; set router as RP candidate with priority 10 (lower number mean higher priority)

 

Router RP2

      RP2(config)#ipv6 multicast-routing; enable multicast routing on the router
      RP2(config)#ipv6 pim bsr candidate rp 2001::6 priority 20; set router as RP candidate with priority 20 (lower number mean higher priority)

 

4) Multicast configuration – client routers

Router R1

R1(config)#ipv6 multicast-routing
 

Router R2

R2(config)#ipv6 multicast-routing
 

Function test:

1) Turn PIM debugging on

MA1# debug ipv6 pim; turn PIM debugging on to display PIM communication
 

2) Display PIM information

MAx# sh ipv6 pim rp mapping; show which router is RP

RPx# sh ipv6 pim bsr candidate ; display bsr candidates

MAx# sh ipv6 pim bsr election ; display bsr election

MAx# show ipv6 pim tunnel ; display tunnels between elected BSR and elected RP
 

3) send multicast traffic

PC1# mcast -6 -s -a FF0E::10 -t 1 -m “This is multicast message”; run mcast application as sender of IPv6 multicast traffic to group address FF0E::10

PC2# mcast -6 -l -a FF0E::10 ; run mcast application as listener of IPv6 multicast traffic to group address FF0E::10
 

4) Turn RP2 off to initiate RP1 to be rendezvous point

RP2(config)#interface #RP2:RP2-SW#

RP2(config-if)#shutdown
; after interface shutdown router RP2 will no longer act as RP, role will be switched to the RP1 which has lower priority
 

5) Display PIM information

MAx# sh ipv6 pim rp mapping

RPx# sh ipv6 pim bsr candidate

MAx# sh ipv6 pim bsr election

MAx# show ipv6 pim tunnel
 

6) Turn MA2 off to use MA1 as BSR router

MA2(config)#interface #MA2:MA2-SW#

MA2(config-if)#shutdown
; after interface shutdown router MA2 will no longer act as BSR router, role will be switched to the MA1 which has lower priority
 

7) Display PIM information

MAx# sh ipv6 pim rp mapping

RPx# sh ipv6 pim bsr candidate

MAx# sh ipv6 pim bsr election

MAx# show ipv6 pim tunnel
 

 

Cisco Labs – Redundant and Resilient networks (15) – Multicast Redundancy IPv4

Introduction

During my university studies I was doing a diploma thesis in field of Redundant and reliable networking. The purpose of itwas to create LAB examples for students, so they can test First Hop Redundancy Protocols (FHRP) , Any Transport over MPLS (AToM) and Border Gateway Protocol (BGP) on Cisco platform. These tasks are created to Virtlab (Virtual lab with physical Cisco routers) however configuration is valid and tested on physical Cisco routers as well.

Each task in the series will have its separate post with brief description of the task and schema. Complete task can be downloaded on My Skydrive

ZIP file contains:

  • *.HTML file – complete step by step guide how to perform the task
  • *.PNG – pictures with topology and others
  • *_preconf.txt – file with basic configuration of topology to be able to focus on task goal (IP addresses, interfaces and so on)
  • *_end.txt – file with complete configuration. Once put to the routers, you will get working task
  • *.dia – Topology in free DIA editor
  • *.XML – topology in XML format

To complete the task:

  • Connect your environment accorrding the topology
  • open the file *_preconf.txt from ZIP file with complete task and configure your environment with basic settings so you can start with the task.



Multicast redundancy – IPv4

Title: Multicast redundancy – IPv4

Goal:

  • Configure Protocol Independent Multicast on IPv4 network.
  • Configure MA1 and MA2 as mapping agents. Configure PIM with auto-RP feature. Configure routers RP1 and RP2 as rendezvous point candidates.
  • Test multicast redundancy and functionality.

Required time: 120 minutes

Theoretical background:

Topology:

Multicast-Redundancy-IPv4

Configuration:

 

1) Basic network configuration

IP addresses and OSPF routing area 0 should be configured on each router and PC.

PC1

      
      PC1#ifconfig eth0 192.168.1.2 netmask 255.255.255.0
      PC1#route add default gw 192.168.1.1

PC2

      
      PC2#ifconfig eth0 172.16.0.2 netmask 255.255.255.0
      PC2#route add default gw 172.16.0.1

Router MA1

      MA1(config)#hostname MA1
      MA1(config)#interface #MA1:MA1-SW#
      MA1(config-if)#ip address 10.0.0.1 255.255.255.0
      MA1(config-if)#no shutdown
      MA1(config)#router ospf 1
      MA1(config-router)#network 10.0.0.0 0.0.0.255 area 0

 

Router MA2

      MA2(config)#hostname MA2
      MA2(config)#interface #MA2:MA2-SW#
      MA2(config-if)#ip address 10.0.0.2 255.255.255.0
      MA2(config-if)#no shutdown
      MA2(config)#router ospf 1
      MA2(config-router)#network 10.0.0.0 0.0.0.255 area 0

 

Router RP1

      RP1(config)#hostname RP1
      RP1(config)#interface #RP1:RP1-SW# 
      RP1(config-if)#ip address 10.0.0.4 255.255.255.0
      RP1(config-if)#no shutdown 
      RP1(config)#router ospf 1 
      RP1(config-router)#network 10.0.0.0 0.0.0.255 area 0

 

Router RP2

      RP2(config)#hostname RP2
      RP2(config)#interface #RP2:RP2-SW#
      RP2(config-if)#ip address 10.0.0.6 255.255.255.0
      RP2(config-if)#no shutdown 
      RP2(config)#router ospf 1
      RP2(config-router)#network 10.0.0.0 0.0.0.255 area 0

 

Router R1

      R1(config)#hostname R1
      R1(config)#interface #R1:R1-SW#
      R1(config-if)#ip address 10.0.0.3 255.255.255.0 
      R1(config-if)#no shutdown
      R1(config)#interface #R1:PC1-R1#
      R1(config-if)#ip address 192.168.1.1 255.255.255.0
      R1(config-if)#no shutdown
      R1(config)#router ospf 1
      R1(config-router)#network 10.0.0.0 0.0.0.255 area 0
      R1(config-router)#network 192.168.1.0 0.0.0.255 area 0

 

Router R2

      R2(config)#hostname R2
      R2(config)#interface #R2:R2-SW#
      R2(config-if)#ip address 10.0.0.5 255.255.255.0
      R2(config-if)#no shutdown
      R2(config)#interface #R2:PC2-R2#
      R2(config)#ip address 172.16.0.1 255.255.255.0
      R2(config-if)#no shutdown
      R2(config)#router ospf 1
      R2(config-router)#network 10.0.0.0 0.0.0.255 area 0
      R2(config-router)#network 172.16.0.0 0.0.0.255 area 0

 

Test connectivity between devices using ping command.

 

2) Multicast configuration – mapping agents

Router MA1

      MA1(config)#ip multicast-routing; enable multicast routing on the router
      MA1(config)#interface #MA1:MA1-SW#
      MA1(config-if)#ip pim sparse-dense-mode; enable PIM protocol in sparse-dense mode
      MA1(config)#ip pim send-rp-discovery scope 100; set router as Mapping agent, hello messages will be sent with TTL 100

 

Router MA2

      MA2(config)#ip multicast-routing;  enable multicast routing on the router
      MA2(config)#interface #MA2:MA2-SW#
      MA2(config-if)#ip pim sparse-dense-mode; enable PIM protocol in sparse-dense mode
      MA2(config)#ip pim send-rp-discovery scope 100; set router as Mapping agent, hello messages will be sent with TTL 100

 

3) Multicast configuration – rendezvouz points

Router RP1

 
      RP1(config)#ip multicast-routing
      RP1(config)#interface #RP1:RP1-SW#
      RP1(config-if)#ip pim sparse-dense-mode; enable PIM protocol in sparse-dense mode
      RP1(config)#ip pim send-rp-announce 10.0.0.4 scope 100; set router to announce itself as RP candidate
      RP1(config)#ip pim send-rp-announce #RP1:RP1-SW# scope 100 interval 20; set router to announce itself as RP candidate on interface #RP1:RP1-SW#, TTL 100, every 20 seconds

 

Router RP2

 
      RP2(config)#ip multicast-routing
      RP2(config)#interface #RP2:RP2-SW#
      RP2(config-if)#ip pim sparse-dense-mode; enable PIM protocol in sparse-dense mode
      RP2(config)#ip pim send-rp-announce 10.0.0.6 scope 100;  set router to announce itself as RP candidate
 
      RP2(config)#ip pim send-rp-announce #RP2:RP2-SW# scope 100 interval 20;set router to announce itself as RP candidate on interface #RP2:RP2-SW#, TTL 100, every 20 seconds

 

4) Multicast configuration – client routers

Router R1

      R1(config)#ip multicast-routing 
      R1(config)#interface #R1:R1-SW#
      R1(config-if)#ip pim sparse-dense-mode
      R1(config)#interface #R1:PC1-R1#
      R1(config-if)#ip pim sparse-dense-mode

 

Router R2

      R2(config)#ip multicast-routing
      R2(config)#interface #R2:R2-SW#
      R2(config-if)#ip pim sparse-dense-mode
      R2(config)#interface #R2:PC2-R2#
      R2(config-if)#ip pim sparse-dense-mode

 

Function test:

1) Turn PIM debugging on

    MA1# debug ip pim; turn PIM debuggign on to display PIM communication

 

2) Display PIM information

    MA1# sh ip pim rp mapping; show which router is RP
    MA1# sh ip pim autorp ; display if auto RP is enabled
    MA1# sh ip pim neighbor ; display PIM neighbors

 

3) send multicast traffic

    PC1# mcast -4 -s -a 239.0.10.10 -m "This is multicast message"; run mcast application as sender of IPv4 multicast traffic to group address 239.0.10.10
    
    PC2# mcast -4 -l -a 239.0.10.10 ; run mcast application as listener of IPv4 multicast traffic to group address 239.0.10.10

 

4) Turn RP2 off to initiate RP1 to be rendezvouz point

    RP2(config)#interface #RP2:RP2-SW#
    RP2(config-if)#shutdown 
; after interface shutdown router RP2 will no longer act as RP, RP role will be switched to the RP1 which has lower IP address

 

5) Display PIM information

    MA1# sh ip pim rp mapping; show which router is RP
    MA1# sh ip pim autorp ; display if auto RP is enabled
    MA1# sh ip pim neighbor ; display PIM neighbors

 

6) Turn MA2 off to use MA1 as mapping agent

    MA2(config)#interface #MA2:MA2-SW#
    MA2(config-if)#shutdown 
; after interface shutdown router MA2 will no longer act as mapping agent, role will be swithed to the MA1 which has lower IP address

 

7) Display PIM information

    MA1# sh ip pim rp mapping; show which router is RP
    MA1# sh ip pim autorp ; display if auto RP is enabled
    MA1# sh ip pim neighbor ; display PIM neighbors

 

 

Cisco Labs – Redundant and Resilient networks (14) – MPLS – AToM – Ethernet over MPLS – Q in Q

Introduction

During my university studies I was doing a diploma thesis in field of Redundant and reliable networking. The purpose of itwas to create LAB examples for students, so they can test First Hop Redundancy Protocols (FHRP) , Any Transport over MPLS (AToM) and Border Gateway Protocol (BGP) on Cisco platform. These tasks are created to Virtlab (Virtual lab with physical Cisco routers) however configuration is valid and tested on physical Cisco routers as well.

Each task in the series will have its separate post with brief description of the task and schema. Complete task can be downloaded on My Skydrive

ZIP file contains:

  • *.HTML file – complete step by step guide how to perform the task
  • *.PNG – pictures with topology and others
  • *_preconf.txt – file with basic configuration of topology to be able to focus on task goal (IP addresses, interfaces and so on)
  • *_end.txt – file with complete configuration. Once put to the routers, you will get working task
  • *.dia – Topology in free DIA editor
  • *.XML – topology in XML format

To complete the task:

  • Connect your environment accorrding the topology
  • open the file *_preconf.txt from ZIP file with complete task and configure your environment with basic settings so you can start with the task.



MPLS – AToM – EoMPLS – Q in Q

Title: MPLS – AToM – EoMPLS – Q in Q (for 7600 platform, not working on 7200)

Goal:

  • Configure MPLS-based core IP network.
  • Configure Any Transport over MPLS technology to forward QinQ traffic over MPLS core. VLANs 11-14,18 encapsulated to VLAN 10.

Required time: 120 minutes

Theoretical background:

Links related to this task:

Topology:

MPLS-AToM-QinQ

Configuration:

 

1) Check pre-configured settings

Before starting configuration of MPLS you should check pre-configured settings. First use ping command to test connectivity between PE1 and PE3 routers. Also

check OSPF if networs are propagated correctly.

 

2) MPLS core configuration

In this part of configuration you will configure basic MPLS functionality.

Router PE1

      PE1(config)#ip cef; enable CEF, prerequisite for MPLS
      PE1(config)#interface #PE1:PE1-P#
      PE1(config-if)#mpls ip; enable MPLS on the interface #PE1:PE1-P#  
      PE1(config)#interface loopback 2; create loopback interface
      PE1(config-if)#ip address 20.0.0.1 255.255.255.255; set IP address on loopback interface
      PE1(config-if)#no shutdown
      PE1(config)#mpls label protocol ldp; MPLS will use LDP as label distribution protocol
      PE1(config)#mpls ldp router-id loopback 2 force; force loopback IP address to be router ID
      PE1(config)#router ospf 1
      PE1(config-router)#network 20.0.0.1 0.0.0.0 area 0; set OSPF to propagate loopback address

Router P

Set P and PE3 routers similarly.

      P(config)#ip cef
      P(config)#interface #P:P-PE3#
      P(config-if)#mpls ip
      P(config)#interface #P:PE1-P#
      P(config-if)#mpls ip
      P(config)#interface loopback 2
      P(config-if)#ip address 30.0.0.1 255.255.255.255
      P(config-if)#no shutdown
      P(config)#mpls label protocol ldp
      P(config)#mpls ldp router-id loopback 2 force
      P(config)#router ospf 1
      P(config-router)#network 30.0.0.1 0.0.0.0 area 0

Router PE3

      PE3(config)#ip cef
      PE3(config)#interface #PE3:P-PE3#
      PE3(config-if)#mpls ip
      PE3(config)#interface loopback 2
      PE3(config-if)#ip address 40.0.0.1 255.255.255.255
      PE3(config-if)#no shutdown
      PE3(config)#mpls label protocol ldp
      PE3(config)#mpls ldp router-id loopback 2 force
      PE3(config)#router ospf 1
      PE3(config-router)#network 40.0.0.1 0.0.0.0 area 0

3) MPLS core function test

Use following commands on core routers PE1, P, PE3 and check results

      Pxx#show mpls ldp binding; display LDP bindings on the router
      Pxx#show mpls ldp discovery; show discovered MPLS enabled peering routers
      Pxx#show mpls ldp neighbor; show peering neighbors
      Pxx#show mpls forwarding-table; display forwarding table with local and remote labels. 

4) AToM configuration – provider side

Router PE1

      PE1(config-if)#interface #PE1:CE1-PE1#.1
      PE1(config-subif)#encapsulation dot1q 10 second-dot1q 11-14,18; VLANs 11,12,13,14,18 will be encapsulated to VLAN 10 and transported through MPLS AToM 

technology
      NEW IOS:
      PE1(config-subif)#mpls l2transport route 40.0.0.1 100; define VC 100 which will be used to transport VLAN 10 frames over MPLS
      OLDER IOS:
      PE1(config-subif)#xconnect 40.0.0.1 100 encapsulation mpls; define VC 100 which will be used to transport VLAN 10 frames over MPLS 

VC on MPLS is unidirectional. To configure l2 transport tunnel we need to configure VC 100 on both provider edge routers (PE1, PE3).

Router P

Router P needs to have only basic MPLS configured.

Router PE3

      PE3(config-if)#interface #PE3:PE3-CE2#.1
      PE3(config-subif)#encapsulation dot1q 10 second-dot1q 11-14,18; VLANs 11,12,13,14,18 will be encapsulated to VLAN 10 and transported through MPLS AToM 

technology
      PE3(config-subif)#mpls l2transport route 20.0.0.1 100; matching configuration to PE1
      PE3(config-subif)#xconnect 20.0.0.1 100 encapsulation mpls; matching configuration to PE1
      PE3(config-subif)#no shutdown

5) AToM configuration – customer side

Customer`s side routers CE1,CE2 must be configured so that interfaces facing MPLS core network is divided into subinterfaces, one subinterface for each VLAN

encapsulated by Q in Q technology.

Router CE1

      CE1(config)#interface #CE1:CE1-PE1#
      CE1(config-if)#no shutdown
      CE1(config-if)#interface #CE1:CE1-PE1#.1
      CE1(config-if)#encapsulation dot1q 11; set VLAN to interface
      CE1(config-if)#ip address 11.0.1.1 255.255.255.0; set IP address
      CE1(config-if)#no shutdown
      CE1(config-if)#interface #CE1:CE1-PE1#.2; repeat for each VLAN
      CE1(config-if)#encapsulation dot1q 12
      CE1(config-if)#ip address 12.0.1.1 255.255.255.0
      CE1(config-if)#no shutdown
      CE1(config-if)#interface #CE1:CE1-PE1#.3
      CE1(config-if)#encapsulation dot1q 13
      CE1(config-if)#ip address 13.0.1.1 255.255.255.0
      CE1(config-if)#no shutdown
      CE1(config-if)#interface #CE1:CE1-PE1#.4
      CE1(config-if)#encapsulation dot1q 14
      CE1(config-if)#ip address 14.0.1.1 255.255.255.0
      CE1(config-if)#no shutdown
      CE1(config-if)#interface #CE1:CE1-PE1#.5
      CE1(config-if)#encapsulation dot1q 18
      CE1(config-if)#ip address 18.0.1.1 255.255.255.0
      CE1(config-if)#no shutdown

Router CE2

      CE2(config)#interface #CE2:PE3-CE2#
      CE2(config-if)#no shutdown
      CE2(config-if)#interface #CE2:PE3-CE2#.1
      CE2(config-if)#encapsulation dot1q 11; set VLAN to interface
      CE2(config-if)#ip address 11.0.1.1 255.255.255.0; set IP address
      CE2(config-if)#no shutdown
      CE2(config-if)#interface #CE2:PE3-CE2#.2; repeat for each VLAN
      CE2(config-if)#encapsulation dot1q 12
      CE2(config-if)#ip address 12.0.1.1 255.255.255.0
      CE2(config-if)#no shutdown
      CE2(config-if)#interface #CE2:PE3-CE2#.3
      CE2(config-if)#encapsulation dot1q 13
      CE2(config-if)#ip address 13.0.1.1 255.255.255.0
      CE2(config-if)#no shutdown
      CE2(config-if)#interface #CE2:PE3-CE2#.4
      CE2(config-if)#encapsulation dot1q 14
      CE2(config-if)#ip address 14.0.1.1 255.255.255.0
      CE2(config-if)#no shutdown
      CE2(config-if)#interface #CE2:PE3-CE2#.5
      CE2(config-if)#encapsulation dot1q 18
      CE2(config-if)#ip address 18.0.1.1 255.255.255.0
      CE2(config-if)#no shutdown

Function test:

1) test MPLS functionality using ping

      PE1# ping mpls ipv4 40.0.0.1; ping command for MPLS

2) Display MPLS related information

Verify the status of virtual circuits on the routers PE1 and PE3. Notice amount of data sent through those circuits. Check VC details.

      Rx# sh mpls l2transport vc

The result will show which VLANs are encapsulated inside VLAN 10:

    Local intf        Local circuit              Dest address    VC ID      Status 
  
    -------------     -------------------------- --------------- ---------- ----------
    #PE3:PE3-CE2#.1   Eth VLAN:10/11-14,18       20.0.0.1         100         UP 

3) Test connectivity

Test connectivity between CE1 and CE2 routers.

      CE1# ping 11.0.1.2
      CE1# traceroute 11.0.1.2; there is no hop between customer's IP addresses. The MPLS core acts as single Ethernet wire.

4) Debug AToM VC events

Enter “debug MPLS l2transport vc event” command on PE3.

      PE3# debug MPLS l2transport vc event; enable debugging of MPLS virtual circuits

Then go to PE1 console and shut interface facing to CE1 router #PE1:CE1-PE1# down. This will cause the VC 100 to break.

    PE3#
    *Nov 17 00:00:17.047: AToM MGR [20.0.0.1, 100]: Remote end down, vc is down
    *Nov 17 00:00:17.055: AToM MGR [20.0.0.1, 100]: Unprovision and deallocate SSM segment

Turn on the interface again.

Then go to P console and shut some interface down. This will cause the VC 100 to break.

    PE3#
    *Nov 17 00:05:39.815: %LDP-5-NBRCHG: LDP Neighbor 20.0.0.1:0 (2) is DOWN (Discovery Hello Hold Timer expired)
    *Nov 17 00:05:39.823: AToM MGR [20.0.0.1, 100]: Remote end down, vc is down

Optional:

Configure more subinterfaces on the routers PE1,PE3,CE1,CE2 to support VLANS from range 2-4096 to be routed through MPLS core. Configure one sub-interface for each

additional VLAN.

Follow steps 4) and 5) from Configuration part to use AToM technology to forward customer’s VLAN traffic.

 

Cisco Labs – Redundant and Resilient networks (13) – MPLS – AToM – HDLC, PPP over MPLS

Introduction

During my university studies I was doing a diploma thesis in field of Redundant and reliable networking. The purpose of itwas to create LAB examples for students, so they can test First Hop Redundancy Protocols (FHRP) , Any Transport over MPLS (AToM) and Border Gateway Protocol (BGP) on Cisco platform. These tasks are created to Virtlab (Virtual lab with physical Cisco routers) however configuration is valid and tested on physical Cisco routers as well.

Each task in the series will have its separate post with brief description of the task and schema. Complete task can be downloaded on My Skydrive

ZIP file contains:

  • *.HTML file – complete step by step guide how to perform the task
  • *.PNG – pictures with topology and others
  • *_preconf.txt – file with basic configuration of topology to be able to focus on task goal (IP addresses, interfaces and so on)
  • *_end.txt – file with complete configuration. Once put to the routers, you will get working task
  • *.dia – Topology in free DIA editor
  • *.XML – topology in XML format

To complete the task:

  • Connect your environment accorrding the topology
  • open the file *_preconf.txt from ZIP file with complete task and configure your environment with basic settings so you can start with the task.



MPLS – AToM – HDLC,PPP over MPLS

Title: MPLS – AToM – HDLC,PPP over MPLS

Goal:

  • Configure AToM to transport HDLC encapsulated traffic over the MPLS-based core network.
  • Change HDLC encapsulation to PPP and test function.

Required time: 120 minutes

Theoretical background:

Links related to this task:

Topology:

MPLS-AToM-HDLC,PPP

Configuration:

 

1) Check pre-configured settings

Before starting configuration of HDLC or PPP you should check pre-configured settings. First use ping command to test connectivity between PE1 and PE3 routers.

Also check OSPF if networks are propagated correctly.

Use following commands on core routers PE1, P, PE3 and check results.

      Pxx#show mpls ldp binding; display LDP bindings on the router
      Pxx#show mpls ldp discovery; show discovered MPLS enabled routers
      Pxx#show mpls ldp neighbor; show to which neighbors router established TCP sessions
      Pxx#show mpls forwarding-table; display forwarding table of local and remote labels. 

2) AToM configuration – customer side

Customer’s side routers CE1,CE2 must be configured, that interfaces facing MPLS core network have IP addresses and as same encapsulation as on providers side.

Router CE1

      CE1(config)#interface #CE1:CE1-PE1#
      CE1(config-if)#encapsulation hdlc; encapsulate traffic using HDLC (by default) 
      CE1(config-if)#ip address 100.0.0.1 255.255.255.0; IP address from the as same subnet as on CE2 router
      CE1(config-if)#no shutdown

Router CE2

      CE2(config)#interface #CE2:PE3-CE2#
      CE2(config-if)#ip address 100.0.0.2 255.255.255.0; IP address from as same subnet as on CE1 router
      CE2(config-if)#encapsulation hdlc; encapsulate traffic using HDLC (by default) 
      CE2(config-if)#no shutdown

3) AToM configuration – provider side

Router PE1

      PE1(config)#interface #PE1:CE1-PE1#
      PE1(config-if)#encapsulation hdlc; encapsulate traffic using HDLC (default) 
      PE1(config-if)#clock rate 64000
      PE1(config-if)#no shutdown
      PE1(config-if)#xconnect 40.0.0.1 100 encapsulation mpls; create VC 100 to transfer HDLC traffic through MPLS core 

VC on MPLS is unidirectional. To configure l2 transport tunnel we need to configure VC 100 on both provider edge routers (PE1, PE3).

Router P

Router P needs to have only basic MPLS configured.

Router PE3

      PE3(config)#interface #PE3:PE3-CE2#
      PE3(config-if)#encapsulation hdlc; encapsulate traffic using HDLC (default) 
      PE3(config-if)#clock rate 64000
      PE3(config-if)#no shutdown
      PE3(config-if)#xconnect 20.0.0.1 100 encapsulation mpls; create VC 100 to transfer HDLC traffic through MPLS core 

4) Go through Function test and then continue point 5)

5) Change encapsulation to PPP

Shut down serial interface on CE1, CE2, PE1, PE3 before changing encapsulation to PPP.

      CE1(config)#interface #CE1:CE1-PE1#
      CE1(config-if)#shutdown
      CE2(config)#interface #CE2:PE3-CE2#
      CE2(config-if)#shutdown
      PE1(config)#interface #PE1:CE1-PE1#
      PE1(config-if)#shutdown
      PE3(config)#interface #PE3:PE3-CE2#
      PE3(config-if)#shutdown

Change encapsulation to PPP on CE1, CE2, PE1, PE3.

      CE1(config-if)#encapsulation ppp
      CE2(config-if)#encapsulation ppp
      PE1(config-if)#encapsulation ppp
      PE3(config-if)#encapsulation ppp

Set clock rate on PE1, PE3.

      PE1(config-if)#clock rate 64000
      PE3(config-if)#clock rate 64000

Turn on interfaces

      CE1(config-if)#no shutdown
      CE2(config-if)#no shutdown
      PE1(config-if)#no shutdown
      PE3(config-if)#no shutdown

6) Xconnect interfaces on PE1 and PE3

      PE1(config)#interface #PE1:CE1-PE1#
      PE1(config-if)#xconnect 40.0.0.1 100 encapsulation mpls; create VC 100 to transfer PPP traffic through MPLS core 
      
      PE3(config)#interface #PE3:PE3-CE2#
      PE3(config-if)#xconnect 20.0.0.1 100 encapsulation mpls; create VC 100 to transfer PPP traffic through MPLS core 

7) Go through Function test again

Function test:

1) Test MPLS functionality using ping

      PE1# ping mpls ipv4 40.0.0.1; ping command for MPLS

2) Display MPLS related information

Verify the status of virtual circuits on the routers PE1 and PE3. Notice amount of data sent through those circuits. Check VC details.

      Rx# sh mpls l2transport vc detail

3) Test connectivity

Test connectivity between CE1 and CE2 routers.

      CE1# ping 100.0.0.2
      CE1# traceroute 100.0.0.2; there is no hop between customer`s IP addresses. The MPLS core acts as single serial circuit.

4) Show CE router statistics

Run following commands on CE1 or CE2.

      CE1# sh cdp neighbor; display Cisco Discovery Protocol neighbors
      CE1# sh interface #CE1:CE1-PE1#; display detail statistics of an interface

5) debug MPLS AToM events

Run following commands on the PE1 or PE3.

      PE1# debug mpls l2transport vc event; display debug information related to l2transport tunnel in MPLS core network 

Then go to PE1 console and shut interface facing to CE1 router #PE1:CE1-PE1# down. This will cause the VC 100 to break.

    PE3#
    *Nov 17 00:00:17.047: AToM MGR [20.0.0.1, 100]: Remote end down, vc is down
    *Nov 17 00:00:17.055: AToM MGR [20.0.0.1, 100]: Unprovision and deallocate SSM segment

Turn the interface on again.

Then go to P console and shut some interface down. This will cause the VC 100 to break.

    PE3#
    *Nov 17 00:05:39.815: %LDP-5-NBRCHG: LDP Neighbor 20.0.0.1:0 (2) is DOWN (Discovery Hello Hold Timer expired)
    *Nov 17 00:05:39.823: AToM MGR [20.0.0.1, 100]: Remote end down, vc is down

 

Cisco Labs – Redundant and Resilient networks (12) – MPLS – AToM – Frame Relay over MPLS

Introduction

During my university studies I was doing a diploma thesis in field of Redundant and reliable networking. The purpose of itwas to create LAB examples for students, so they can test First Hop Redundancy Protocols (FHRP) , Any Transport over MPLS (AToM) and Border Gateway Protocol (BGP) on Cisco platform. These tasks are created to Virtlab (Virtual lab with physical Cisco routers) however configuration is valid and tested on physical Cisco routers as well.

Each task in the series will have its separate post with brief description of the task and schema. Complete task can be downloaded on My Skydrive

ZIP file contains:

  • *.HTML file – complete step by step guide how to perform the task
  • *.PNG – pictures with topology and others
  • *_preconf.txt – file with basic configuration of topology to be able to focus on task goal (IP addresses, interfaces and so on)
  • *_end.txt – file with complete configuration. Once put to the routers, you will get working task
  • *.dia – Topology in free DIA editor
  • *.XML – topology in XML format

To complete the task:

  • Connect your environment accorrding the topology
  • open the file *_preconf.txt from ZIP file with complete task and configure your environment with basic settings so you can start with the task.



MPLS – AToM – Frame Relay over MPLS

Title: MPLS – AToM – Frame Relay over MPLS

Goal:

  • Configure MPLS-based core IP network.
  • Configure Any Transport over MPLS technology to forward Frame Relay traffic for DLCI 100 through MPLS core.

Required time: 120 minutes

Theoretical background:

Links related to this task:

Topology:

MPLS-AToM-FrameRelay

Configuration:

 

1) Check pre-configured settings

Before starting configuration of MPLS you should check pre-configured settings. First use ping command to test connectivity between PE1 and PE3 routers. Also

check OSPF if networks are propagated correctly.

 

2) MPLS core configuration

In this part of configuration you will configure basic MPLS functionality.

Router PE1

      PE1(config)#ip cef; enable CEF, prerequisite for MPLS
      PE1(config)#interface #PE1:PE1-P#
      PE1(config-if)#mpls ip; enable MPLS on the interface #PE1:PE1-P#  
      PE1(config)#interface loopback 2; create loopback interface
      PE1(config-if)#ip address 20.0.0.1 255.255.255.255; set IP address on loopback interface
      PE1(config-if)#no shutdown
      PE1(config)#mpls label protocol ldp; MPLS will use LDP as label distribution protocol
      PE1(config)#mpls ldp router-id loopback 2 force; force loopback IP address to be router ID
      PE1(config)#router ospf 1
      PE1(config-router)#network 20.0.0.1 0.0.0.0 area 0; set OSPF to propagate loopback address

Router P

Set P and PE3 routers similarly.

      P(config)#ip cef
      P(config)#interface #P:P-PE3#
      P(config-if)#mpls ip
      P(config)#interface #P:PE1-P#
      P(config-if)#mpls ip
      P(config)#interface loopback 2
      P(config-if)#ip address 30.0.0.1 255.255.255.255
      P(config-if)#no shutdown
      P(config)#mpls label protocol ldp
      P(config)#mpls ldp router-id loopback 2 force
      P(config)#router ospf 1
      P(config-router)#network 30.0.0.1 0.0.0.0 area 0

Router PE3

      PE3(config)#ip cef
      PE3(config)#interface #PE3:P-PE3#
      PE3(config-if)#mpls ip
      PE3(config)#interface loopback 2
      PE3(config-if)#ip address 40.0.0.1 255.255.255.255
      PE3(config-if)#no shutdown
      PE3(config)#mpls label protocol ldp
      PE3(config)#mpls ldp router-id loopback 2 force
      PE3(config)#router ospf 1
      PE3(config-router)#network 40.0.0.1 0.0.0.0 area 0

3) MPLS core function test

Use following commands on core routers PE1, P, PE3 and check results

      Pxx#show mpls ldp binding; display LDP bindings on the router
      Pxx#show mpls ldp discovery; show discovered MPLS enabled peering routers
      Pxx#show mpls ldp neighbor; show peering neighbors
      Pxx#show mpls forwarding-table; display forwarding table with local and remote labels. 

4) AToM configuration – provider side

Router PE1

      PE1(config)#frame-relay switching; enable Frame Relay switching globally on customer edge router PE1
      PE1(config)#interface #PE1:CE1-PE1#
      PE1(config-if)#encapsulation frame-relay; encapsulate traffic by Frame Relay
      PE1(config-if)#frame-relay intf-type DCE; set interface to DCE
      PE1(config-if)#no shutdown
      NEW IOS:
      PE1(config)#connect FRoMPLS #PE1:CE1-PE1# 100 l2transport; define VC 100 which will be used to transport FR traffic over MPLS 
      OLDER IOS:
      PE1(config-fr-pw-switching)#mpls l2transport route 40.0.0.1 100; define VC 100 which will be used to transport FR traffic over MPLS 

VC on MPLS is unidirectional. To configure l2 transport tunnel we need to configure VC 100 on both provider edge routers (PE1, PE3).

Router P

Router P needs to have only basic MPLS configured.

Router PE3

      PE3(config)#frame-relay switching; enable Frame Relay switching globally on customer edge router PE3
      PE3(config)#interface #PE3:PE3-CE2#
      PE3(config-if)#encapsulation frame-relay; encapsulate traffic by Frame Relay
      PE3(config-if)#frame-relay intf-type DCE; set interface to DCE
      PE3(config-if)#no shutdown
      PE3(config-if)#clockrate 64000;clock rate setting for serial interface
      PE3(config-if)#connect FRoMPLS #PE3:PE3-CE2# 100 l2transport; frame relay traffic will be passed from interface #PE3:PE3-CE2# through l2tunnel
      PE3(config-fr-pw-switching)#mpls l2transport route 20.0.0.1 100; matching configuration to PE1

5) AToM configuration – customer side

Customer`s side routers CE1,CE2 must be configured, that interfaces facing MPLS core network must have the same DLCI as we configured to be forwarded on provider`s

side.

Router CE1

      CE1(config)#interface #CE1:CE1-PE1#
      CE1(config-if)#encapsulation frame-relay; set interface as Frame Relay enabled
      CE1(config-if)#frame-relay intf-type dte
      CE1(config-if)#no shutdown
      CE1(config-if)#interface #CE1:CE1-PE1#.1 point-to-point; DLCI 100 will be point-to-point FR circuit
      CE1(config-subif)#ip address 100.0.0.1 255.255.255.0; IP address from the same subnet as on CE2 router
      CE1(config-subif)#frame-relay interface-dlci 100

Router CE2

      CE2(config)#interface #CE2:PE3-CE2#
      CE2(config-if)#encapsulation frame-relay; set interface as Frame Relay enabled
      CE2(config-if)#frame-relay intf-type dte
      CE2(config-if)#no shutdown
      CE2(config-if)#interface #CE2:PE3-CE2#.1 point-to-point; DLCI 100 will be point-to-point FR circuit
      CE2(config-subif)#ip address 100.0.0.2 255.255.255.0; IP address from the same subnet as on CE1 router
      CE2(config-subif)#frame-relay interface-dlci 100

Function test:

1) test MPLS functionality using ping

      PE1# ping mpls ipv4 40.0.0.1; ping command for MPLS

2) Display MPLS related information

Verify the status of virtual circuits on the routers PE1 and PE3. Notice amount of data sent through those circuits. Check VC details.

      Rx# sh mpls l2transport vc detail

3) Test connectivity

Test connectivity between CE1 and CE2 routers.

      CE1# ping 100.0.0.2
      CE1# traceroute 100.0.0.2; there is no hop between customer's IP addresses. The MPLS core acts as single frame relay virtual circuit.

4) show Frame Relay statistics

Run following commands on CE1 or CE2.

      CE1# sh frame-relay map; display active DLCIs and related interfaces 
      CE1# sh frame-relay pvc; display detail statistics of active DLCIs

5) debug MPLS AToM events

Run following commands on the PE1 or PE3.

      PE1# debug mpls l2transport vc event; display debug information related to l2transport tunnel in MPLS core network 

Then go to PE1 console and shut interface facing to CE1 router #PE1:CE1-PE1# down. This will cause the VC 100 to break.

    PE3#
    *Nov 17 00:00:17.047: AToM MGR [20.0.0.1, 100]: Remote end down, vc is down
    *Nov 17 00:00:17.055: AToM MGR [20.0.0.1, 100]: Unprovision and deallocate SSM segment

Turn on the interface again.

Then go to P console and shut some interface down. This will cause the VC 100 to break.

    PE3#
    *Nov 17 00:05:39.815: %LDP-5-NBRCHG: LDP Neighbor 20.0.0.1:0 (2) is DOWN (Discovery Hello Hold Timer expired)
    *Nov 17 00:05:39.823: AToM MGR [20.0.0.1, 100]: Remote end down, vc is down

Optional:

Configure another subinterfaces on the routers PE1,PE3,CE1,CE2 to support more DLCIs to be routed through MPLS core using AToM technology. Follow steps 4) and 5)

from Configuration part.

 

Cisco Labs – Redundant and Resilient networks (11) – MPLS – AToM – Ethernet over MPLS

Introduction

During my university studies I was doing a diploma thesis in field of Redundant and reliable networking. The purpose of itwas to create LAB examples for students, so they can test First Hop Redundancy Protocols (FHRP) , Any Transport over MPLS (AToM) and Border Gateway Protocol (BGP) on Cisco platform. These tasks are created to Virtlab (Virtual lab with physical Cisco routers) however configuration is valid and tested on physical Cisco routers as well.

Each task in the series will have its separate post with brief description of the task and schema. Complete task can be downloaded on My Skydrive

ZIP file contains:

  • *.HTML file – complete step by step guide how to perform the task
  • *.PNG – pictures with topology and others
  • *_preconf.txt – file with basic configuration of topology to be able to focus on task goal (IP addresses, interfaces and so on)
  • *_end.txt – file with complete configuration. Once put to the routers, you will get working task
  • *.dia – Topology in free DIA editor
  • *.XML – topology in XML format

To complete the task:

  • Connect your environment accorrding the topology
  • open the file *_preconf.txt from ZIP file with complete task and configure your environment with basic settings so you can start with the task.



MPLS – AToM – Ethernet over MPLS

Title: MPLS – AToM – Ethernet over MPLS

Goal:

  • Configure MPLS-based core IP network.
  • Configure Any Transport over MPLS technology to forward traffic of VLAN 10 between two customer sites through MPLS core network.

Required time: 120 minutes

Theoretical background:

Links related to this task:

Topology:

MPLS-AToM-Ethernet

Configuration:

 

1) Check pre-configured settings

Before starting configuration of MPLS you should check pre-configured settings. First use ping command to test connectivity between PE1 and PE3 routers. Also check OSPF if all networks are propagated correctly.

 

2) MPLS core configuration

In this part of configuration you will configure basic MPLS functionality.

Router PR1

      PR1(config)#ip cef; enable CEF, prerequisite for MPLS
      PR1(config)#interface #PR1:PR1-P#
      PR1(config-if)#mpls ip; enable MPLS on the interface #PE1:PE1-P#
      PR1(config)#interface loopback 2; create loopback interface
      PR1(config-if)#ip address 20.0.0.1 255.255.255.255; set IP address on loopback interface
      PR1(config-if)#no shutdown
      PR1(config)#mpls label protocol ldp; MPLS will use LDP as label distribution protocol
      PR1(config)#mpls ldp router-id loopback 2 force;force loopback IP address to be router ID
      PR1(config)#router ospf 1
      PR1(config-router)#network 20.0.0.1 0.0.0.0 area 0; set OSPF to propagate loopback address

Router P

Set P and PE3 routers similarly.

      P(config)#ip cef
      P(config)#interface #P:P-PR3#
      P(config-if)#mpls ip
      P(config)#interface #P:PR1-P#
      P(config-if)#mpls ip
      P(config)#interface loopback 2
      P(config-if)#ip address 30.0.0.1 255.255.255.255
      P(config-if)#no shutdown
      P(config)#mpls label protocol ldp
      P(config)#mpls ldp router-id loopback 2 force
      P(config)#router ospf 1
      P(config-router)#network 30.0.0.1 0.0.0.0 area 0

Router PR3

      PR3(config)#ip cef
      PR3(config)#interface #PR3:P-PR3#
      PR3(config-if)#mpls ip
      PR3(config)#interface loopback 2
      PR3(config-if)#ip address 40.0.0.1 255.255.255.255
      PR3(config-if)#no shutdown
      PR3(config)#mpls label protocol ldp
      PR3(config)#mpls ldp router-id loopback 2 force
      PR3(config)#router ospf 1
      PR3(config-router)#network 40.0.0.1 0.0.0.0 area 0

3) MPLS core function test

Use following commands on core routers PR1, P, PR3 and check results

      Pxx#show mpls ldp binding; display LDP bindings on the router
      Pxx#show mpls ldp discovery; show discovered MPLS enabled peering routers
      Pxx#show mpls ldp neighbor; show peering neighbors
      Pxx#show mpls forwarding-table; display forwarding table with local and remote labels

4) AToM configuration – provider side

Router PR1

      PR1(config-if)#interface #PR1:CE1-PR1#.1
      PR1(config-subif)#encapsulation dot1q 10; VLAN 10 will be encapsulated and transported through MPLS AToM technology
      OLD IOS:
      PR1(config-subif)#mpls l2transport route 40.0.0.1 100; define VC 100 which will be used to transport VLAN 10 frames over MPLS  
      NEW IOS:
      PR1(config-subif)#xconnect 40.0.0.1 100 encapsulation mpls; define VC 100 which will be used to transport VLAN 10 frames over MPLS  

VC on MPLS is unidirectional. To configure l2 transport tunnel we need to configure VC 100 on both provider edge routers (PR1, PR3).

Router P

Router P needs to have only basic MPLS configured.

Router PR3

      PR3(config-if)#interface #PR3:PR3-CE2#.1
      PR3(config-subif)#encapsulation dot1q 10
      PR3(config-subif)#mpls l2transport route 20.0.0.1 100; matching configuration to PR1
      PR3(config-subif)#xconnect 20.0.0.1 100 encapsulation mpls; matching configuration to PR1
      PR3(config-subif)#no shutdown

5) AToM configuration – customer side

Customer`s side routers CE1,CE2 must be configured so that interfaces facing MPLS core network must have the same VLAN as we configured to be forwarded on provider`s side.

Router CE1

      CE1(config)#interface #CE1:CE1-PR1#
      CE1(config-if)#no shutdown
      CE1(config-if)#interface #CE1:CE1-PR1#.1; subinterface configuration mode
      CE1(config-subif)#encapsulation dot1q 10; VLAN 10 will be transported through MPLS AToM technology
      CE1(config-subif)#ip address 10.0.1.1 255.255.255.0; IP address from the same subnet as on CE2 router
      CE1(config-subif)#no shutdown

Router CE2

      CE2(config)#interface #CE2:PR3-CE2#
      CE2(config-if)#no shutdown
      CE2(config-if)#interface #CE2:PR3-CE2#.1; subinterface configuration mode
      CE2(config-subif)#encapsulation dot1q 10; VLAN 10 will be encapsulated and transported through MPLS AToM technology
      CE2(config-subif)#ip address 10.0.1.2 255.255.255.0; IP address from the same subnet as on CE1 router
      CE2(config-subif)#no shutdown

Function test:

1) test MPLS functionality using ping

      PR1# ping mpls ipv4 40.0.0.1; ping command for MPLS

2) Display MPLS related information

Verify the status of virtual circuits on the routers PR1 and PR3 . Notice amount of data sent through those circuits. Check VC details.

      Rx# sh mpls l2transport vc detail

3) Test connectivity

Test connectivity between CE1 and CE2 routers.

      CE1# ping 10.0.1.2
      CE1# traceroute 10.0.1.2; there is no hop between customer`s IP addresses. The MPLS core acts like single Ethernet wire.

4) Debug AToM VC events

Enter “debug MPLS l2transport vc event” command on PE3.

      PE3# debug MPLS l2transport vc event; enable debugging of MPLS virtual circuits

Then go to PE1 console and shut interface facing to CE1 router #PE1:CE1-PE1# down. This will cause the VC 100 to break.

    PE3#
    *Nov 17 00:00:17.047: AToM MGR [20.0.0.1, 100]: Remote end down, vc is down
    *Nov 17 00:00:17.055: AToM MGR [20.0.0.1, 100]: Unprovision and deallocate SSM segment

Turn on the interface again.

Then go to P console and shut some interface down. This will cause the VC 100 to break.

    PE3#
    *Nov 17 00:05:39.815: %LDP-5-NBRCHG: LDP Neighbor 20.0.0.1:0 (2) is DOWN (Discovery Hello Hold Timer expired)
    *Nov 17 00:05:39.823: AToM MGR [20.0.0.1, 100]: Remote end down, vc is down

Optional:

Configure more subinterfaces on the routers PE1,PE3,CE1,CE2 to support selected VLANS from range 2-4094 to be routed through MPLS core. Configure one sub-interface for each additional VLAN.

Follow steps 4) and 5) from Configuration part to use AToM technology to forward customer’s VLAN traffic.

 

Cisco Labs – Redundant and Resilient networks (10) – VRRP – Virtual Router Redundancy Protocol – basic, object tracking

Introduction

During my university studies I was doing a diploma thesis in field of Redundant and reliable networking. The purpose of itwas to create LAB examples for students, so they can test First Hop Redundancy Protocols (FHRP) , Any Transport over MPLS (AToM) and Border Gateway Protocol (BGP) on Cisco platform. These tasks are created to Virtlab (Virtual lab with physical Cisco routers) however configuration is valid and tested on physical Cisco routers as well.

Each task in the series will have its separate post with brief description of the task and schema. Complete task can be downloaded on My Skydrive

ZIP file contains:

  • *.HTML file – complete step by step guide how to perform the task
  • *.PNG – pictures with topology and others
  • *_preconf.txt – file with basic configuration of topology to be able to focus on task goal (IP addresses, interfaces and so on)
  • *_end.txt – file with complete configuration. Once put to the routers, you will get working task
  • *.dia – Topology in free DIA editor
  • *.XML – topology in XML format

To complete the task:

  • Connect your environment accorrding the topology
  • open the file *_preconf.txt from ZIP file with complete task and configure your environment with basic settings so you can start with the task.



VRRP – Object tracking

Title: VRRP – Object tracking

Goal:

  • Configure Virtual Router Redundancy Protocol on 192.168.1.0/24 network segment.
  • PC1 represents group 1, its default gateway address is 192.168.1.1.
  • Set priority so that VRRP group 1 master will be RLB1 router.
  • Turn on VRRP object tracking, debuging and test functionality.

Required time: 120 minutes

Theoretical background:

Links related to this task:

Topology:

VRRP-ObjectTracking

Configuration:

 

1) Basic IP settings

OSPF will be used for routing.

PC1

      pc1:~#ifconfig eth0 192.168.1.20 netmask 255.255.255.0; set IP address for PCx
      pc1:~#route add default gw 192.168.1.1; set default gateway to group 1 virtual router IP address

PC2

      pc2:~#ifconfig eth0 20.0.0.2 netmask 255.0.0.0; set IP address for PCx
      pc2:~#route add default gw 20.0.0.1; set default gateway to IP address of EDGE router

Router RLB1

      RLB1(config)#interface #RLB1:RLB1-SW1#; configure physical interface IP address of VRRP enabled interface
      RLB1(config-if)#ip address 192.168.1.251 255.255.255.0; physical IP address of VRRP interface
      RLB1(config-if)#no shutdown
      
      RLB1(config)#interface #RLB1:EDGE-RLB1#; configure interface facing to the external network
      RLB1(config-if)#ip address 172.16.1.1 255.255.0.0
      RLB1(config-if)#no shutdown
      RLB1(config-if)#exit
      
      RLB1(config)#router ospf 1 ; configure routing protocol for internal and external network
      RLB1(config-router)#network 172.16.1.0 0.0.255.255 area 0
      RLB1(config-router)#network 192.168.1.0 0.0.0.255 area 0

Router RLB2

Apply analogical settings for the router RLB2.

      RLB2(config)#interface #RLB2:RLB2-SW1#
      RLB2(config-if)#ip address 192.168.1.252 255.255.255.0
      RLB2(config-if)#no shutdown
      
      RLB2(config)#interface #RLB2:EDGE-RLB2#; configure interface facing to the external network
      RLB2(config-if)#ip address 172.17.1.1 255.255.0.0
      RLB2(config-if)#no shutdown
      RLB2(config-if)#exit
      
      RLB2(config)#router ospf 1
      RLB2(config-router)#network 172.17.1.0 0.0.255.255 area 0
      RLB2(config-router)#network 192.168.1.0 0.0.0.255 area 0

Router EDGE

      EDGE(config)#interface #EDGE:PC2-EDGE# ; this network simulates the Internet
      EDGE(config-if)#ip address 20.0.0.1 255.0.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit
      EDGE(config)#interface #EDGE:EDGE-RLB2#
      EDGE(config-if)#ip address 172.17.1.2 255.255.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit
      EDGE(config)#interface #EDGE:EDGE-RLB1#
      EDGE(config-if)#ip address 172.16.1.2 255.255.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit

2) PC1 -> PC2 connectivity test

Use the following command to test connectivity.

      pc1:~#ping 20.0.0.2; ping command is unsuccessful - no GW could be found

3) VRRP and object tracking settings

Status of line protocol will be tracked on loopback interfaces

Configure object tracking

      RLB1(config)#interface loopback 2; enable interface loopback 2
      RLB1(config-if)#ip address 1.1.1.1 255.255.255.0; set IP address
      RLB1(config-if)#no shutdown; turn the interface on
      RLB1(config-if)#exit
      RLB1(config)#track 2 interface loopback 2 line-protocol; create tracking object 2 to track interface loopback 2 and its line protocol

Router RLB1

      RLB1(config)#interface #RLB1:RLB1-SW1#
      RLB1(config-if)#vrrp 1 ip 192.168.1.1 ; set virtual router address for group 1
      RLB1(config-if)#vrrp 1 track 2 decrement 15; track status of object 2 - defined in step 3) - by VRRP RLB1 and decrease VRRP 1 priority by 15
      RLB1(config-if)#vrrp 1 priority 25 ; configure VRRP priority - higher value means higher priority, RLB1 will be master for group 1 because RLB2 has priority 

20
      RLB1(config-if)#vrrp 1 preempt delay minimum 1; set minimum delay to overthrow router with higher priority one

Router RLB2

      RLB2(config)#interface #RLB2:RLB2-SW1#
      RLB2(config-if)#vrrp 1 ip 192.168.1.1 ; set virtual router address for group 1
      RLB2(config-if)#vrrp 1 priority 20
      RLB2(config-if)#vrrp 1 preempt delay minimum 1; set minimum delay to overthrow router with higher priority one

Function test:

1) test ping from PC1 to PC2

      pc1:~#ping 20.0.0.2; ping command is successful - GW could be found as virtual address 192.168.1.1

2) Display VRRP information

      RLB1# sh VRRP; see result, this router is master for group 1
      RLB1# debug VRRP; debug will show VRRP communication between nodes
     
      RLB2# sh VRRP; see result, this router is backup for group 1

3) Shutdown interface on RLB1 to initiate tracking object to decrease priority of RLB1 router by 15

      RLB1(config)#interface loopback 2
      RLB1(config-if)#shutdown

4) Display VRRP information after priority change

      RLB1# sh VRRP; see result, this router is backup for group 1

5) Turn interface loopback 2 on again on RLB1

After interface is turned on, router become master as it has higher priority.

      RLB1# sh VRRP; see result, this router is master

 

Cisco Labs – Redundant and Resilient networks (9) – VRRP – Virtual Router Redundancy Protocol – basic

Introduction

During my university studies I was doing a diploma thesis in field of Redundant and reliable networking. The purpose of itwas to create LAB examples for students, so they can test First Hop Redundancy Protocols (FHRP) , Any Transport over MPLS (AToM) and Border Gateway Protocol (BGP) on Cisco platform. These tasks are created to Virtlab (Virtual lab with physical Cisco routers) however configuration is valid and tested on physical Cisco routers as well.

Each task in the series will have its separate post with brief description of the task and schema. Complete task can be downloaded on My Skydrive

ZIP file contains:

  • *.HTML file – complete step by step guide how to perform the task
  • *.PNG – pictures with topology and others
  • *_preconf.txt – file with basic configuration of topology to be able to focus on task goal (IP addresses, interfaces and so on)
  • *_end.txt – file with complete configuration. Once put to the routers, you will get working task
  • *.dia – Topology in free DIA editor
  • *.XML – topology in XML format

To complete the task:

  • Connect your environment accorrding the topology
  • open the file *_preconf.txt from ZIP file with complete task and configure your environment with basic settings so you can start with the task.



VRRP – Basic

Title: VRRP – Basic

Goal:

  • Configure Virtual Router Redundancy Protocol on 192.168.1.0/24 network segment. One group of hosts resides on network segment.
  • PC1 represents group 1, its default gateway address is 192.168.1.1.
  • Set VRRP group for each group of hosts, use priority setting so that VRRP group 1 master will be RLB1 router and VRRP group 2 master will be RLB2 router(optional).
  • Turn on VRRP debuging and test functionality.
  • As optional task configure PC3 represents group 2 and its default gateway address is 192.168.1.2.

Required time: 120 minutes

Theoretical background:

Links related to this task:

Topology:

VRRP-Basic

Configuration:

 

1) Basic IP settings

OSPF will be used for routing.

PC1

      pc1:~#ifconfig eth0 192.168.1.20 netmask 255.255.255.0; set IP address for PCx
      pc1:~#route add default gw 192.168.1.1; set default gateway to group 1 virtual router IP address

PC2

      pc2:~#ifconfig eth0 20.0.0.2 netmask 255.0.0.0; set IP address for PCx
      pc2:~#route add default gw 20.0.0.1; set default gateway to IP address of EDGE router

PC3

      pc3:~#ifconfig eth0 192.168.1.120 netmask 255.255.255.0; set IP address for PCx
      pc3:~#route add default gw 192.168.1.2; set default gateway to group 2 virtual router IP address

Router RLB1

      RLB1(config)#interface #RLB1:RLB1-SW1#; configure physical interface IP address of VRRP enabled interface
      RLB1(config-if)#ip address 192.168.1.251 255.255.255.0; physical IP address of VRRP interface
      RLB1(config-if)#no shutdown
      
      RLB1(config)#interface #RLB1:EDGE-RLB1#; configure interface facing to the external network
      RLB1(config-if)#ip address 172.16.1.1 255.255.0.0
      RLB1(config-if)#no shutdown
      RLB1(config-if)#exit
      
      RLB1(config)#router ospf 1 ; configure routing protocol for internal and external network
      RLB1(config-router)#network 172.16.1.0 0.0.255.255 area 0
      RLB1(config-router)#network 192.168.1.0 0.0.0.255 area 0

Router RLB2

Apply analogical settings for the router RLB2.

      RLB2(config)#interface #RLB2:RLB2-SW1#
      RLB2(config-if)#ip address 192.168.1.252 255.255.255.0
      RLB2(config-if)#no shutdown
      
      RLB2(config)#interface #RLB2:EDGE-RLB2#; configure interface facing to the external network
      RLB2(config-if)#ip address 172.17.1.1 255.255.0.0
      RLB2(config-if)#no shutdown
      RLB2(config-if)#exit
      
      RLB2(config)#router ospf 1
      RLB2(config-router)#network 172.17.1.0 0.0.255.255 area 0
      RLB2(config-router)#network 192.168.1.0 0.0.0.255 area 0

Router EDGE

      EDGE(config)#interface #EDGE:PC2-EDGE# ; this network simulates the Internet
      EDGE(config-if)#ip address 20.0.0.1 255.0.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit
      EDGE(config)#interface #EDGE:EDGE-RLB2#
      EDGE(config-if)#ip address 172.17.1.2 255.255.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit
      EDGE(config)#interface #EDGE:EDGE-RLB1#
      EDGE(config-if)#ip address 172.16.1.2 255.255.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit

2) PC1,PC3 -> PC2 connectivity test

Use following command to test connectivity.

      pc1:~#ping 20.0.0.2; ping command is unsuccessful - no GW could be found
      pc3:~#ping 20.0.0.2; ping command is unsuccessful - no GW could be found

3) VRRP settings

Router RLB1

      RLB1(config)#interface #RLB1:RLB1-SW1# ; enter physical internal interface configuration mode
      RLB1(config-if)#vrrp 1 ip 192.168.1.1 ; set virtual router address for group 1
      RLB1(config-if)#vrrp 1 priority 10 ; configure VRRP priority - higher value means higher priority, RLB2 will be master for group 1 because RLB2 has priority 

20
      RLB1(config-if)#vrrp 1 preempt delay minimum 1; set minimum delay to overthrow router with higher priority one
      
      RLB1(config)#interface #RLB1:RLB1-SW1# ; enter physical internal interface configuration mode
      RLB1(config-if)#vrrp 2 ip 192.168.1.2 ; set virtual router address for group 2
      RLB1(config-if)#vrrp 2 priority 20 ; configure VRRP priority - higher value means higher priority, RLB1 will be master for group 2 because RLB1 has priority 

20
      RLB1(config-if)#vrrp 2 preempt delay minimum 1; set minimum delay to overthrow router with higher priority one

Router RLB2

      RLB2(config)#interface #RLB2:RLB2-SW1# ; enter physical internal interface configuration mode
      RLB2(config-if)#vrrp 1 ip 192.168.1.1 ; set virtual router address for group 1
      RLB2(config-if)#vrrp 1 priority 20
      RLB2(config-if)#vrrp 1 preempt delay minimum 1; set minimum delay to overthrow router with higher priority one
      
      
      RLB2(config)#interface #RLB2:RLB2-SW1# ; enter physical internal interface configuration mode
      RLB2(config-if)#vrrp 2 ip 192.168.1.2 ; set virtual router address for group 2
      RLB2(config-if)#vrrp 2 priority 10
      RLB2(config-if)#vrrp 2 preempt delay minimum 1; set minimum delay to overthrow router with higher priority one

Function test:

1) test ping from PC1,PC3 to PC2

      pc1:~#ping 20.0.0.2; ping command is successful - GW could be found as virtual address 192.168.1.1
      pc3:~#ping 20.0.0.2; ping command is successful - GW could be found as virtual address 192.168.1.2

2) Display VRRP information

      RLB1# sh VRRP; see result, this router is backup for group 1 and master for group 2
      RLB1# debug VRRP; debug will show VRRP communication between nodes
     
      RLB2# sh VRRP; see result, this router is master for group 1 and backup for group 2

3) Change priority for RLB2

      RLB2(config)#interface #RLB2:RLB2-SW1#
      RLB2(config-if)#vrrp 1 priority 5

4) Display VRRP information after priority change

      RLB1# sh VRRP
     
      RLB2# sh VRRP

5) Turn off internal ethernet interface on RLB1 (master) to failover to backup router RLB2

      RLB1(config)#interface #RLB1:RLB1-SW1#
      RLB1(config-if)#shutdown

6) See result on RLB2

      RLB2# sh VRRP; see result, this router is master for both groups

7) Turn interface back on RLB2

After interface is turned on, router become master since it has higher priority for both groups.

      RLB2# sh VRRP; see result, this router is master for group 1 and backup for group 2 again

 

Cisco Labs – Redundant and Resilient networks (8) – GLBP – Gateway Load Balanced Protocol – object tracking

Introduction

During my university studies I was doing a diploma thesis in field of Redundant and reliable networking. The purpose of itwas to create LAB examples for students, so they can test First Hop Redundancy Protocols (FHRP) , Any Transport over MPLS (AToM) and Border Gateway Protocol (BGP) on Cisco platform. These tasks are created to Virtlab (Virtual lab with physical Cisco routers) however configuration is valid and tested on physical Cisco routers as well.

Each task in the series will have its separate post with brief description of the task and schema. Complete task can be downloaded on My Skydrive

ZIP file contains:

  • *.HTML file – complete step by step guide how to perform the task
  • *.PNG – pictures with topology and others
  • *_preconf.txt – file with basic configuration of topology to be able to focus on task goal (IP addresses, interfaces and so on)
  • *_end.txt – file with complete configuration. Once put to the routers, you will get working task
  • *.dia – Topology in free DIA editor
  • *.XML – topology in XML format

To complete the task:

  • Connect your environment accorrding the topology
  • open the file *_preconf.txt from ZIP file with complete task and configure your environment with basic settings so you can start with the task.



GLBP – Object tracking

Title: GLBP – Object tracking

Goal:

  • Configure Gateway Load Balancing Protocol on 192.168.1.0/24 network segment. One group of hosts resides on network segment.
  • PC1 and PC3 represents group 1, its default gateway address is 192.168.1.1.
  • Load balancing is set to round robin by default. Change load balancing mode to weighted, use object tracking and test functionality .

Required time: 120 minutes

Theoretical background:

Links related to this task:

Topology:

GLBP-objecttracking

Configuration:

 

1) Basic IP settings

OSPF will be used for routing.

PC1

      pc1:~#ifconfig eth0 192.168.1.20 netmask 255.255.255.0; set IP address for PCx
      pc1:~#route add default gw 192.168.1.1; set default gateway to GLBP group 1 virtual address

PC2

      pc2:~#ifconfig eth0 20.0.0.2 netmask 255.0.0.0; set IP address for PCx
      pc2:~#route add default gw 20.0.0.1; set default gateway to IP address of EDGE router

PC3

      pc3:~#ifconfig eth0 192.168.1.120 netmask 255.255.255.0; set IP address for PCx
      pc3:~#route add default gw 192.168.1.1; set default gateway to GLBP group 1 virtual address

Router RLB1

      RLB1(config)#interface #RLB1:RLB1-SW1#; configure physical interface IP address of GLBP enabled interface
      RLB1(config-if)#ip address 192.168.1.251 255.255.255.0; physical IP address of GLBP enabled interface
      RLB1(config-if)#no shutdown
      
      RLB1(config)#interface #RLB1:EDGE-RLB1#; configure interface facing to the external network
      RLB1(config-if)#ip address 172.16.1.1 255.255.0.0
      RLB1(config-if)#no shutdown
      RLB1(config-if)#exit
      
      RLB1(config)#router ospf 1 ; configure routing protocol for internal and external network
      RLB1(config-router)#network 172.16.1.0 0.0.255.255 area 0
      RLB1(config-router)#network 192.168.1.0 0.0.0.255 area 0

Router RLB2

Apply analogical settings for the router RLB2.

      RLB2(config)#interface #RLB2:RLB2-SW1#
      RLB2(config-if)#ip address 192.168.1.252 255.255.255.0
      RLB2(config-if)#no shutdown
      
      RLB2(config)#interface #RLB2:EDGE-RLB2#; configure interface facing to the external network
      RLB2(config-if)#ip address 172.17.1.1 255.255.0.0
      RLB2(config-if)#no shutdown
      RLB2(config-if)#exit
      
      RLB2(config)#router ospf 1
      RLB2(config-router)#network 172.17.1.0 0.0.255.255 area 0
      RLB2(config-router)#network 192.168.1.0 0.0.0.255 area 0

Router EDGE

      EDGE(config)#interface #EDGE:PC2-EDGE# ; this network simulates the Internet
      EDGE(config-if)#ip address 20.0.0.1 255.0.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit
      EDGE(config)#interface #EDGE:EDGE-RLB2#
      EDGE(config-if)#ip address 172.17.1.2 255.255.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit
      EDGE(config)#interface #EDGE:EDGE-RLB1#
      EDGE(config-if)#ip address 172.16.1.2 255.255.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit

2) PC1,PC3 -> PC2 connectivity test

Use the following command to test connectivity.

      pc1:~#ping 20.0.0.2; ping command is unsuccessful - no GW could be found
      pc3:~#ping 20.0.0.2; ping command is unsuccessful - no GW could be found

3) GLBP settings

Router RLB1

      RLB1(config)#interface #RLB1:RLB1-SW1# ; enter physical internal interface configuration mode
      RLB1(config-if)#glbp 1 ip 192.168.1.1 ; set virtual GLBP address for group 1
      RLB1(config-if)#glbp 1 name GROUP1 ; set name for group 1
      RLB1(config-if)#glbp 1 priority 50 ; configure GLBP priority - higher value means higher priority, RLB1 will be active forwarder for group 1 other 
      RLB1(config-if)#glbp 1 forwarder preempt ; allow this router to overthrow lower priority forwarders
      RLB1(config-if)#glbp 1 preempt delay minimum 2 ; set overthrow priority minimum delay for 2 seconds
      RLB1(config-if)#glbp 1 weighting 50; set weighting to approx. 50 - 50% of requests will be handled by this forwarder, because RLB2 weight is 50
      RLB1(config-if)#glbp 1 load-balancing weighted; set load balancing algorithm to weighted

Router RLB2

      RLB2(config)#interface #RLB2:RLB2-SW1#
      RLB2(config-if)#glbp 1 ip 192.168.1.1
      RLB2(config-if)#glbp 1 name GROUP1
      RLB2(config-if)#glbp 1 priority 40
      RLB2(config-if)#glbp 1 forwarder preempt
      RLB2(config-if)#glbp 1 preempt delay minimum 2
      RLB2(config-if)#glbp 1 weighting 50
      RLB2(config-if)#glbp 1 load-balancing weighted

Perform function test, make sure that hosts are distributes between RLB routers 50 to 50 percent.

4) Weighting settings

Status of line protocol will be tracked on loopback interfaces.

Router RLB1

      RLB1(config)#track 1 interface loopback 1 line-protocol; line protocol on interface loopback 1 will be tracked in GLBP 
      RLB1(config)#interface #RLB1:RLB1-SW1#
      RLB1(config-if)#glbp 1 load-balancing weighted; set load balancing to weighted mode
      RLB1(config-if)#glbp 1 weighting track 1; glbp will track object 1 changes
      RLB1(config-if)#glbp 1 weighting 50 lower 10 upper 50; set lower (weighting 50 - 10 = 40)and upper values for GLBP tracking, these values are triggered when tracked object status change.

Router RLB2

      RLB2(config)#track 1 interface loopback 1 line-protocol; line protocol on interface loopback 1 will be tracked in GLBP 
      RLB2(config)#interface #RLB2:RLB2-SW1#
      RLB2(config-if)#glbp 1 load-balancing weighted; set load balancing to weighted mode
      RLB2(config-if)#glbp 1 weighting track 1; glbp will track object 1 changes
      RLB2(config-if)#glbp 1 weighting 50 lower 10 upper 50; set lower (weighting 50 - 10 = 40)and upper values for GLBP tracking, these values are triggered when tracked object status change.

5) Object tracking changes

Shutdown loopback 1 on RLB1 and perform function test step 3).Note differences in host assigning.

Shutdown loopback 1 on RLB2, turn on loopback 1 on RLB1 and perform function test step 3). Note differences in host assigning.

Shutdown loopback 1 on RLB2 and perform function test step 3). Note differences in host assigning.

Function test:

1) test ping from PC1,PC3 to PC2

      pc1:~#ping 20.0.0.2; ping command is successful - GW could be found as virtual address 192.168.1.1
      pc3:~#ping 20.0.0.2; ping command is successful - GW could be found as virtual address 192.168.1.1

2) Display GLBP information

      RLB1# sh glbp; this router is Active Virtual Forwarder
      RLB1# debug glbp; debug will show GLBP communication between nodes
      
      RLB2# sh glbp; see result, this router is conditional forwarder for group 1

3) Generate traffic to test weighting functionality

Repeat following steps several times to generate several new ARP requests.

Weighted load balancing is used when we need to distribute load balancing not equaly between forwarders. We can distribute forwarding in custom percentage.

Test step 1

    
    pc1:~#ifconfig eth0 down; turn the interface off
    pc1:~#ifconfig eth0 hw ether 00:80:48:BA:d1:36; change MAC address
    pc1:~#ifconfig eth0 up; turn the interface on
    pc1:~#ifconfig eth0 |grep HWaddr; apply new MAC address
    pc1:~#route add default gw 192.168.1.1; set default GW
    pc1:~#ping 20.0.0.2 -c 2; test connection to outside host
    pc1:~#tracert 20.0.0.2; trace outside host to gather first hop physical interface IP address that handles virtual GW address

Test step 2

    pc1:~#ifconfig eth0 down
    pc1:~#ifconfig eth0 hw ether 00:80:48:BA:d1:37
    pc1:~#ifconfig eth0 up
    pc1:~#ifconfig eth0 |grep HWaddr
    pc1:~#route add default gw 192.168.1.1
    pc1:~#ping 20.0.0.2 -c 2
    pc1:~#tracert 20.0.0.2; note down the first hop physical interface IP address that handles virtual GW address

Test step 3

    pc1:~#ifconfig eth0 down
    pc1:~#ifconfig eth0 hw ether 00:80:48:BA:d1:38
    pc1:~#ifconfig eth0 up
    pc1:~#ifconfig eth0 |grep HWaddr
    pc1:~#route add default gw 192.168.1.1
    pc1:~#ping 20.0.0.2 -c 2
    pc1:~#tracert 20.0.0.2

Repeat test steps: 1,2,3,3,3,2,2 and note down physical IP addresses again.

You can see that for the same MAC address (different forwarders might be used).

Sample result

    00:80:48:BA:d1:36 - 192.168.1.251
    00:80:48:BA:d1:37 - 192.168.1.251
 
    00:80:48:BA:d1:38 - 192.168.1.251
    00:80:48:BA:d1:36 - 192.168.1.252
    00:80:48:BA:d1:37 - 192.168.1.251
    00:80:48:BA:d1:38 - 192.168.1.251
    00:80:48:BA:d1:38 - 192.168.1.251
    00:80:48:BA:d1:38 - 192.168.1.252
    00:80:48:BA:d1:37 - 192.168.1.251
    00:80:48:BA:d1:37 - 192.168.1.251

 

Cisco Labs – Redundant and Resilient networks (7) – GLBP – Gateway Load Balanced Protocol – basic, weighted

Introduction

During my university studies I was doing a diploma thesis in field of Redundant and reliable networking. The purpose of itwas to create LAB examples for students, so they can test First Hop Redundancy Protocols (FHRP) , Any Transport over MPLS (AToM) and Border Gateway Protocol (BGP) on Cisco platform. These tasks are created to Virtlab (Virtual lab with physical Cisco routers) however configuration is valid and tested on physical Cisco routers as well.

Each task in the series will have its separate post with brief description of the task and schema. Complete task can be downloaded on My Skydrive

ZIP file contains:

  • *.HTML file – complete step by step guide how to perform the task
  • *.PNG – pictures with topology and others
  • *_preconf.txt – file with basic configuration of topology to be able to focus on task goal (IP addresses, interfaces and so on)
  • *_end.txt – file with complete configuration. Once put to the routers, you will get working task
  • *.dia – Topology in free DIA editor
  • *.XML – topology in XML format

To complete the task:

  • Connect your environment accorrding the topology
  • open the file *_preconf.txt from ZIP file with complete task and configure your environment with basic settings so you can start with the task.



GLBP – Basic – Weighted

Title: GLBP – Basic – Weighted

Goal:

  • Configure Gateway Load Balancing Protocol on 192.168.1.0/24 network segment. One group of hosts resides on network segment.
  • PC1 and PC3 represents group 1, its default gateway address is 192.168.1.1.
  • Load balancing is set to round robin by default. Change load balancing mode to weighted and test functionality.

Required time: 120 minutes

Theoretical background:

Links related to this task:

Topology:

GLBP-basic-weighted

Configuration:

 

1) Basic IP settings

OSPF will be used for routing.

PC1

      pc1:~#ifconfig eth0 192.168.1.20 netmask 255.255.255.0; set IP address for PCx
      pc1:~#route add default gw 192.168.1.1; set default gateway to GLBP group 1 virtual address

PC2

      pc2:~#ifconfig eth0 20.0.0.2 netmask 255.0.0.0; set IP address for PCx
      pc2:~#route add default gw 20.0.0.1; set default gateway to IP address of EDGE router

PC3

      pc3:~#ifconfig eth0 192.168.1.120 netmask 255.255.255.0; set IP address for PCx
      pc3:~#route add default gw 192.168.1.1; set default gateway to GLBP group 1 virtual address

Router RLB1

      RLB1(config)#interface #RLB1:RLB1-SW1#; configure physical interface IP address of GLBP enabled interface
      RLB1(config-if)#ip address 192.168.1.251 255.255.255.0; physical IP address of GLBP enabled interface
      RLB1(config-if)#no shutdown
      
      RLB1(config)#interface #RLB1:EDGE-RLB1#; configure interface facing to the external network
      RLB1(config-if)#ip address 172.16.1.1 255.255.0.0
      RLB1(config-if)#no shutdown
      RLB1(config-if)#exit
      
      RLB1(config)#router ospf 1 ; configure routing protocol for internal and external network
      RLB1(config-router)#network 172.16.1.0 0.0.255.255 area 0
      RLB1(config-router)#network 192.168.1.0 0.0.0.255 area 0

Router RLB2

Apply analogical settings for the router RLB2.

      RLB2(config)#interface #RLB2:RLB2-SW1#
      RLB2(config-if)#ip address 192.168.1.252 255.255.255.0
      RLB2(config-if)#no shutdown
      
      RLB2(config)#interface #RLB2:EDGE-RLB2#; configure interface facing to the external network
      RLB2(config-if)#ip address 172.17.1.1 255.255.0.0
      RLB2(config-if)#no shutdown
      RLB2(config-if)#exit
      
      RLB2(config)#router ospf 1
      RLB2(config-router)#network 172.17.1.0 0.0.255.255 area 0
      RLB2(config-router)#network 192.168.1.0 0.0.0.255 area 0

Router EDGE

      EDGE(config)#interface #EDGE:PC2-EDGE# ; this network simulates the Internet
      EDGE(config-if)#ip address 20.0.0.1 255.0.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit
      EDGE(config)#interface #EDGE:EDGE-RLB2#
      EDGE(config-if)#ip address 172.17.1.2 255.255.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit
      EDGE(config)#interface #EDGE:EDGE-RLB1#
      EDGE(config-if)#ip address 172.16.1.2 255.255.0.0
      EDGE(config-if)#no shutdown
      EDGE(config-if)#exit

2) PC1,PC3 -> PC2 connectivity test

Use the following command to test connectivity.

      pc1:~#ping 20.0.0.2; ping command is unsuccessful - no GW could be found
      pc3:~#ping 20.0.0.2; ping command is unsuccessful - no GW could be found

3) GLBP settings

Router RLB1

      RLB1(config)#interface #RLB1:RLB1-SW1# ; enter physical internal interface configuration mode
      RLB1(config)#glbp 1 ip 192.168.1.1 ; set virtual GLBP address for group 1
      RLB1(config)#glbp 1 name GROUP1 ; set name for group 1
      RLB1(config)#glbp 1 priority 50 ; configure GLBP priority - higher value means higher priority, RLB1 will be active forwarder for group 1
      RLB1(config)#glbp 1 forwarder preempt ;allow this router to overthrow lower priority forwarders
      RLB1(config)#glbp 1 preempt delay minimum 2 ; set overthrow priority minimum delay for 2 seconds
      RLB1(config)#glbp 1 weighting 240; set weight to 240 - 3 out of 4 requests will be handled by this forwarder, because RLB2 weight is 80
      RLB1(config)#glbp 1 load-balancing weighted; set load balancing algorithm to weighted

Router RLB2

      RLB2(config)#interface #RLB2:RLB2-SW1#
      RLB2(config-if)#glbp 1 ip 192.168.1.1
      RLB2(config-if)#glbp 1 name GROUP1
      RLB2(config-if)#glbp 1 priority 40
      RLB2(config-if)#glbp 1 forwarder preempt
      RLB2(config-if)#glbp 1 preempt delay minimum 2
      RLB2(config-if)#glbp 1 weighting 80
      RLB2(config-if)#glbp 1 load-balancing weighted

Function test:

1) test ping from PC1,PC3 to PC2

      pc1:~#ping 20.0.0.2; ping command is successful - GW could be found as virtual address 192.168.1.1
      pc3:~#ping 20.0.0.2; ping command is successful - GW could be found as virtual address 192.168.1.1

2) Display GLBP information

      RLB1# sh glbp; this router is Active Virtual Forwarder
      RLB1# debug glbp; debug will show GLBP communication between nodes
     
      RLB2# sh glbp; see result, this router is conditional forwarder for group 1

3) Generate traffic to test host-dependent functionality

Repeat following steps several times to generate several new ARP requests.

Weighted load balancing is used when we need to distribute load balancing not equaly between forwarders. We can distribute forwarding in custom percentage.

Test step 1

    
    pc1:~#ifconfig eth0 down; turn the interface off
    pc1:~#ifconfig eth0 hw ether 00:80:48:BA:d1:36; change MAC address
    pc1:~#ifconfig eth0 up; turn the interface on
    pc1:~#ifconfig eth0 |grep HWaddr; apply new MAC address
    pc1:~#route add default gw 192.168.1.1; add route to default GW
    pc1:~#ping 20.0.0.2 -c 2; test connection to outside host
    pc1:~#tracert 20.0.0.2; trace outside host to gather first hop physical interface IP address that handles virtual GW address

Test step 2

    pc1:~#ifconfig eth0 down
    pc1:~#ifconfig eth0 hw ether 00:80:48:BA:d1:37
    pc1:~#ifconfig eth0 up
    pc1:~#ifconfig eth0 |grep HWaddr
    pc1:~#route add default gw 192.168.1.1
    pc1:~#ping 20.0.0.2 -c 2
    pc1:~#tracert 20.0.0.2; note down the physical interface IP address that handles virtual GW address

Test step 3

    pc1:~#ifconfig eth0 down
    pc1:~#ifconfig eth0 hw ether 00:80:48:BA:d1:38
    pc1:~#ifconfig eth0 up
    pc1:~#ifconfig eth0 |grep HWaddr
    pc1:~#route add default gw 192.168.1.1
    pc1:~#ping 20.0.0.2 -c 2
    pc1:~#tracert 20.0.0.2

Repeat test steps: 1,2,3,3,3,2,2 and note down physical IP addresses again.

You can see that for the same MAC address (different forwarders might be used).

Sample result

    00:80:48:BA:d1:36 - 192.168.1.251
    00:80:48:BA:d1:37 - 192.168.1.251
 
    00:80:48:BA:d1:38 - 192.168.1.251
    00:80:48:BA:d1:36 - 192.168.1.252
    00:80:48:BA:d1:37 - 192.168.1.251
    00:80:48:BA:d1:38 - 192.168.1.251
    00:80:48:BA:d1:38 - 192.168.1.251
    00:80:48:BA:d1:38 - 192.168.1.252
    00:80:48:BA:d1:37 - 192.168.1.251
    00:80:48:BA:d1:37 - 192.168.1.251