blob: eeba5d0d4c6b030a394243750e3faba80f796df9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
{# Query parameters: ?switch=e1-1 #}
{% set switch_name = options["switch"] %}
{% import "vars.conf" as v with context %}
{% include "global.conf" %}
{% include "distro-common.conf" %}
protocols {
rstp {
bridge-priority 4k;
}
}
interfaces {
et-0/0/48 {
description "G: r1.tele (ae0)";
ether-options {
802.3ad ae0;
}
}
et-1/0/48 {
description "G: r1.tele (ae0)";
ether-options {
802.3ad ae0;
}
}
ae0 {
description "B: r1.tele ae10";
aggregated-ether-options {
lacp {
active;
}
}
unit 0 {
family ethernet-switching {
interface-mode trunk;
vlan {
members [ distro-mgmt edge-mgmt aps-mgmt ssid-the-gathering {% for distro_name, linkmap in v.tree.items() if 'floor' in distro_name %}{% for port, network_name in linkmap.items() %} {{ network_name }}{% endfor %}{% endfor %}];
}
}
}
}
{% for distroname, distro in v.distrodata.items() if 'floor' in distroname %}
{{ distro.remote_phy1 }} {
description "G: {{ distroname }} {{ distro.if1 }} ({{ distro.remote_ae }})";
ether-options {
802.3ad {{ distro.remote_ae }};
}
}
{{ distro.remote_phy2 }} {
description "G: {{ distroname }} {{ distro.if2 }} ({{ distro.remote_ae }})";
ether-options {
802.3ad {{ distro.remote_ae }};
}
}
{{ distro.remote_ae }} {
description "B: {{ distroname }} ae0";
aggregated-ether-options {
lacp {
active;
}
}
unit 0 {
family ethernet-switching {
interface-mode trunk;
vlan {
{% if v.tree[distroname] %}
members [ distro-mgmt edge-mgmt aps-mgmt ssid-the-gathering {% for port, network_name in v.tree[distroname].items() %}{{ network_name }} {% endfor %}];
{% else %}
members [ distro-mgmt edge-mgmt aps-mgmt ssid-the-gathering ];
{% endif %}
}
}
}
}
{% endfor %}
}
vlans {
{% for distro_name, linkmap in v.tree.items() if 'floor' in distro_name %}
{% for port, network_name in linkmap.items() %}
{{ network_name }} {
vlan-id {{ v.distro_networks[network_name].vlan }};
}
{% endfor %}
{% endfor %}
distro-mgmt {
vlan-id 667;
l3-interface irb.667;
}
edge-mgmt {
vlan-id 666;
}
aps-mgmt {
vlan-id 777;
}
ssid-the-gathering {
vlan-id 778;
}
}
virtual-chassis {
preprovisioned;
no-split-detection;
member 0 {
role routing-engine;
serial-number <removed>;
}
member 1 {
role routing-engine;
serial-number <removed>;
}
}
|