Challenge Accepted!!!
I saw this topology scribbled on a piece of paper on LinkedIn with the caption "Try to Do it .." (https://www.linkedin.com/feed/update/urn:li:activity:6381105397989728256). Challenge Accepted! It actually wasn't a challenge at all. I knew the steps that needed to be completed to get the job done, frankly it just looked fun!After completing the configuration I started having visions of all the other things we could do with this topology. Maybe this will become a series... I don't know... you decide.
The Proof:
There are lots of ways to bang this out quickly and sloppily, I tried to make it clear enough that I could understand what I did the next day.
Planning:
My advice is make your self a check list:
- Define the VLANs needed to support the topology
- a: Each router has 1 physical connection but requires many logical connections; this will require trunking on all ports connecting to routers
- Easy to understand IP schema and VLANs schema
- Protocols: BGP
- a: Define 2 Autonomous-Systems
- iBGP does NOT need "next-hop-self" because it is full-mesh
Let's break the drawing up into 2 large parts: the left side and the right side.
VLANS:
Starting with the left side:
For every router to router connection we will define a VLAN. This VLAN number will be a composite of the Router numbers, starting with the lowest. If we take a look at R1 we see it needs connections to:
R1:
- R1 -> R2 = VLAN 12
- R1 -> R3 = VLAN 13
- R1 -> R4 = VLAN 14
- R1 -> R6 = VLAN 16
Then move to R2, but remember you already have a connection to R1 so you don't need to create another vlan for that.
R2:
- R2 -> R1 = *** We already have this VLAN 12 ****
- R2 -> R3 = VLAN 23
- R2 -> R4 = VLAN 24
- R2 -> R5 = VLAN 25
Router 3 will require even fewer VLANs because we already have VLANs defined for some of it's connections. We only need to define the Last VLAN:
R3:
- R3 -> R1 = *** We already have this VLAN 13 ***
- R3 -> R2 = *** We already have this VLAN 23 ***
- R3 -> R4 = VLAN 34
Router 4 will NOT require any additional VLAN to support connectivity as all of its connections have already been defined.
R4:
- R4 -> R1 = *** We already have this VLAN 14 ***
- R4 -> R2 = *** We already have this VLAN 24 ***
- R4 -> R3 = *** We already have this VLAN 34 ***
VLANs for the right side:
Again, I'll start with the lowest number Router on this side which is R5:
R5:
- R5 -> R2 = *** We already have this VLAN 25 ***
- R5 -> R6 = VLAN 56
- R5 -> R7 = VLAN 57
- R5 -> R8 = VLAN 58
R6:
- R6 -> R1 = *** We already have this VLAN 16 ***
- R6 -> R5 = *** We already have this VLAN 56 ***
- R6 -> R7 = VLAN 67
- R6 -> R8 = VLAN 68
R7:
- R7 -> R5 = *** We already have this VLAN 57 ***
- R7 -> R6 = *** We already have this VLAN 67 ***
- R7 -> R8 = VLAN 78
R8:
- R8 -> R5 = *** We already have this VLAN 58 ***
- R8 -> R6 = *** We already have this VLAN 68 ***
- R8 -> R7 = *** We already have this VLAN 78 ***
The above list's double as a trunking check-list per router.
IP Addressing:
All links in the drawing are direct connections between 2 routers. They will all follow the schema:
10.1.(VLAN #).(R#) / 24
Starting with R1...
R1:
- R1 -> R2 = 10.1.12.1/24 (R2: 10.1.12.2/24)
- R1 -> R3 = 10.1.13.1/24 (R3: 10.1.13.3/24)
- R1 -> R4 = 10.1.14.1/24 (R4: 10.1.14.4/24)
- R1 -> R6 = 10.1.16.1/24 (R6: 10.1.16.6/24)
Continue this for all the remain link's and routers... Remember you do not need to define another subnet for 2 routers that are already connect from a previous step.
Start the configuration:
I'm going to start with the switch, using the bulletted list from above as a check-list and my EVE-NG topology for reference we can begin to configure the switchports.
The Switch:
vtp mode transparent vlan 1-100 exit int gi0/0 description "to R1" switchport trunk encapsulation dot1q switchport mode trunk switchport trunk allowed vlan 12-14,16 no shut int gi0/1 description "to R2" switchport trunk encapsulation dot1q switchport mode trunk switchport trunk allowed vlan 12,23-25 no shut int gi0/2 description "to R3" switchport trunk encapsulation dot1q switchport mode trunk switchport trunk allowed vlan 13,23,34 no shut int gi0/3 description "to R4" switchport trunk encapsulation dot1q switchport mode trunk switchport trunk allowed vlan 14,24,34 no shut int gi1/0 description "to R5" switchport trunk encapsulation dot1q switchport mode trunk switchport trunk allowed vlan 25,56-58 no shut int gi1/1 description "to R6" switchport trunk encapsulation dot1q switchport mode trunk switchport trunk allowed vlan 16,56,67,68 no shut int gi1/2 description "to R7" switchport trunk encapsulation dot1q switchport mode trunk switchport trunk allowed vlan 57,67,78 no shut int gi1/3 description "to R8" switchport trunk encapsulation dot1q switchport mode trunk switchport trunk allowed vlan 58,68,78 no shut |
The Routers:
hostname R1 int gi0/0 description "to SW1;gi0/0" no shut int gi0/0.12 encapsulation dot1q 12 description "to R2" ip add 10.1.12.1 255.255.255.0 int gi0/0.13 encapsulation dot1q 13 description "to R3" ip add 10.1.13.1 255.255.255.0 int gi0/0.14 encapsulation dot1q 14 description "to R4" ip add 10.1.14.1 255.255.255.0 int gi0/0.16 encapsulation dot1q 16 description "to R6" ip add 10.1.16.1 255.255.255.0 ================================================= hostname R2 int gi0/0 description "to SW1;gi0/1" no shut int gi0/0.12 encapsulation dot1q 12 description "to R1" ip add 10.1.12.2 255.255.255.0 int gi0/0.23 encapsulation dot1q 23 description "to R3" ip add 10.1.23.2 255.255.255.0 int gi0/0.24 encapsulation dot1q 24 description "to R4" ip add 10.1.24.2 255.255.255.0 int gi0/0.25 encapsulation dot1q 25 description "to R5" ip add 10.1.25.2 255.255.255.0 ================================================= hostname R3 int gi0/0 description "to SW1;gi0/2" no shut int gi0/0.13 encapsulation dot1q 13 description "to R1" ip add 10.1.13.3 255.255.255.0 int gi0/0.23 encapsulation dot1q 23 description "to R2" ip add 10.1.23.3 255.255.255.0 int gi0/0.34 encapsulation dot1q 34 description "to R4" ip add 10.1.34.3 255.255.255.0 ================================================= hostname R4 int gi0/0 description "to SW1;gi0/3" no shut int gi0/0.14 encapsulation dot1q 14 description "to R1" ip add 10.1.14.4 255.255.255.0 int gi0/0.24 encapsulation dot1q 24 description "to R2" ip add 10.1.24.4 255.255.255.0 int gi0/0.34 encapsulation dot1q 34 description "to R4" ip add 10.1.34.4 255.255.255.0 ================================================= hostname R5 int gi0/0 description "to SW1;gi1/0" no shut int gi0/0.25 encapsulation dot1q 25 description "to R2" ip add 10.1.25.5 255.255.255.0 int gi0/0.56 encapsulation dot1q 56 description "to R6" ip add 10.1.56.5 255.255.255.0 int gi0/0.57 encapsulation dot1q 57 description "to R7" ip add 10.1.57.5 255.255.255.0 int gi0/0.58 encapsulation dot1q 58 description "to R8" ip add 10.1.58.5 255.255.255.0 ================================================= hostname R6 int gi0/0 description "to SW1;gi1/1" no shut int gi0/0.16 encapsulation dot1q 16 description "to R1" ip add 10.1.16.6 255.255.255.0 int gi0/0.56 encapsulation dot1q 56 description "to R6" ip add 10.1.56.6 255.255.255.0 int gi0/0.67 encapsulation dot1q 67 description "to R7" ip add 10.1.67.6 255.255.255.0 int gi0/0.68 encapsulation dot1q 68 description "to R8" ip add 10.1.68.6 255.255.255.0 ================================================= hostname R7 int gi0/0 description "to SW1;gi1/2" no shut int gi0/0.57 encapsulation dot1q 57 description "to R5" ip add 10.1.57.7 255.255.255.0 int gi0/0.67 encapsulation dot1q 67 description "to R6" ip add 10.1.67.7 255.255.255.0 int gi0/0.78 encapsulation dot1q 78 description "to R8" ip add 10.1.78.7 255.255.255.0 ================================================= hostname R8 int gi0/0 description "to SW1;gi1/3" no shut int gi0/0.58 encapsulation dot1q 58 description "to R5" ip add 10.1.58.8 255.255.255.0 int gi0/0.68 encapsulation dot1q 68 description "to R6" ip add 10.1.68.8 255.255.255.0 int gi0/0.78 encapsulation dot1q 78 description "to R7" ip add 10.1.78.8 255.255.255.0 ================================================= BGP:R1 router bgp 1234 bgp router-id 1.1.1.1 redistribute connected neighbor 10.1.12.2 remote-as 1234 neighbor 10.1.13.3 remote-as 1234 neighbor 10.1.14.4 remote-as 1234 neighbor 10.1.16.6 remote-as 5678 ============================= BGP:R2 router bgp 1234 bgp router-id 2.2.2.2 redistribute connected neighbor 10.1.12.1 remote-as 1234 neighbor 10.1.23.3 remote-as 1234 neighbor 10.1.24.4 remote-as 1234 neighbor 10.1.25.5 remote-as 5678 ============================= BGP:R3 router bgp 1234 bgp router-id 3.3.3.3 redistribute connected neighbor 10.1.13.1 remote-as 1234 neighbor 10.1.23.2 remote-as 1234 neighbor 10.1.34.4 remote-as 1234 ============================= BGP:R4 router bgp 1234 bgp router-id 4.4.4.4 redistribute connected neighbor 10.1.14.1 remote-as 1234 neighbor 10.1.24.2 remote-as 1234 neighbor 10.1.34.3 remote-as 1234 ============================= BGP:R5 router bgp 5678 bgp router-id 5.5.5.5 redistribute connected neighbor 10.1.56.6 remote-as 5678 neighbor 10.1.57.7 remote-as 5678 neighbor 10.1.58.8 remote-as 5678 neighbor 10.1.25.2 remote-as 1234 ============================= BGP:R6 router bgp 5678 bgp router-id 6.6.6.6 redistribute connected neighbor 10.1.56.5 remote-as 5678 neighbor 10.1.67.7 remote-as 5678 neighbor 10.1.68.8 remote-as 5678 neighbor 10.1.16.1 remote-as 1234 ============================= BGP:R7 router bgp 5678 bgp router-id 7.7.7.7 redistribute connected neighbor 10.1.57.5 remote-as 5678 neighbor 10.1.67.6 remote-as 5678 neighbor 10.1.78.8 remote-as 5678 ============================= BGP:R8 router bgp 5678 bgp router-id 8.8.8.8 redistribute connected neighbor 10.1.58.5 remote-as 5678 neighbor 10.1.68.6 remote-as 5678 neighbor 10.1.78.7 remote-as 5678 ============================= |
Well done, Tony. I was able to follow it. There is tiny typo in the R2's an interface int gi0/0.12 description needs to say "to R1". All good.
ReplyDeleteThanks Ram, for pointing the out. I've fixed the error. Thanks for the feedback and keep labbing!
ReplyDelete