First I would like to draw the line in the sand between VRF, and VRF-Lite.

  • VRF was created mainly for MPLS VPNs using BGP, so it is beyond the scope of the CCNP R/S, however Lite version uses the same theory and commands (mostly)
  • VRF-Lite is for smaller scale deployment, but uses the same theory and functionality as full scale VRF, without the higher level deployment configurations

That being said, VRF is used to separate networks from the “global” routing table, and put those networks in their own VRF instances perhaps for security, or to allow multiple overlapping networks to be routed on the same router because of the separation VRF provides.

So essentially, your setting up virtual routing tables for networks you don’t want on the global routing table (“sh ip route”).

I am going to dive into configuration, and explain as I go here, and the first step in this type of Topology (for me) begins on the switch and setting up VLAN’s and a Trunk. This is where I ran into my first derp moment:

SW1(config-if)#switchport mode trunk
Command rejected: An interface whose trunk encapsulation is “Auto” can not be configured to “trunk” mode.

I thought I remembered that being the beginning command, then defining the negotiation, encapsulation, etc. But I’ll play ball:

SW1(config-if)#switchport trunk encap dot1q
SW1(config-if)#switchport mode trunk

There it is, and for the rest of the ports:

SW1(config)#int fa0/2
SW1(config-if)#switchport mode access
SW1(config-if)#switchport access vlan 2
SW1(config-if)#int fa0/3
SW1(config-if)#switchport mode access
SW1(config-if)#switchport access vlan 3
SW1(config-if)#int fa0/4
SW1(config-if)#switchport mode access
SW1(config-if)#switchport access vlan 4
% Access VLAN does not exist. Creating vlan 4
00:58:43: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan4, changed state to up

I manually added vlan’s to interfaces fa0/2 and fa0/3 by going into the interface and simply typing “vlan 2” and “vlan 3”, but I figured I should probably do it the proper way, which shows at the end there that if you configure a switch interface for a vlan that doesn’t yet exist it will create it – Old school CCNA flash back!

Now onto the routers, R2 / R3 / R4 will have their network addresses assigned to their fa0/0 interfaces with the IP address ending in the router number, whilst on R1 it will not have an IP address on its interface but rather its sub-interfaces:

R1(config)#int fa0/0
R1(config-if)#no shut
R1(config-if)#int fa0/0.2
R1(config-subif)#encap dot1q 2
R1(config-subif)#ip add
R1(config-subif)#int fa0/0.3
R1(config-subif)#encap dot1q 3
R1(config-subif)#ip add
R1(config-subif)#int fa0/0.4
R1(config-subif)#encap dot1q 4
R1(config-subif)#ip add

For those of you who remember Router on a Stick, this probably looks very familiar.

This is right where I would start configuring my lab, but I am a bit fried from work, so as not to rush through it I am going to leave this as the initial lab setup and save the VRF-Lite configuration for the next post. (That and I am stalling moving onto IPv6, hisssss)

I am going to wr mem on all routers and my switch, and next post, I will fully lab vrf-lite so I can move onto the bane of my Cisco life, IPv6 šŸ™‚