WEBVTT

1
00:00.000 --> 00:04.880
When we're configuring our spanning tree environment, we are going to want to

2
00:04.880 --> 00:05.320
be very

3
00:05.320 --> 00:09.760
intentional about which of our switches is the root.

4
00:09.760 --> 00:12.160
And keep in mind, this is on a per VLAN basis.

5
00:12.160 --> 00:17.570
So in a Cisco environment, we might choose VLANs 10, 20, and 30 for the root on

6
00:17.570 --> 00:18.440
the left.

7
00:18.440 --> 00:24.690
And then on the right, we might choose this to be the root for 15 and 25 and 35

8
00:24.690 --> 00:25.720
, something

9
00:25.720 --> 00:26.720
along those lines.

10
00:26.720 --> 00:30.020
I say Cisco environment, because at this point, we're still running per VLAN
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

10
00:26.720 --> 00:30.020
I say Cisco environment, because at this point, we're still running per VLAN

11
00:30.020 --> 00:30.440
spanning

12
00:30.440 --> 00:34.240
tree, we have the capability of still doing this with industry standard MST,

13
00:34.240 --> 00:34.960
which we'll

14
00:34.960 --> 00:36.880
talk about later in the course.

15
00:36.880 --> 00:40.660
But for right now, we're running PVST plus, and we want to make sure that we

16
00:40.660 --> 00:41.600
are, again,

17
00:41.600 --> 00:44.080
very intentional about the root configuration.

18
00:44.080 --> 00:49.540
Well, the root configuration is going to require us to configure a root

19
00:49.540 --> 00:52.080
priority on a per VLAN

20
00:52.080 --> 00:53.080
basis.

21
00:53.080 --> 00:56.040
This is going to be very important for us.

22
00:56.040 --> 00:57.960
And so we've got that command that we looked at.

23
00:57.960 --> 01:03.320
We can set the spanning tree priority on a per VLAN basis.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

23
00:57.960 --> 01:03.320
We can set the spanning tree priority on a per VLAN basis.

24
01:03.320 --> 01:08.200
And so I could set this to be, let's say, 4,0, 40, 96.

25
01:08.200 --> 01:14.200
I could set the backup root to be 8K for these VLANs 10, 20, and 30.

26
01:14.200 --> 01:19.040
Meanwhile, it is the root for these VLANs at 4K and the backup root over here

27
01:19.040 --> 01:19.840
at 8K.

28
01:19.840 --> 01:23.590
Those are the kinds of configurations that are very common in the real world,

29
01:23.590 --> 01:23.800
where I've

30
01:23.800 --> 01:28.800
got a priority that makes me the root for certain VLANs and then a priority

31
01:28.800 --> 01:29.440
that makes

32
01:29.440 --> 01:34.360
me the backup root for the other VLANs and vice versa on the other switch.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

32
01:29.440 --> 01:34.360
me the backup root for the other VLANs and vice versa on the other switch.

33
01:34.360 --> 01:38.370
We'll especially see this in a campus environment where we have distribution

34
01:38.370 --> 01:39.360
switches because

35
01:39.360 --> 01:43.540
it's pretty common for us to have a pair of distribution switches like this

36
01:43.540 --> 01:43.720
that go

37
01:43.720 --> 01:46.840
down to our access layer.

38
01:46.840 --> 01:50.720
So it's well and good that I can go out here and I can use my configuration

39
01:50.720 --> 01:51.280
command

40
01:51.280 --> 01:54.800
to set specific priority values.

41
01:54.800 --> 01:59.000
However, Cisco also gives us these macros.

42
01:59.000 --> 02:02.480
And they expect us to understand how these macros work.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

42
01:59.000 --> 02:02.480
And they expect us to understand how these macros work.

43
02:02.480 --> 02:06.410
It's something that shows up in a lot of Cisco materials and for that matter,

44
02:06.410 --> 02:07.080
it's something

45
02:07.080 --> 02:09.920
that we can be using in the real world.

46
02:09.920 --> 02:11.800
Now keep in mind what a macro is.

47
02:11.800 --> 02:18.280
A macro is really not a command so much as background commands.

48
02:18.280 --> 02:25.120
It's going to run commands in the background after we run the macro and these

49
02:25.120 --> 02:26.000
commands

50
02:26.000 --> 02:29.280
go into our configuration.

51
02:29.280 --> 02:32.880
Once I run a macro, I'm never going to see the macro inside of the config.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

51
02:29.280 --> 02:32.880
Once I run a macro, I'm never going to see the macro inside of the config.

52
02:32.880 --> 02:35.440
If I do a show run, the macro won't show up.

53
02:35.440 --> 02:40.890
It's these commands that end up running behind the scenes that get put into our

54
02:40.890 --> 02:42.480
configuration.

55
02:42.480 --> 02:45.640
But these are pretty handy because they do more than just run background

56
02:45.640 --> 02:46.280
commands for

57
02:46.280 --> 02:50.280
us, they also perform an evaluation of the current environment.

58
02:50.280 --> 02:54.280
Specifically, we have two primary macros we're going to talk about.

59
02:54.280 --> 02:58.800
The first one is our root primary macro.

60
02:58.800 --> 03:06.960
Root primary macros intention is to set the switch as the root.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

60
02:58.800 --> 03:06.960
Root primary macros intention is to set the switch as the root.

61
03:06.960 --> 03:09.280
This is what we're trying to accomplish.

62
03:09.280 --> 03:14.800
However, keep in mind that we don't know what priorities are out there right

63
03:14.800 --> 03:15.160
now.

64
03:15.160 --> 03:19.030
There could be a current root that's configured with a priority of 20k or

65
03:19.030 --> 03:19.960
something along

66
03:19.960 --> 03:21.560
those lines.

67
03:21.560 --> 03:24.760
This is why this macro is going to go out.

68
03:24.760 --> 03:30.600
It's going to discover the current root and it's going to figure out what its
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

68
03:24.760 --> 03:30.600
It's going to discover the current root and it's going to figure out what its

69
03:30.600 --> 03:31.440
priority

70
03:31.440 --> 03:35.120
is and that's the important part.

71
03:35.120 --> 03:39.720
Then from there, what it's going to do is it's going to set a priority that

72
03:39.720 --> 03:40.560
makes it

73
03:40.560 --> 03:42.760
the root.

74
03:42.760 --> 03:44.240
This is a little bit of a conversation.

75
03:44.240 --> 03:48.600
What priority is going to be required to set this switch as the root?

76
03:48.600 --> 03:53.070
What's interesting about this is if I have a lower MAC address, then that means

77
03:53.070 --> 03:53.440
all I

78
03:53.440 --> 03:58.000
have to do is to tie the current priority.

79
03:58.000 --> 04:04.850
If the current switch has a value of 12k, then I can just set myself to 12k and
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

79
03:58.000 --> 04:04.850
If the current switch has a value of 12k, then I can just set myself to 12k and

80
04:04.850 --> 04:05.200
I'm

81
04:05.200 --> 04:06.280
good.

82
04:06.280 --> 04:10.830
If I have a higher MAC address, well that means that I would lose the tie

83
04:10.830 --> 04:11.680
breaker.

84
04:11.680 --> 04:21.240
I'm going to go 4000 less than the current root priority.

85
04:21.240 --> 04:24.280
Because of this, the mileage may vary a little bit.

86
04:24.280 --> 04:29.090
I might run this command and it sets it to one value on one switch but a

87
04:29.090 --> 04:30.240
different value
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

87
04:29.090 --> 04:30.240
different value

88
04:30.240 --> 04:31.920
on a different switch.

89
04:31.920 --> 04:35.850
But importantly, notice that in either one of these situations, it's going to

90
04:35.850 --> 04:36.240
go the

91
04:36.240 --> 04:38.040
minimum distance.

92
04:38.040 --> 04:42.970
It's going to go down as few priority slots as needed in order to make us the

93
04:42.970 --> 04:43.960
priority.

94
04:43.960 --> 04:46.560
It's not just going to drop all the way down.

95
04:46.560 --> 04:49.640
It's going to go the minimum amount.

96
04:49.640 --> 04:54.960
The other caveat in this is that it will not pick zero as an option.

97
04:54.960 --> 05:01.440
So if the current root is 4000, 4096, and it has a better MAC address than me,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

97
04:54.960 --> 05:01.440
So if the current root is 4000, 4096, and it has a better MAC address than me,

98
05:01.440 --> 05:01.960
I can't

99
05:01.960 --> 05:03.560
actually become the root.

100
05:03.560 --> 05:05.640
I can go as low as 4000.

101
05:05.640 --> 05:09.530
And at that point, I can't go below the current root because zero isn't an

102
05:09.530 --> 05:10.200
option.

103
05:10.200 --> 05:13.650
It might say, well, it'd be nice if zero is an option except if the current

104
05:13.650 --> 05:14.120
root had

105
05:14.120 --> 05:16.400
a priority of zero, it would have the same problem.

106
05:16.400 --> 05:21.700
So either way, we're going to hit the limit for this command if there are pre-

107
05:21.700 --> 05:22.520
configured

108
05:22.520 --> 05:24.560
priorities out there.

109
05:24.560 --> 05:30.350
Usually, generally speaking, we want to use this command in a default
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

109
05:24.560 --> 05:30.350
Usually, generally speaking, we want to use this command in a default

110
05:30.350 --> 05:31.840
environment.

111
05:31.840 --> 05:36.130
If there are other switches out there that have configured priority values,

112
05:36.130 --> 05:36.960
then again,

113
05:36.960 --> 05:41.100
we've got some things in place to make this work still, but it isn't exactly

114
05:41.100 --> 05:41.920
necessarily

115
05:41.920 --> 05:44.040
going to do what we expect.

116
05:44.040 --> 05:48.220
But it is very important for us to understand what it is that this command is

117
05:48.220 --> 05:50.040
actually doing.

118
05:50.040 --> 05:57.120
Now there is another priority macro that we can use, which is known as root

119
05:57.120 --> 05:58.560
secondary.

120
05:58.560 --> 06:06.170
Root secondary is intended to set the switch, as we might imagine, as a backup
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

120
05:58.560 --> 06:06.170
Root secondary is intended to set the switch, as we might imagine, as a backup

121
06:06.170 --> 06:07.080
root.

122
06:07.080 --> 06:09.680
Now what is a backup root?

123
06:09.680 --> 06:13.840
Well, from a spanning tree perspective, it's a big nothing.

124
06:13.840 --> 06:18.360
I mean, there is no concept of a backup root in spanning tree.

125
06:18.360 --> 06:23.720
But what there is is the idea that if my primary root dies, then the switch

126
06:23.720 --> 06:24.200
with the

127
06:24.200 --> 06:26.880
next highest priority will take over.

128
06:26.880 --> 06:30.550
And so that's what we're trying to configure here, back up to this conversation
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

128
06:26.880 --> 06:30.550
And so that's what we're trying to configure here, back up to this conversation

129
06:30.550 --> 06:30.960
in a real

130
06:30.960 --> 06:35.100
world with distribution switches, we probably want our other distribution

131
06:35.100 --> 06:35.960
switch to take

132
06:35.960 --> 06:36.960
over.

133
06:36.960 --> 06:40.670
And so that's why we said we do 4,000 for one set of VLANs, but I'm going to do

134
06:40.670 --> 06:41.600
8,000

135
06:41.600 --> 06:42.600
for the other set.

136
06:42.600 --> 06:46.690
So if I really look at it from these VLANs perspective, I have a 4,000 for the

137
06:46.690 --> 06:47.280
root, but

138
06:47.280 --> 06:49.760
then the backup root is set for 8,000.

139
06:49.760 --> 06:53.840
And the assumption here is all these other switches are set to the default of

140
06:53.840 --> 06:54.600
32K.

141
06:54.600 --> 06:59.200
So is this switch doing anything for VLANs 10, 20, and 30?

142
06:59.200 --> 07:01.440
And the answer is absolutely not.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

142
06:59.200 --> 07:01.440
And the answer is absolutely not.

143
07:01.440 --> 07:06.160
It's just participating in the topology, just like any other switch would.

144
07:06.160 --> 07:11.940
But if I do lose my root, then this switch will take over as the new primary

145
07:11.940 --> 07:12.920
until that

146
07:12.920 --> 07:14.800
root comes back online.

147
07:14.800 --> 07:19.440
And so always keep that in mind that the root is extremely dynamic in spanning

148
07:19.440 --> 07:20.040
tree.

149
07:20.040 --> 07:23.470
And that can be good when I want to take over as root, but it can also be

150
07:23.470 --> 07:24.240
really bad.

151
07:24.240 --> 07:28.200
And we're going to see later on how we can protect our topology against a new

152
07:28.200 --> 07:28.920
root showing

153
07:28.920 --> 07:29.920
up.

154
07:29.920 --> 07:33.600
And we didn't actually want that root to take over as the root spanning tree
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

154
07:29.920 --> 07:33.600
And we didn't actually want that root to take over as the root spanning tree

155
07:33.600 --> 07:34.360
doesn't natively

156
07:34.360 --> 07:35.920
protect us against that.

157
07:35.920 --> 07:38.800
But Cisco does give us some protection mechanisms.

158
07:38.800 --> 07:42.600
So back to the conversation at hand, I want to be able to configure essentially

159
07:42.600 --> 07:44.000
this concept

160
07:44.000 --> 07:51.090
where the switch I'm on is going to take over as root for the primary when it

161
07:51.090 --> 07:52.520
goes down.

162
07:52.520 --> 07:58.180
So what I want to do is have a value that is better than the default value of

163
07:58.180 --> 07:59.080
32K, but

164
07:59.080 --> 08:01.960
not as good as what's configured with this macro.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

164
07:59.080 --> 08:01.960
not as good as what's configured with this macro.

165
08:01.960 --> 08:04.760
These macros are intended to be used together.

166
08:04.760 --> 08:09.120
Well we mentioned that this macro will go as low as not zero.

167
08:09.120 --> 08:10.840
So as low as 4K.

168
08:10.840 --> 08:14.520
So the range here, let's change colors back to the original blue.

169
08:14.520 --> 08:20.640
So the range for the primary, we know starts at 4K because it can't go lower

170
08:20.640 --> 08:21.920
than that.

171
08:21.920 --> 08:30.530
But it also has a maximum value of 24K, meaning it will not choose 28 and 32 is
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

171
08:21.920 --> 08:30.530
But it also has a maximum value of 24K, meaning it will not choose 28 and 32 is

172
08:30.530 --> 08:31.960
the default.

173
08:31.960 --> 08:34.040
So we wouldn't want to choose that either.

174
08:34.040 --> 08:36.800
Well that leaves that value right in the middle.

175
08:36.800 --> 08:46.360
So the secondary is going to simply set the priority to 28K.

176
08:46.360 --> 08:51.440
Now notice this isn't a particularly sophisticated macro.

177
08:51.440 --> 08:55.960
We just said that the primary macros can go out and perform this discovery.

178
08:55.960 --> 08:58.560
The secondary macro doesn't do that at all.

179
08:58.560 --> 09:03.190
It truly is just intended to work with the root primary in a default
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

179
08:58.560 --> 09:03.190
It truly is just intended to work with the root primary in a default

180
09:03.190 --> 09:04.400
environment.

181
09:04.400 --> 09:07.840
In a default environment, all of the switches are 32K.

182
09:07.840 --> 09:13.140
The primary is going to be somewhere in this range and therefore 28K is exactly

183
09:13.140 --> 09:13.280
what I

184
09:13.280 --> 09:17.920
would need in order to set myself up to be the backup root.

185
09:17.920 --> 09:19.240
So that's all we're doing.

186
09:19.240 --> 09:21.400
We're setting it at 28K.

187
09:21.400 --> 09:27.280
And even if this command doesn't make me the secondary, we don't really have a

188
09:27.280 --> 09:27.960
great way

189
09:27.960 --> 09:28.960
of knowing that.

190
09:28.960 --> 09:32.080
I mean keep in mind this might be a very large network.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

190
09:28.960 --> 09:32.080
I mean keep in mind this might be a very large network.

191
09:32.080 --> 09:35.680
And so I might get onto this switch and tell it, "Hey, you're the secondary."

192
09:35.680 --> 09:38.880
The primary is up here at let's say 24K.

193
09:38.880 --> 09:44.200
And I have no idea that this switch over here is also at 24K just with a worse

194
09:44.200 --> 09:45.320
MAC address.

195
09:45.320 --> 09:50.230
I have no way of knowing that because the BPDUs are flowing downstream this way

196
09:50.230 --> 09:50.560
.

197
09:50.560 --> 09:54.920
I would never have any idea that that switch is out there.

198
09:54.920 --> 09:56.400
Now this scenario, the primary goes down.

199
09:56.400 --> 09:58.440
My network is split in half.

200
09:58.440 --> 10:03.200
But the point is simply I don't see the BPDUs from all of the other switches.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

200
09:58.440 --> 10:03.200
But the point is simply I don't see the BPDUs from all of the other switches.

201
10:03.200 --> 10:07.670
I can only see what the root is, which is why I can perform this discovery for

202
10:07.670 --> 10:08.400
the current

203
10:08.400 --> 10:09.400
root.

204
10:09.400 --> 10:13.600
For the secondary, I'm just going to have to trust that this value will work.

205
10:13.600 --> 10:17.890
And I'm not going to know for sure just by entering the macro that this did

206
10:17.890 --> 10:18.640
indeed make

207
10:18.640 --> 10:21.640
me the secondary root.

208
10:21.640 --> 10:25.760
Now let's just take one quick moment and talk about the real world.

209
10:25.760 --> 10:30.680
In the real world, we typically don't use these macros a whole lot.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

209
10:25.760 --> 10:30.680
In the real world, we typically don't use these macros a whole lot.

210
10:30.680 --> 10:36.940
They are convenient, sure, but for the most part we want to be very intentional

211
10:36.940 --> 10:37.200
with how

212
10:37.200 --> 10:39.880
we're configuring our environment.

213
10:39.880 --> 10:46.140
And I will say that in my configurations, designs, everything I've ever done, I

214
10:46.140 --> 10:46.360
like

215
10:46.360 --> 10:51.600
to use something like 4K for the primary root, 8K for the backup root.

216
10:51.600 --> 10:54.360
And the macros don't really tie very well into this.

217
10:54.360 --> 10:58.160
But this is the best way to protect ourselves from other switches getting

218
10:58.160 --> 10:59.040
plugged in that

219
10:59.040 --> 11:00.880
maybe have lower priority values.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

219
10:59.040 --> 11:00.880
maybe have lower priority values.

220
11:00.880 --> 11:05.820
I wouldn't necessarily want to rely on 24K and 32K when somebody could plug a

221
11:05.820 --> 11:06.280
switch

222
11:06.280 --> 11:09.840
into the network that is configured for 4K.

223
11:09.840 --> 11:13.120
And so we don't want to have to worry about that.

224
11:13.120 --> 11:16.530
We just want to stick with something that's very intentional, that protects as

225
11:16.530 --> 11:16.920
well as

226
11:16.920 --> 11:18.560
we can.

227
11:18.560 --> 11:21.360
And for the most part, the macros aren't going to provide that.

228
11:21.360 --> 11:25.940
But that said, they are absolutely within the scope of this exam, within the

229
11:25.940 --> 11:26.640
scope of

230
11:26.640 --> 11:29.120
the blueprint and within the scope of this course.

231
11:29.120 --> 11:32.750
So we want to make sure we understand how these macros actually work under the
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

231
11:29.120 --> 11:32.750
So we want to make sure we understand how these macros actually work under the

232
11:32.750 --> 11:33.160
hood,

233
11:33.160 --> 11:35.560
what values they could possibly assign.

234
11:35.560 --> 11:38.880
And hey, playing around with it in the lab is a really good way to make sure

235
11:38.880 --> 11:39.280
that we

236
11:39.280 --> 11:42.280
cement that knowledge.
