WEBVTT

00:00:00.000 --> 00:00:03.700
Welcome back to CSE 316 — Data Communication and Networking.

00:00:03.750 --> 00:00:12.700
This is the detailed video version of Session nineteen, and it is where the addressing arc changes character completely.

00:00:13.380 --> 00:00:22.330
For the last three weeks you have been rationing. Masks, blocks, subnetting, variable-length subnetting, aggregation — every one of those techniques exists because there were not enough IPv4 addresses to go round.

00:00:27.220 --> 00:00:36.170
Today the shortage ends. The address becomes a hundred and twenty-eight bits, and the number of addresses becomes three hundred and forty undecillion — a number with no everyday name at all.

00:00:38.520 --> 00:00:47.470
Two jobs in this session. First, make a hundred and twenty-eight bit addresses feel handleable: there are exactly two abbreviation rules, and we will drill them until they are mechanical.

00:00:49.920 --> 00:00:58.870
And second, the more interesting job — work out why the designers asked for that many bits in the first place. It was not to count devices.

00:01:01.533 --> 00:01:06.243
The question this session asks, and it comes in two halves.

00:01:06.293 --> 00:01:15.143
IPv4 has four point three billion addresses. IPv6 has three hundred and forty undecillion — a number with thirty-nine digits and no everyday name.

00:01:15.193 --> 00:01:22.923
Why did the designers ask for THAT many? Nobody is planning to plug in ten-to-the-thirty-eight toasters.

00:01:22.973 --> 00:01:31.923
And the second question is stranger. This protocol shipped before most of you were born. Why is the world STILL not done switching to it?

00:01:31.983 --> 00:01:36.863
Half one gets answered today: the extra bits buy structure, not capacity.

00:01:36.913 --> 00:01:45.863
If "never run out" were the goal, eighty bits was already absurd overkill. So the real question is not how many — it is what the extra forty-eight bits are FOR.

00:01:48.873 --> 00:01:53.453
Half two is next session's, and the short answer is a word from today: NAT.

00:01:53.503 --> 00:02:02.453
Session seventeen's coping mechanism removed most of the pressure to switch, and Session twenty works through exactly how.

00:02:05.033 --> 00:02:08.153
Section one. Why a hundred and twenty-eight bits.

00:02:08.203 --> 00:02:17.153
Weeks nine to sixteen were one long fight against a single number: two to the thirty-two, four billion two hundred and ninety-four million and change.

00:02:18.063 --> 00:02:26.650
And everything you learned in that fight — every technique, every drill — was rationing.

00:02:26.700 --> 00:02:32.920
Four rows, and this is three weeks of your own course compressed onto one slide.

00:02:32.970 --> 00:02:41.920
Session nine: there are more people alive than there are IPv4 addresses, and classful allocation had burned most of the space by the mid-nineties.

00:02:43.680 --> 00:02:52.630
Sessions ten to sixteen: classless addressing rationed what was left. Masks, block arithmetic, subnetting, variable-length subnetting, aggregation.

00:02:53.280 --> 00:03:02.230
Skilled work, examinable work, genuinely clever work. But rationing is what you do when there is not enough.

00:03:02.760 --> 00:03:11.710
And Session seventeen gave us the greatest coping mechanism of all: NAT. A whole building hiding behind one public address, and it bought IPv4 twenty extra years.

00:03:14.740 --> 00:03:22.740
File that word away. It comes back next session, and it comes back as the villain.

00:03:22.790 --> 00:03:30.310
IPv6 stops coping. The address becomes a hundred and twenty-eight bits — sixteen bytes, four times the length of an IPv4 address.

00:03:30.360 --> 00:03:38.583
No cleverness. No workaround. Just more bits, which is the honest fix.

00:03:38.633 --> 00:03:43.033
Three rows, and the first one is just the number.

00:03:43.083 --> 00:03:46.873
There it is written out. Thirty-nine digits.

00:03:46.923 --> 00:03:55.873
Three hundred and forty undecillion, two hundred and eighty-two — and I will stop there. Call it three point four times ten to the thirty-eight.

00:03:56.083 --> 00:04:04.903
That is two to the ninety-sixth times the whole of the IPv4 Internet. Not ninety-six times. Two to the ninety-sixth times.

00:04:04.953 --> 00:04:13.903
And about six point seven times ten to the twenty-three addresses for every square metre of this planet's surface, oceans included.

00:04:14.323 --> 00:04:16.403
Now the row that actually matters.

00:04:16.453 --> 00:04:24.063
Eighty bits would already have given every human being alive roughly ten-to-the-fourteen addresses each. Depletion was over at eighty bits.

00:04:24.113 --> 00:04:33.063
They took a hundred and twenty-eight. So the real question is not how many — it is what the extra bits BUY, and slide thirty-two answers it: sixty-four bits per LAN, sixteen of subnets, forty-eight of routing prefix.

00:04:42.394 --> 00:04:48.194
Five comparisons, ten seconds each, and they all say the same thing.

00:04:48.244 --> 00:04:55.044
Grains of sand on Earth: roughly seven point five times ten to the eighteen, by the usual estimate.

00:04:55.094 --> 00:05:04.044
So each grain gets about four point five times ten to the nineteen addresses. My hook line said "a trillion each" — I was underselling it by seven orders of magnitude.

00:05:06.734 --> 00:05:15.284
If the goal were merely never to run out: two to the eighty is already about one point two times ten to the twenty-four addresses.

00:05:15.334 --> 00:05:23.724
That is roughly ten-to-the-fourteen each for eight billion people. Eighty bits ended the shortage entirely, on its own.

00:05:23.774 --> 00:05:30.234
IPv4 gave the world two to the thirty-two — four billion, before the reserved blocks come out.

00:05:30.284 --> 00:05:39.234
IPv6 gives two to the one hundred and twenty-eight, so the ratio is two to the ninety-sixth, about seven point nine times ten to the twenty-eight. The old Internet fits inside the new one ten-to-the-twenty-eight times over.

00:05:45.644 --> 00:05:52.034
The address itself only grew four times in length — thirty-two bits to a hundred and twenty-eight.

00:05:52.084 --> 00:06:01.034
But the space grew by two to the ninety-sixth, because every single extra bit doubles it. Four times the writing, unimaginably more room.

00:06:02.084 --> 00:06:07.714
Which brings us back to the point. "We will never run out" was already solved at eighty bits.

00:06:07.764 --> 00:06:16.714
The extra forty-eight are spent deliberately on structure — on making addressing simple. That is the answer slide thirty-two states in full, and the evidence for it starts here.

00:06:21.551 --> 00:06:26.101
Now the notation. Four rows, and that is all of it.

00:06:26.151 --> 00:06:35.101
A hundred and twenty-eight bits, chopped into eight groups of sixteen bits each, every group written as four hexadecimal digits, with colons between the groups.

00:06:36.561 --> 00:06:40.971
That is the whole notation. Colon hexadecimal.

00:06:41.021 --> 00:06:49.971
Here is Forouzan's address, and it is the one we will use all session. Read it group by group: F-D-E-C, zero-zero-seven-four, zero-zero-zero-zero, and so on.

00:06:51.441 --> 00:07:00.391
Thirty-nine characters. Five of the eight groups are almost entirely zero, which is what the rest of this section is about.

00:07:01.061 --> 00:07:10.011
Hex is exactly the skill you already have from Session eleven. One hex digit is four bits, so B-zero-F-F really is one-zero-one-one, zero-zero-zero-zero, one-one-one-one, one-one-one-one.

00:07:13.371 --> 00:07:21.751
Sixteen cells, four per hex digit. Nothing about that changes because the address got longer.

00:07:21.801 --> 00:07:30.751
And dotted decimal is gone. The dots' job is done by colons, and the decimal-to-binary conversion you drilled for IPv4 has no part to play here at all.

00:07:32.111 --> 00:07:41.061
Nobody will ever read that address down a telephone. Which is exactly why the standard defines ways to shorten it — and exactly two of them.

00:07:43.418 --> 00:07:48.738
Both rules, stated plainly, before we do anything with them.

00:07:48.788 --> 00:07:55.428
Rule one: inside each group, zeros at the FRONT disappear. Per group, independently.

00:07:55.478 --> 00:08:04.098
Zero-zero-seven-four becomes seven-four. Zero-zero-zero-zero becomes a single zero — never nothing at all.

00:08:04.148 --> 00:08:13.098
Only leading zeros. F-F-F-zero keeps its final zero, and here is why: F-F-F-zero is sixty-five thousand five hundred and twenty. F-F-F is four thousand and ninety-five.

00:08:16.928 --> 00:08:23.678
Drop a trailing zero and you have quietly divided the group by sixteen.

00:08:23.728 --> 00:08:30.338
Rule two: one run of consecutive zero groups may collapse into a double colon. The longest run goes.

00:08:30.388 --> 00:08:39.338
F-D-E-C colon seventy-four colon zero colon zero colon zero colon B-zero-F-F colon zero colon F-F-F-zero becomes F-D-E-C colon seventy-four double-colon B-zero-F-F colon zero colon F-F-F-zero.

00:08:43.038 --> 00:08:51.988
And one double colon per address. Ever. Not as a matter of style — because expansion has to be arithmetic: hidden groups equals eight minus written groups.

00:08:56.648 --> 00:09:05.598
Two gaps make that sum unsolvable, and we will prove it in a few minutes. First, watch the whole machine run.

00:09:10.081 --> 00:09:19.031
Forty-two seconds, and it is the entire section in advance. Watch it once now; we will then do every step by hand.

00:09:19.141 --> 00:09:28.091
Eight groups, four hex digits each, and the full address underneath. Thirty-nine characters, and five groups that are almost all zero.

00:09:29.481 --> 00:09:38.431
Rule one, group by group. The struck-out digits are the ones that vanish, and one group refuses: F-F-F-zero, in orange, because its zero is at the back.

00:09:40.011 --> 00:09:48.961
Rule two. The three green groups are the longest run, and they collapse together. The lone zero near the end stays written, because it is a run of one.

00:09:52.031 --> 00:10:00.981
Then the arithmetic on the bottom row: five written, eight minus five is three, and the double colon is hiding exactly three.

00:10:01.561 --> 00:10:08.591
Now the proof. Two double colons, three written groups, five zeros missing and two gaps to put them in.

00:10:08.641 --> 00:10:17.591
One plus four, two plus three, three plus two, four plus one — four different addresses, one string, and no rule anywhere that chooses.

00:10:19.921 --> 00:10:28.081
The drill. This address has a run of three and a run of two. The three goes; the two survives as zero colon zero.

00:10:28.131 --> 00:10:35.021
And zero-D-A-eight lost its leading zero on the way past, because rule one never sleeps.

00:10:35.071 --> 00:10:44.021
Then the reverse direction. Four groups written, so four hidden. Insert them — and then pad every group back to four digits, which is where the last mark is usually thrown away.

00:10:47.241 --> 00:10:56.191
And the five mistakes, which we will come back to at the end. Every one of them is caught by a drill in this session.

00:10:57.011 --> 00:11:05.961
Now by hand, one group at a time, and read the left column downwards as we go: leading, leading, all, interior, trailing.

00:11:08.061 --> 00:11:14.451
F-D-E-C. No leading zeros anywhere in the group, so rule one has nothing to remove.

00:11:14.501 --> 00:11:23.391
It stays F-D-E-C — and doing nothing is a perfectly legitimate outcome. Rule one is not obliged to shorten anything.

00:11:23.441 --> 00:11:28.021
Zero-zero-seven-four. Two zeros at the front, and both of them go.

00:11:28.071 --> 00:11:36.241
It becomes seven-four. And the group is still sixteen bits — only the writing got shorter, never the address.

00:11:36.291 --> 00:11:41.121
Zero-zero-zero-zero. All four digits are zero, so three of them go.

00:11:41.171 --> 00:11:50.121
It becomes a single zero. A group can never vanish entirely under rule one, and if your working ever produces an empty group you have made an error, not an abbreviation.

00:11:53.041 --> 00:11:56.771
B-zero-F-F. The zero is in the middle of the group.

00:11:56.821 --> 00:12:04.531
It stays B-zero-F-F. Interior zeros are not leading zeros, and they are not going anywhere.

00:12:04.581 --> 00:12:08.121
And F-F-F-zero. The zero is at the back.

00:12:08.171 --> 00:12:17.121
It stays F-F-F-zero. Touch it and sixty-five thousand five hundred and twenty becomes four thousand and ninety-five — you have divided the group by sixteen and written down a different address.

00:12:20.661 --> 00:12:26.505
That is the most expensive slip in this topic.

00:12:26.555 --> 00:12:33.925
Checkpoint one. Pause the video and answer these on paper — not in your head.

00:12:33.975 --> 00:12:42.925
One: write F-D-E-C colon zero-zero-seven-four and the rest, after rule one only. Every group. No double colon yet.

00:12:46.425 --> 00:12:51.915
Two: what is B-zero-F-F in binary, and how many bits is that?

00:12:51.965 --> 00:12:58.085
Three: why does F-F-F-zero keep its zero when zero-zero-seven-four loses two?

00:12:58.135 --> 00:13:07.085
One: F-D-E-C colon seventy-four colon zero colon zero colon zero colon B-zero-F-F colon zero colon F-F-F-zero.

00:13:08.225 --> 00:13:16.115
Five of the eight groups changed. The three zero groups each became a single zero, and not one of them disappeared.

00:13:16.165 --> 00:13:25.115
Two: one-zero-one-one, zero-zero-zero-zero, one-one-one-one, one-one-one-one. Sixteen bits, four per hex digit — Session eleven's skill, completely untouched by the new length.

00:13:28.715 --> 00:13:37.665
Three: because rule one removes only LEADING zeros. F-F-F-zero's zero is trailing, and it is arithmetic. Sixty-five thousand five hundred and twenty against four thousand and ninety-five.

00:13:44.908 --> 00:13:48.608
Section two. One run of zeros may vanish — and exactly one.

00:13:48.658 --> 00:13:57.608
Not as a matter of style, and not because the standard felt like being strict. As a matter of whether the receiver can reconstruct the address at all.

00:14:02.563 --> 00:14:07.823
Rule two, applied to the address we have been carrying all session.

00:14:07.873 --> 00:14:14.333
After rule one we have F-D-E-C colon seventy-four colon zero colon zero colon zero colon B-zero-F-F colon zero colon F-F-F-zero.

00:14:14.383 --> 00:14:20.443
Three consecutive zero groups, sitting in the middle of the address. That is a run.

00:14:20.493 --> 00:14:28.193
Rule two collapses it: F-D-E-C colon seventy-four double-colon B-zero-F-F colon zero colon F-F-F-zero.

00:14:28.243 --> 00:14:35.113
Five groups written, and a double colon standing exactly where three groups used to be.

00:14:35.163 --> 00:14:43.373
And the single zero near the end stays written. It is a run of one, and the rule collapses the longest run.

00:14:43.423 --> 00:14:52.373
Rule two is not a search-and-replace for the character zero. It is a rule about runs of whole zero groups, and that distinction is worth a mark on its own.

00:14:54.113 --> 00:15:03.063
One more case people find surprising. An address such as two-thousand-one colon zero-D-B-eight and so on, with no all-zero group anywhere, earns nothing at all from rule two.

00:15:07.053 --> 00:15:16.003
Rule one does the whole job alone. Not every address gets a double colon, and writing one in where there is no run is not an abbreviation — it is a different address.

00:15:22.833 --> 00:15:25.463
And now the other direction.

00:15:25.513 --> 00:15:33.103
Count the groups that are actually written. Subtract from eight. That is exactly how many zero groups the double colon is hiding.

00:15:33.153 --> 00:15:38.613
There is nothing to decide and nothing to estimate. It is a subtraction.

00:15:38.663 --> 00:15:46.433
Our address has five written groups. Eight minus five is three, so the double colon hides three zero groups.

00:15:46.483 --> 00:15:55.433
And that is the whole reason rule two is safe — the string expands to exactly one hundred-and-twenty-eight-bit number, with no ambiguity anywhere.

00:15:56.953 --> 00:16:02.953
Then the last step, which is where the marks actually go. Pad every group back to four digits.

00:16:03.003 --> 00:16:11.953
Seventy-four becomes zero-zero-seven-four. A lone D becomes zero-zero-zero-D. An expanded address always shows all thirty-two hex digits.

00:16:13.523 --> 00:16:21.032
Leaving one group short is a complete answer thrown away at the final step.

00:16:21.082 --> 00:16:27.522
Now the proof. You should be able to derive this rather than quote it.

00:16:27.572 --> 00:16:33.222
Suppose we cheat, and write F-D-E-C double-colon B-zero-F-F double-colon F-F-F-zero.

00:16:33.272 --> 00:16:41.312
Three groups are written, so five zero groups are missing. And now there are two gaps to distribute those five between.

00:16:41.362 --> 00:16:46.692
Split them how? One and four? Two and three? Three and two? Four and one?

00:16:46.742 --> 00:16:55.252
Four different hundred-and-twenty-eight-bit addresses share this one string, and the machine reading it cannot know which one you meant.

00:16:55.302 --> 00:16:59.582
Which means the rule is not a style convention. It is a necessity.

00:16:59.632 --> 00:17:07.442
An abbreviation you cannot reverse is not an abbreviation — it is data loss with a tidier appearance.

00:17:07.492 --> 00:17:15.122
One double colon per address. Ever. And on a tie between two equally long runs, the first one collapses.

00:17:15.172 --> 00:17:24.122
That tie-break exists for exactly the same reason: so that the expansion is unique. Every part of this rule is protecting one property — reversibility.

00:17:29.444 --> 00:17:38.394
The abbreviation machine. It does both rules in both directions, and it shows its working — which is exactly what you have to do on paper.

00:17:39.154 --> 00:17:48.104
State one: the address with nothing removed. Eight groups, sixteen bits each, a hundred and twenty-eight bits total, and the counters underneath to prove it.

00:17:50.254 --> 00:17:58.764
State two: rule one, group by group. The struck-through digits are gone; the counters tell you how many each group lost.

00:17:58.814 --> 00:18:05.514
And group eight is in orange with the words "zero is VALUE" — F-F-F-zero refusing, exactly as we did by hand.

00:18:05.564 --> 00:18:14.514
State three: the three green groups collapse, the lone zero stays, and the bottom row shows the arithmetic — five written, eight minus five, three hidden.

00:18:17.204 --> 00:18:25.974
Compare it against your own working from slide thirteen. It should match character for character.

00:18:26.024 --> 00:18:34.974
State four is the drill: a run of three and a run of two. The machine takes the longest, and it labels the survivors "survives as zero".

00:18:35.524 --> 00:18:41.674
If you chose the other run when you did this on paper, this is the state to watch twice.

00:18:41.724 --> 00:18:48.814
State five is the ambiguity proof in pixels. Red verdict, and the four splits laid out side by side.

00:18:48.864 --> 00:18:57.714
Read them left to right and watch the B-zero-F-F group slide across the address. Four different numbers, one string.

00:18:57.764 --> 00:19:06.714
State six goes the other way: B-one-two double-colon and the rest, expanded to all eight groups. The dashed cells are the four that came out of the double colon.

00:19:08.644 --> 00:19:14.834
And notice the answer shows every group at four digits — zero-B-one-two, zero-five-A-two, zero-zero-zero-D.

00:19:14.884 --> 00:19:23.834
State seven is the whole machine in four steps. Open it yourself, type your own addresses in, and try to break it — the hostile cases are the ones that teach you something.

00:19:30.841 --> 00:19:39.791
The four expansions, written out in full, because the proof is only convincing when you have watched them move.

00:19:40.321 --> 00:19:46.611
One and four: F-D-E-C colon zero colon B-zero-F-F colon zero colon zero colon zero colon zero colon F-F-F-zero.

00:19:46.661 --> 00:19:54.971
A perfectly valid address. And a completely different one from the three below it.

00:19:55.021 --> 00:20:03.971
Two and three: the B-zero-F-F group has already moved one place to the right. Also valid, also completely different.

00:20:04.621 --> 00:20:11.311
Three and two: and now B-zero-F-F has slid three places since the first line.

00:20:11.361 --> 00:20:19.621
Four and one. Four expansions, one writing — and there is no rule anywhere in the standard that picks between them.

00:20:19.671 --> 00:20:27.541
The receiver's problem, stated exactly: it knows five groups are missing. It does not know where they go.

00:20:27.591 --> 00:20:35.711
And so the verdict. Two double colons is illegal — and you can now say why in one sentence of your own, instead of quoting a rule you memorised.

00:20:35.761 --> 00:20:42.991
Derive it from the arithmetic, and there is nothing left to memorise.

00:20:43.041 --> 00:20:49.341
Ninety seconds on paper, and this one is chosen to catch a specific mistake.

00:20:49.391 --> 00:20:56.241
Zero-D-A-eight, three zero groups, zero-four-C-three, two zero groups, F-F-F-F.

00:20:56.291 --> 00:21:05.241
Both rules apply. And be careful: there are TWO runs of zeros here, one of three groups and one of two. Only one of them may collapse.

00:21:07.391 --> 00:21:12.781
The answer is D-A-eight double-colon four-C-three colon zero colon zero colon F-F-F-F.

00:21:12.831 --> 00:21:21.781
The run of three collapses, because the rule takes the longest run. The run of two survives, written out in full as zero colon zero.

00:21:23.361 --> 00:21:32.311
And zero-D-A-eight lost its leading zero on the way past. Rule one never sleeps, and it applies to every group whether or not rule two is doing anything.

00:21:33.421 --> 00:21:42.371
Now check it the way the machine does: five written groups, eight minus five is three, and the double colon is hiding exactly the three you removed.

00:21:42.641 --> 00:21:51.591
If you collapsed the first run you saw rather than the longest, that is the classic loss on this question.

00:21:51.870 --> 00:21:56.400
Checkpoint two. Both directions this time.

00:21:56.450 --> 00:22:02.820
One: expand B-one-two double-colon five-A-two colon zero colon D, to all eight groups, four digits each.

00:22:02.870 --> 00:22:11.820
Two: abbreviate two-thousand-one colon zero-zero-zero-zero colon zero-zero-zero-zero colon zero-zero-A-four colon zero-zero-zero-zero colon zero-zero-zero-zero colon zero-zero-zero-zero colon zero-B-zero-five.

00:22:17.720 --> 00:22:24.160
Three: why can a double colon appear only once in an address? One sentence.

00:22:24.210 --> 00:22:32.310
One: zero-B-one-two colon zero-zero-zero-zero, four times, then zero-five-A-two colon zero-zero-zero-zero colon zero-zero-zero-D.

00:22:32.360 --> 00:22:41.310
Four groups are written, so eight minus four is four hidden. Then pad: B-one-two becomes zero-B-one-two, five-A-two becomes zero-five-A-two, and D becomes zero-zero-zero-D.

00:22:45.120 --> 00:22:54.070
Two: two-thousand-one colon zero colon zero double-colon B-zero-five. There are two runs — one of two groups and one of three — and the three collapses.

00:22:55.500 --> 00:23:03.400
The two survives as zero colon zero, and zero-zero-A-four became A-four, zero-B-zero-five became B-zero-five, on the way past.

00:23:03.450 --> 00:23:12.400
Three: because the number of hidden groups is eight minus the written groups, and with two gaps there is no way to know how that total divides between them.

00:23:16.921 --> 00:23:23.811
Section three. That is how you WRITE an address. Now: who can an address point AT?

00:23:23.861 --> 00:23:32.304
Three kinds. And one old friend from IPv4 is conspicuously — and deliberately — missing.

00:23:32.354 --> 00:23:38.074
Four cards. The first three go quickly; the red one gets the time.

00:23:38.124 --> 00:23:45.844
Unicast: one interface, one destination. The ordinary case, and the overwhelming majority of all traffic.

00:23:45.894 --> 00:23:52.054
Exactly the same idea as IPv4, with a longer number in the field.

00:23:52.104 --> 00:24:01.054
Anycast is the new one, and it is the one worth remembering. Many interfaces share the same address, and the packet goes to whichever member is nearest.

00:24:03.514 --> 00:24:12.464
It sounds exotic. It is how the world's big DNS servers survive: one address, servers on every continent, and you always hit the close one without knowing it.

00:24:17.704 --> 00:24:25.284
Multicast: one to a group, and every member of the group gets a copy. Block F-F-zero-zero slash eight.

00:24:25.334 --> 00:24:32.244
Built in from day one, rather than bolted on afterwards the way IPv4 managed it.

00:24:32.294 --> 00:24:34.874
IPv6 has no broadcast address. None at all.

00:24:34.924 --> 00:24:41.734
"Everybody on this link" still exists — but as just one more multicast group, F-F-zero-two double-colon one.

00:24:41.784 --> 00:24:50.734
In Session nine, ARP shouted at every machine on the LAN and woke all of them. Version six treats shouting at everyone as a badly chosen group.

00:24:51.654 --> 00:25:00.604
For the exam, phrase it this way: IPv6 does not do less than IPv4 here. Broadcast became a special case of multicast — a promotion, not a deletion.

00:25:05.721 --> 00:25:10.651
Five blocks, and one sentence each on what the block is for.

00:25:10.701 --> 00:25:17.161
Double colon on its own: all one hundred and twenty-eight bits zero. The unspecified address.

00:25:17.211 --> 00:25:26.161
It means "I have no address yet" — the source address a host uses in its first seconds of life, before it has one. Never a destination. Next session it stars in the boot sequence.

00:25:30.341 --> 00:25:34.651
Double-colon-one: loopback. This machine talking to itself.

00:25:34.701 --> 00:25:42.271
IPv4 burned sixteen million addresses — the whole of one-two-seven dot anything — on this one job. IPv6 spends exactly one.

00:25:42.321 --> 00:25:50.741
F-E-eight-zero slash ten: link-local. Valid on this cable, or this Wi-Fi, and never routed anywhere.

00:25:50.791 --> 00:25:59.741
Every interface owns one of these, automatically, with no server and no configuration. Where the rest of those bits come from is next session's trick.

00:26:04.511 --> 00:26:11.881
F-F-zero-zero slash eight: multicast. The one-to-many block, and this is where broadcast's job went.

00:26:11.931 --> 00:26:18.031
F-F-zero-two double-colon one is the group "all nodes on this link".

00:26:18.081 --> 00:26:23.051
And two-thousand slash three: global unicast — the public Internet.

00:26:23.101 --> 00:26:32.051
Which occupies one eighth of the space. One eighth is enough for the entire public Internet, and the other seven eighths are left unallocated.

00:26:35.001 --> 00:26:39.001
Forouzan's Table twenty-two point one is five rows long, and those five rows are the whole of the assigned address space. Leading bits, then the CIDR, then the job, then the fraction of the space the block occupies. The fractions are as examinable as the prefixes.

00:26:39.051 --> 00:26:42.851
Leading bits all zero. Zero-zero-zero-zero double-colon slash eight, special addresses, one two-hundred-and-fifty-sixth of the space. Everything with a reserved job is in this one block: the unspecified address, loopback, and two formats that carry an IPv4 address inside an IPv6 one. Those two are on the next slide.

00:26:42.901 --> 00:26:43.971
Leading bits zero-zero-one. Two-thousand double-colon slash three, global unicast, one eighth. That is the public Internet, and section four of this session takes its forty-eight, sixteen and sixty-four bits apart. One eighth was enough for the entire public Internet; the other seven eighths were left in the drawer.

00:26:44.021 --> 00:26:45.581
Leading bits one-one-one-one one-one-zero. F-C-zero-zero slash seven, unique local unicast, one one-hundred-and-twenty-eighth. This is the private block, and it is the row the previous slide did not carry. A site builds its own subblock inside it without applying to anybody, and a packet carrying one of these as its destination is not expected to be routed.

00:26:45.631 --> 00:26:46.671
Leading bits one-one-one-one one-one-one-zero one-zero. F-E-eight-zero slash ten, link local addresses, one one-thousand-and-twenty-fourth. Ten bits fixed, which is exactly what the slash ten claims. Every interface on a link owns one of these automatically, and next session says where the rest of the bits come from.

00:26:46.721 --> 00:26:55.671
Leading bits all ones. F-F-zero-zero slash eight, multicast addresses, one two-hundred-and-fifty-sixth. IPv6 defines no broadcasting at all, not even a limited version — it treats broadcasting as a special case of multicasting, and this is the block that absorbed the job. Add the five fractions and they come to well under a fifth of the space. Everything outside this table is unassigned, deliberately.

00:28:58.804 --> 00:29:07.754
One private block built out of a random number, and two ways of carrying an IPv4 address inside an IPv6 one. All three are in section twenty-two point one point three.

00:29:23.764 --> 00:29:32.714
F-C-zero-zero slash seven begins one-one-one-one one-one-zero — seven fixed bits. The eighth bit is zero or one, and it says how the address was selected: locally, or by an authority. Then the site chooses the next forty bits itself, using a randomly generated forty-bit number. Nobody applies to anybody, and nobody hands anything out.

00:29:47.104 --> 00:29:56.054
Seven plus one plus forty is forty-eight bits, and forty-eight bits is a subblock that looks exactly like a global unicast prefix. That similarity is deliberate — the shape of the address does not change just because the block is private. The forty-bit random number makes the probability of two sites choosing the same subblock extremely small, and a packet carrying one of these as its destination is not expected to be routed.

00:30:15.264 --> 00:30:24.214
The compatible format: ninety-six bits of zero, then thirty-two bits of IPv4 address, written zero-zero-zero-zero double-colon slash ninety-six. It is used when a computer using IPv6 wants to send a message to another computer using IPv6, carrying the old address embedded in the new one.

00:30:37.134 --> 00:30:46.084
The mapped format: eighty bits of zero, then sixteen bits of ones, then the thirty-two-bit IPv4 address, written zero-zero-zero-zero double-colon F-F-F-F slash ninety-six. It is used when a computer that has already migrated to version six sends to a computer still using version four. Compatible for a version-six far end, mapped for a version-four one — that is the distinction the question tests.

00:31:00.884 --> 00:31:09.834
Both formats were designed so the checksum survives the substitution: extra zeros or ones in multiples of sixteen do not change a checksum. So a router can swap the full IPv6 address for the embedded IPv4 one and the pseudoheader arithmetic in TCP and UDP still comes out the same.

00:31:20.096 --> 00:31:24.016
And prefix notation does not change at all.

00:31:24.066 --> 00:31:28.936
F-E-eight-zero slash ten is a claim about ten bits, and nothing more.

00:31:28.986 --> 00:31:37.936
F-E-eight-zero is one-one-one-one, one-one-one-zero, one-zero-zero-zero, zero-zero-zero-zero. The first ten bits — one-one-one-one-one-one-one-zero-one-zero — are what the slash ten fixes. The remaining six bits of that group are free.

00:31:44.566 --> 00:31:53.516
F-F-zero-zero slash eight means the first eight bits are all ones. And two-thousand slash three means the first three bits are zero-zero-one.

00:31:55.396 --> 00:32:01.486
Read the leading bits and the address tells you its job, with no lookup and no table.

00:32:01.536 --> 00:32:10.486
So the mask skill from weeks ten and eleven still pays. You are not learning a new idea here — you are applying an old one to a longer number.

00:32:13.146 --> 00:32:22.096
And there is no dotted-decimal mask to convert first, which removes the single most error-prone step of the IPv4 version.

00:32:25.418 --> 00:32:33.308
This demo shows you the leading bits of each block, which is the part the table on the last slide could only assert.

00:32:33.358 --> 00:32:42.308
State one: five addresses and no answers. Name each one's job before you press on — you should be able to, and the point of the exercise is that it is not memory, it is reading.

00:32:46.338 --> 00:32:55.288
State two: the double colon on its own. All sixteen bits of the first group are zero, and so are the other hundred and twelve.

00:32:55.568 --> 00:33:03.098
Expand it and the arithmetic is the usual one: zero written groups, so the double colon hides all eight.

00:33:03.148 --> 00:33:12.098
State three: loopback. One written group, so seven zero groups hide in the double colon, and the last group is zero-zero-zero-one.

00:33:12.148 --> 00:33:21.068
A hundred and twenty-seven zeros and a one, to say "me". IPv4 spent sixteen million addresses on that sentence.

00:33:21.118 --> 00:33:30.068
State four is the one to watch. The bit strip shows F-E-eight-zero in binary, and the first ten cells are highlighted in orange — that is the slash ten, made visible.

00:33:32.298 --> 00:33:40.808
Everything after those ten bits is free, and every interface on Earth has one of these whether you configured it or not.

00:33:40.858 --> 00:33:49.808
State five: F-F-zero-two, first eight bits all ones. And the red row at the bottom — the broadcast address that does not exist.

00:33:50.368 --> 00:33:59.318
That red row is on the slide because naming an IPv6 broadcast address is the most common wrong answer in this topic.

00:33:59.448 --> 00:34:08.198
State six: two-thousand slash three, first three bits zero-zero-one — and then the address opened up into forty-eight, sixteen and sixty-four.

00:34:08.248 --> 00:34:17.198
Look at the coloured split underneath. That bar is the whole of section four, and we are about to spend six slides on it.

00:34:18.678 --> 00:34:27.628
And state seven: read the leading bits, name the job. Four blocks and one absence — and the absence is the exam question.

00:34:30.573 --> 00:34:37.163
Checkpoint three, and the third question is a trap. Answer it anyway.

00:34:37.213 --> 00:34:46.163
One: which of these can never be a destination address — double colon, double-colon-one, F-E-eight-zero double-colon one, or F-F-zero-two double-colon one?

00:34:48.963 --> 00:34:57.113
Two: a router receives a packet whose destination is F-E-eight-zero double-colon four. What does it do?

00:34:57.163 --> 00:35:01.253
Three: what is the IPv6 broadcast address?

00:35:01.303 --> 00:35:10.253
One: the double colon, the unspecified address. It exists only as a source, used by a host that does not yet have an address of its own. The other three are all perfectly good destinations.

00:35:14.633 --> 00:35:23.583
Two: nothing that involves forwarding. Link-local addresses are valid on one link only, so the packet may be delivered on the link it arrived on, but it must never be routed onward.

00:35:26.453 --> 00:35:35.403
Three: there is not one. The question is a trap. Broadcast's job belongs to multicast, and "all nodes on this link" is the group F-F-zero-two double-colon one.

00:35:38.043 --> 00:35:44.942
If you wrote an address down for question three, the mark is gone.

00:35:44.992 --> 00:35:49.022
Section four, and this is the structural heart of the session.

00:35:49.072 --> 00:35:58.022
Forty-eight plus sixteen plus sixty-four. Three fixed instalments — and the middle one quietly retires a month of subnetting arithmetic.

00:36:01.288 --> 00:36:07.528
A global unicast address spends its bits in three fixed instalments.

00:36:07.578 --> 00:36:13.678
Forty-eight bits of global routing prefix. That defines the SITE — the whole organisation.

00:36:13.728 --> 00:36:19.678
It is what your ISP hands you, and it is what the Internet's routers aggregate on.

00:36:19.728 --> 00:36:27.768
Sixteen bits of subnet ID. Two to the sixteen — sixty-five thousand five hundred and thirty-six subnets per site.

00:36:27.818 --> 00:36:36.758
One full group of the address, yours to number zero-zero-zero-zero, zero-zero-zero-one, zero-zero-zero-two, and onward.

00:36:36.808 --> 00:36:44.898
And sixty-four bits of interface ID for the machine itself. A full half of the address, spent identifying one interface.

00:36:44.948 --> 00:36:53.888
Next session, the machine builds that half itself, out of its own MAC address, with no server and no administrator.

00:36:53.938 --> 00:36:59.728
Say it the way you will remember it: the slash sixty-four is the new slash twenty-four.

00:36:59.778 --> 00:37:08.728
Every LAN, every Wi-Fi network, every point-to-point link gets a slash sixty-four. Nobody sizes subnets any more.

00:37:11.292 --> 00:37:17.252
Five habits, and every one of them is something you have drilled since Session twelve.

00:37:17.302 --> 00:37:24.032
"How many hosts does this LAN need?" — the first question of every subnetting problem you have done since Session twelve.

00:37:24.082 --> 00:37:31.942
No longer asked. Every LAN gets a slash sixty-four, whether it holds four machines or four hundred.

00:37:31.992 --> 00:37:36.762
Round up to a power of two, and borrow that many bits from the host part.

00:37:36.812 --> 00:37:44.922
Gone. The subnet field is a fixed sixteen bits. There is nothing to borrow, and nothing to borrow from.

00:37:44.972 --> 00:37:49.602
Check the alignment: a block must start at a multiple of its own size.

00:37:49.652 --> 00:37:56.452
Gone. You are writing a number into a field, and every value of that field is legal.

00:37:56.502 --> 00:38:05.452
Allocate the largest block first — Sessions fourteen and fifteen's whole discipline, and the source of every hole in every plan you drew.

00:38:06.202 --> 00:38:13.012
Gone. With sixty-five thousand equal subnets, the order you allocate them in stops mattering.

00:38:13.062 --> 00:38:20.992
And usable equals two-to-the-n minus two, because the all-zeros and all-ones hosts were already spoken for.

00:38:21.042 --> 00:38:28.962
Gone as well. With two-to-the-sixty-four interface IDs on a single link, running out is not a scenario worth planning for.

00:38:29.012 --> 00:38:36.652
The last month was not wasted. IPv4 runs the world's LANs for another two decades, and the exam covers it.

00:38:36.702 --> 00:38:45.042
What changes is that none of that arithmetic follows the address into version six.

00:38:45.092 --> 00:38:48.662
Three rows on what replaces all of that.

00:38:48.712 --> 00:38:57.662
Sixteen bits sitting between the site prefix and the interface ID. Write zero-zero-zero-zero into it and you have named a subnet. Write zero-zero-zero-one and you have named the next one.

00:39:02.132 --> 00:39:06.382
That is the operation. There is no second step.

00:39:06.432 --> 00:39:15.382
No exchange-rate table — no "how many slash twenty-sevens fit inside a slash twenty-four". And no audit at the end to prove that nothing overlapped and nothing was stranded.

00:39:16.102 --> 00:39:23.222
Every subnet is a slash sixty-four, every slash sixty-four is identical, and every one of them is enormous.

00:39:23.272 --> 00:39:32.222
And aggregation comes free. The forty-eight-bit prefix means the whole organisation is one line in the Internet's routing table by construction.

00:39:34.562 --> 00:39:43.512
That is exactly what Session sixteen had to engineer by hand for IPv4 — the three conditions, the contiguity check, the power-of-two count. Here it is a consequence of the address shape.

00:39:49.915 --> 00:39:57.465
Forouzan's Example twenty-two-point-one, worked step by step. Try to call each answer before I give it.

00:39:57.515 --> 00:40:05.285
An organisation is assigned the block two-thousand colon one-four-five-six colon two-four-seven-four, slash forty-eight.

00:40:05.335 --> 00:40:11.615
Give the CIDR notation for the blocks of its first and second subnets.

00:40:11.665 --> 00:40:19.795
Step one: the site prefix uses forty-eight bits — two-thousand colon one-four-five-six colon two-four-seven-four.

00:40:19.845 --> 00:40:26.365
Which is three groups of the address, and it is fixed for everything the organisation owns.

00:40:26.415 --> 00:40:32.015
Step two: the subnets live in the NEXT sixteen bits, which is one full group.

00:40:32.065 --> 00:40:38.895
So the subnet ID is simply the fourth group of the address, and it is yours to choose.

00:40:38.945 --> 00:40:47.305
Step three: first subnet, subnet ID zero-zero-zero-zero. Second subnet, subnet ID zero-zero-zero-one.

00:40:47.355 --> 00:40:51.865
And each subnet fixes sixty-four bits in total, so each block is a slash sixty-four.

00:40:51.915 --> 00:41:00.865
The answer: two-thousand colon one-four-five-six colon two-four-seven-four colon zero-zero-zero-zero slash sixty-four, and the same again with zero-zero-zero-one.

00:41:03.645 --> 00:41:12.595
That is the entire worked example. Compare it with Session fourteen's version of the same question, which needed a formula, an exchange-rate table and an alignment audit.

00:41:15.715 --> 00:41:24.665
There is no arithmetic in this at all — and that absence is precisely the observation the example exists to make.

00:41:26.960 --> 00:41:33.770
Forty-two seconds that put the whole argument in one place, and end on the question from minute one.

00:41:33.820 --> 00:41:41.380
The four rows of the fight: too small from birth, rationed with masks and subnets, coped with using NAT — and then the honest fix.

00:41:41.430 --> 00:41:50.380
The thirty-nine digits, and the three readings of them. Watch the last row, in red: eighty bits would already have done it.

00:41:51.800 --> 00:41:55.340
That row is the hinge of the whole session.

00:41:55.390 --> 00:42:04.340
And there is the bar. Forty-eight for the site in blue, sixteen for the subnet in orange, sixty-four for the interface in green — with a real address coloured underneath to match.

00:42:08.090 --> 00:42:14.710
The two columns: six steps on the left that IPv4 demanded, three on the right that replace them.

00:42:14.760 --> 00:42:21.150
Then the line to leave with — the slash sixty-four is the new slash twenty-four.

00:42:21.200 --> 00:42:30.150
The worked example again, in five steps, ending on both answers. If you called them before the reveal, you have the section.

00:42:30.260 --> 00:42:39.210
The four cards and the five reserved blocks, on one screen. Use this frame as your revision card for the whole of section three.

00:42:39.440 --> 00:42:48.390
And the answer: sixty-four per LAN, sixteen of subnets, forty-eight of routing prefix. Addresses so cheap they are never worth conserving.

00:42:48.860 --> 00:42:55.414
Followed by the second question, which next session answers.

00:42:55.464 --> 00:43:02.414
So. Why three hundred and forty undecillion? Not to count devices — to buy structure.

00:43:02.464 --> 00:43:10.724
Not to count toasters. If "never run out" were the goal, eighty bits was plenty, and we established that twenty minutes ago.

00:43:10.774 --> 00:43:19.724
The extra forty-eight bits are not capacity at all. They are spent on something the shortage never allowed anyone to buy.

00:43:20.204 --> 00:43:29.154
Sixty-four bits for every LAN. So large that a machine can invent its own interface ID with no server, no administrator and no coordination of any kind.

00:43:30.014 --> 00:43:37.404
That is next session's opening trick, and it is only possible because the space is enormous.

00:43:37.454 --> 00:43:46.404
Sixteen bits of subnets for every site. So the careful rationing arithmetic of Sessions twelve to fifteen becomes unnecessary — not merely easier, unnecessary.

00:43:49.954 --> 00:43:58.904
And forty-eight bits of routing prefix. So aggregation is designed in from birth, instead of being retrofitted onto IPv4 the way Session sixteen had to retrofit it.

00:44:01.604 --> 00:44:10.554
Three instalments, three consequences. Every one of them is a thing IPv4 could not afford — and every one of them is why the number is a hundred and twenty-eight rather than eighty.

00:44:16.097 --> 00:44:22.237
One line for the philosophy, and then the half of the question next session answers.

00:44:22.287 --> 00:44:28.457
Addresses so cheap they are never worth conserving. That is the design goal, stated as a sentence.

00:44:28.507 --> 00:44:37.457
Every painful skill from weeks nine to twelve is a monument to conservation. IPv6 is what addressing looks like when the designers simply refuse to be poor.

00:44:40.477 --> 00:44:49.427
And half the hook is answered. Why three hundred and forty undecillion? Because structure is expensive measured in bits and cheap measured in anything else — and the designers decided to buy it outright.

00:44:54.827 --> 00:45:00.397
The other half is next session's: why twenty-five years, and still not done?

00:45:00.447 --> 00:45:06.067
The short answer is NAT, a word from this session's first five minutes.

00:45:06.117 --> 00:45:15.067
Session seventeen's trick made IPv4 scarcity survivable, so nobody was ever forced to migrate — and Session twenty works through the whole argument.

00:45:17.977 --> 00:45:24.827
Checkpoint four, the last one, and question one is the whole session in a sentence.

00:45:24.877 --> 00:45:33.427
One: why is the address a hundred and twenty-eight bits rather than eighty, given that eighty already ends depletion?

00:45:33.477 --> 00:45:42.427
Two: an organisation holds two-thousand-one colon D-B-eight colon A-C-one-zero, slash forty-eight. Name its first two subnets in CIDR notation.

00:45:45.757 --> 00:45:51.337
Three: what does the slash sixty-four replace, in one sentence?

00:45:51.387 --> 00:46:00.337
One: because the extra bits buy structure rather than capacity. Sixty-four bits per LAN so an interface can generate its own ID; sixteen so subnetting is a field rather than arithmetic; forty-eight so aggregation is built into the shape of the address.

00:46:07.807 --> 00:46:16.757
Two: two-thousand-one colon D-B-eight colon A-C-one-zero colon zero-zero-zero-zero slash sixty-four, and the same with zero-zero-zero-one. The subnet ID is the fourth group, and each block fixes sixty-four bits in total.

00:46:23.177 --> 00:46:32.127
Three: it replaces the whole of subnet sizing. Every LAN gets the same enormous block, so there is no rounding up to a power of two, no borrowing, no alignment check and no usable-minus-two.

00:46:39.367 --> 00:46:46.177
Five mistakes, ten seconds each, and I can name which drill in this session caught each one.

00:46:46.227 --> 00:46:49.617
Dropping trailing zeros: F-F-F-zero written as F-F-F.

00:46:49.667 --> 00:46:58.617
Only leading zeros go. F-F-F-zero is sixty-five thousand five hundred and twenty; F-F-F is four thousand and ninety-five. Trailing zeros are value, not padding.

00:47:00.337 --> 00:47:06.327
Using a double colon twice. It looks tidier, and it is illegal.

00:47:06.377 --> 00:47:15.327
Once, ever. Two gaps make the expansion ambiguous — one plus four, or three plus two? There is no rule that chooses, which is exactly why the standard forbids it.

00:47:20.977 --> 00:47:26.887
Collapsing the first zero run you happen to see, rather than the longest one in the address.

00:47:26.937 --> 00:47:35.647
The longest run collapses. On a tie, the first. And the shorter run stays written out as zero colon zero.

00:47:35.697 --> 00:47:44.247
Expanding a double colon by guessing "a few" zero groups — or getting the count right and then leaving a group at one digit.

00:47:44.297 --> 00:47:53.247
Hidden equals eight minus written. Then pad every group back to four digits: D becomes zero-zero-zero-D, and D on its own is the mark gone.

00:47:55.207 --> 00:48:01.467
And: "the IPv6 broadcast address is…" — a confident answer to a question that has none.

00:48:01.517 --> 00:48:10.467
There is no such address. Broadcast's job belongs to multicast, and all nodes on this link is F-F-zero-two double-colon one.

00:48:10.547 --> 00:48:19.497
Five mistakes, and every one of them was caught by a drill in this session. That is not a coincidence — the drills were built from these five.

00:48:21.911 --> 00:48:26.661
Three things from today that become the whole of next session.

00:48:26.711 --> 00:48:35.161
The unspecified address opens the boot sequence. A machine with no address still has to say something in order to ask for one.

00:48:35.211 --> 00:48:41.691
Next session that single fact turns into the entire autoconfiguration story.

00:48:41.741 --> 00:48:50.181
F-E-eight-zero slash ten and the sixty-four-bit interface ID are the raw material. Every interface has a link-local address, automatically.

00:48:50.231 --> 00:48:59.181
Where the bottom sixty-four bits come from is the trick — and the answer involves your MAC address and the letters F-F-F-E.

00:48:59.791 --> 00:49:06.291
And NAT comes back as the villain. Session seventeen taught it as the great coping mechanism.

00:49:06.341 --> 00:49:14.701
Next session explains how the greatest workaround in networking became the main reason its own replacement is twenty-five years late.

00:49:14.751 --> 00:49:23.701
Read Forouzan twenty-two-point-two to twenty-two-point-four before then, and find out what F-F-F-E means. You will be asked.

00:49:26.247 --> 00:49:32.337
Four skills, and between them they are almost every mark this session is worth.

00:49:32.387 --> 00:49:41.337
Abbreviate any address, both rules, without hesitation. This is the highest-frequency IPv6 question there is, and it is pure mechanics.

00:49:42.797 --> 00:49:47.447
Practise it until it is boring. Boring is the target.

00:49:47.497 --> 00:49:55.387
Expand any abbreviated address, and pad every group. Count written groups, subtract from eight, insert, pad.

00:49:55.437 --> 00:50:01.787
Leaving one group short throws a complete answer away at the final step.

00:50:01.837 --> 00:50:10.787
Name the five reserved blocks on sight: double colon, double-colon-one, F-E-eight-zero slash ten, F-F-zero-zero slash eight, and two-thousand slash three.

00:50:12.587 --> 00:50:18.977
And say what each one is for in a single sentence. Sentences, not table rows.

00:50:19.027 --> 00:50:27.957
And split a global unicast address forty-eight, sixteen, sixty-four, then name its subnets. Example twenty-two-point-one is the model answer.

00:50:28.007 --> 00:50:36.957
If you can reproduce that one from memory, you can do every variant of it that exists.

00:50:37.480 --> 00:50:42.980
And three phrasings that lose marks while you know the material perfectly.

00:50:43.030 --> 00:50:50.260
"How many addresses does IPv6 have?" wants two to the one hundred and twenty-eight, not thirty-nine digits.

00:50:50.310 --> 00:50:59.260
Write two-to-the-one-twenty-eight, approximately three point four times ten to the thirty-eight. Writing the number out is not wrong, but it is slow, and what the marker is checking is the exponent.

00:51:05.260 --> 00:51:12.340
"Why a hundred and twenty-eight bits?" does not want "so we never run out". That answer is worth half a mark at best.

00:51:12.390 --> 00:51:21.340
The full answer names the structure: sixty-four per LAN, sixteen of subnets, forty-eight of routing prefix — and says what each one makes possible.

00:51:23.810 --> 00:51:29.660
And "subnet this IPv6 block" is not an IPv4 question in disguise. There is no borrowing and no sizing.

00:51:29.710 --> 00:51:37.820
Identify the slash forty-eight, write the subnet number into the fourth group, and give every answer as a slash sixty-four.

00:51:37.870 --> 00:51:46.337
Read the verb in the question before you start writing, and answer the question that was actually asked.

00:51:46.387 --> 00:51:49.647
Three wordings, one session.

00:51:49.697 --> 00:51:55.897
"Abbreviate this address", or "expand this address". Pure mechanics, both directions.

00:51:55.947 --> 00:52:03.337
Rule one per group; the longest run once; hidden equals eight minus written; pad every group to four digits.

00:52:03.387 --> 00:52:09.717
"What kind of address is this?" wants you to read the leading bits.

00:52:09.767 --> 00:52:18.717
Double colon, double-colon-one, F-E-eight-zero slash ten, F-F-zero-zero slash eight, two-thousand slash three — and there is no broadcast address.

00:52:21.477 --> 00:52:27.967
And "name this organisation's subnets" is not an IPv4 subnetting question wearing a hat.

00:52:28.017 --> 00:52:36.967
The slash forty-eight is the site, the fourth group is the subnet ID, and every answer is a slash sixty-four.

00:52:38.576 --> 00:52:40.376
That is Session nineteen.

00:52:40.426 --> 00:52:48.046
A hundred and twenty-eight bits, eight groups, two rules — and addresses so cheap they are never worth rationing again.

00:52:48.096 --> 00:52:57.046
Only leading zeros go, and the double colon appears once, on the longest run. Hidden groups equal eight minus written, and every group pads back to four digits.

00:52:59.376 --> 00:53:07.506
Three kinds of destination and no broadcast at all. "Everyone on this link" is the group F-F-zero-two double-colon one.

00:53:07.556 --> 00:53:16.506
Forty-eight plus sixteen plus sixty-four — the slash sixty-four is the new slash twenty-four, and one sixteen-bit field replaces a month of arithmetic.

00:53:17.936 --> 00:53:24.976
A wall of colons and hex is eight groups of four hex digits, and the two rules are all it takes to read it.

00:53:25.026 --> 00:53:33.976
Next session: a brand-new laptop invents its own address out of its MAC address, with no server and nobody's permission — and we finally answer why the switch to all of this is taking decades.

00:53:36.916 --> 00:53:41.555
I will see you there.
