Skip to content

Commit 4989d85

Browse files
committed
Layer-2 fabric example
1 parent b6fa7be commit 4989d85

File tree

6 files changed

+104
-2
lines changed

6 files changed

+104
-2
lines changed

VLAN/l2-fabric/README.md

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Layer-2 Fabric
2+
3+
This directory contains *netlab* topology file for a leaf-and-spine layer-2 fabric.
4+
5+
![Lab topology](topology.png)
6+
7+
After starting the lab, h1 and h2 should be able to ping each other.
8+
9+
## Changing Device Types
10+
11+
This topology can be used with all network devices supporting VLAN configuration module and all virtualization providers supported by *netlab*:
12+
13+
* To change the switch device type, use `-d <device>` CLI argument
14+
* To change the virtualization provider, use `-p` CLI argument.
15+
16+
For example, to start the lab with Cisco IOSv devices, use:
17+
18+
```
19+
netlab up -p libvirt -d iosv
20+
```

VLAN/l2-fabric/graph.dot

+47
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
graph {
2+
bgcolor="transparent"
3+
node [shape=box, style="rounded,filled" fontname=Verdana]
4+
edge [fontname=Verdana labelfontsize=10 labeldistance=1.5]
5+
"l1" [
6+
label=<l1 [eos]<br /><sub>10.0.0.1/32</sub>>
7+
fillcolor="#ff9f01"
8+
]
9+
"l2" [
10+
label=<l2 [eos]<br /><sub>10.0.0.2/32</sub>>
11+
fillcolor="#ff9f01"
12+
]
13+
"s1" [
14+
label=<s1 [eos]<br /><sub>10.0.0.3/32</sub>>
15+
fillcolor="#ff9f01"
16+
]
17+
"s2" [
18+
label=<s2 [eos]<br /><sub>10.0.0.4/32</sub>>
19+
fillcolor="#ff9f01"
20+
]
21+
"h1" [
22+
label=<h1 [linux]<br /><sub>172.16.0.5/24</sub>>
23+
fillcolor="#ff9f01"
24+
]
25+
"h2" [
26+
label=<h2 [linux]<br /><sub>172.16.0.6/24</sub>>
27+
fillcolor="#ff9f01"
28+
]
29+
"l2-fabric_1" [style=filled fillcolor="#d1bfab" fontsize=11 label="172.16.0.0/24"]
30+
"l1" -- "l2-fabric_1" [ ]
31+
"s1" -- "l2-fabric_1" [ ]
32+
"l2-fabric_2" [style=filled fillcolor="#d1bfab" fontsize=11 label="172.16.0.0/24"]
33+
"l2" -- "l2-fabric_2" [ ]
34+
"s1" -- "l2-fabric_2" [ ]
35+
"l2-fabric_3" [style=filled fillcolor="#d1bfab" fontsize=11 label="172.16.0.0/24"]
36+
"l1" -- "l2-fabric_3" [ ]
37+
"s2" -- "l2-fabric_3" [ ]
38+
"l2-fabric_4" [style=filled fillcolor="#d1bfab" fontsize=11 label="172.16.0.0/24"]
39+
"l2" -- "l2-fabric_4" [ ]
40+
"s2" -- "l2-fabric_4" [ ]
41+
"l2-fabric_5" [style=filled fillcolor="#d1bfab" fontsize=11 label="172.16.0.0/24"]
42+
"l1" -- "l2-fabric_5" [ ]
43+
"h1" -- "l2-fabric_5" [ ]
44+
"l2-fabric_6" [style=filled fillcolor="#d1bfab" fontsize=11 label="172.16.0.0/24"]
45+
"l2" -- "l2-fabric_6" [ ]
46+
"h2" -- "l2-fabric_6" [ ]
47+
}

VLAN/l2-fabric/topology.png

15.3 KB
Loading

VLAN/l2-fabric/topology.yml

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
provider: clab
2+
defaults.device: eos
3+
4+
nodes: [ l1, l2, s1, s2, h1, h2 ]
5+
module: [ vlan ]
6+
7+
groups:
8+
hosts:
9+
members: [ h1, h2 ]
10+
device: linux
11+
12+
vlans:
13+
fabric:
14+
id: 100
15+
mode: bridge
16+
17+
links:
18+
- l1:
19+
s1:
20+
vlan.access: fabric
21+
- l2:
22+
s1:
23+
vlan.access: fabric
24+
- l1:
25+
s2:
26+
vlan.access: fabric
27+
- l2:
28+
s2:
29+
vlan.access: fabric
30+
- l1:
31+
h1:
32+
vlan.access: fabric
33+
- l2:
34+
h2:
35+
vlan.access: fabric

VLAN/vlan-trunk/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# VLAN Trunk
22

3-
This directory contains *netlab* topology file for a simple VLAN trunk scenario with a two VLANs stretched across two switches.
3+
This directory contains *netlab* topology file for a simple VLAN trunk scenario with a two VLANs stretched across two switches. Both switches are running IRB on both VLANs.
44

55
![VLAN trunk topology](vlan-trunk.png)
66

tools

Submodule tools updated from a55a60d to 719f764

0 commit comments

Comments
 (0)