Skip to content

Commit bf2efbe

Browse files
committed
One-arm hub-and-spoke VPN with MPLS/VPN
1 parent 9069ade commit bf2efbe

File tree

3 files changed

+60
-0
lines changed

3 files changed

+60
-0
lines changed

MPLS/hub-spoke-one-arm/README.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# One-Arm Hub-and-Spoke VPN with MPLS/VPN
2+
3+
This directory contains the lab topology used in the [One-Arm Hub-and-Spoke VPN with MPLS/VPN](https://blog.ipspace.net/2024/09/hub-spoke-one-arm/) blog post.
4+
5+
![Lab topology](topology.png)

MPLS/hub-spoke-one-arm/topology.png

97.2 KB
Loading

MPLS/hub-spoke-one-arm/topology.yml

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
message: |
2+
The lab contains three MPLS/VPN PE-devices with three CE-routers attached to them.
3+
The PE-devices implement a one-arm hub-and-spoke VRF: the hub VRF receives all the
4+
CE-routes (for hub-to-spoke forwarding) and a default route (for spoke-to-hub
5+
forwarding)
6+
7+
defaults.device: iosv
8+
9+
module: [ bgp ]
10+
plugin: [ bgp.session ]
11+
12+
groups:
13+
ce:
14+
device: frr
15+
provider: clab
16+
members: [ ce_s1, ce_s2, ce_hub ]
17+
pe:
18+
members: [ pe_a, pe_b, pe_h ]
19+
module: [ ospf, bgp, vrf, mpls ]
20+
bgp.as: 65000
21+
mpls.vpn: True
22+
23+
mpls.ldp: True
24+
25+
vrfs:
26+
s_1:
27+
links: [ pe_a-ce_s1 ]
28+
export: [ 65000:100 ]
29+
import: [ 65000:101 ]
30+
s_2:
31+
links: [ pe_b-ce_s2 ]
32+
export: [ 65000:100 ]
33+
import: [ 65000:101 ]
34+
hub:
35+
import: [ 65000:100 ]
36+
export: [ 65000:101 ]
37+
links:
38+
- pe_h:
39+
ce_hub:
40+
bgp.default_originate: True
41+
42+
nodes:
43+
pe_a:
44+
pe_b:
45+
pe_h:
46+
p:
47+
module: [ mpls, ospf ]
48+
ce_hub:
49+
bgp.as: 65100
50+
ce_s1:
51+
bgp.as: 65101
52+
ce_s2:
53+
bgp.as: 65102
54+
55+
links: [ pe_a-p, pe_b-p, pe_h-p ]

0 commit comments

Comments
 (0)