WEBVTT

00:00.090 --> 00:01.050
インストラクター：このレッスンでは､

00:01.050 --> 00:06.600
IPv6（インターネット・プロトコル・バージョン6）にまつわるコンセプトを紹介します｡

00:06.600 --> 00:07.740
ここまではIPv4の話でしたが､

00:07.740 --> 00:10.230
IPv4が抱える問題のひとつは､

00:10.230 --> 00:15.510
アドレス空間が限られていることです｡

00:15.510 --> 00:19.380
これは､ IPv4アドレスを構成するビットが32ビットしかなく､

00:19.380 --> 00:23.070
4つしかないからだ｡ 20億通りのアドレスの組み合わせが可能｡ 

00:23.070 --> 00:26.430
今､ 私は4つを知っている｡  20億というと､ IPがたくさんあるように聞こえますが､

00:26.430 --> 00:28.950
APIPAアドレスやローカルホストアドレス､

00:28.950 --> 00:32.160
プライベートIPなど､ 部分的なものを丸ごと取り出してしまうと､

00:32.160 --> 00:42.810
サブネットを使い始める前に膨大な無駄が発生してしまい､ これが大きな問題となり､ IPv4内のネットワークアドレスが不足し始めたのです｡

00:42.810 --> 00:46.860
これは住所疲弊と呼ばれるもので､ 実際にあることだ｡ 

00:46.860 --> 00:49.260
実際､ 2019年11月､ 欧州､ 西アジア､

00:49.260 --> 00:51.810
旧ソ連の地域インターネットレジストリであるRIPE

00:51.810 --> 00:59.130
NCCとNASAは､ すでにIPv4アドレスのプールをすべて使い果たしている｡

00:59.130 --> 01:06.600
しかし幸運なことに､ インターネット技術タスクフォース（IETF）はすでに将来を見据え始めており､

01:06.600 --> 01:17.790
1995年にIPv6のビジョンを文書化したRFCでIPv6を標準として開発した｡

01:17.790 --> 01:25.290
さて､ IPv6は利用可能なアドレスの数という点で､ IPv4よりも大幅に改善されていることがお分かりいただけただろう｡

01:25.290 --> 01:28.710
IPv6では､ IPv4のように32ビットのアドレスを使うのではなく､

01:28.710 --> 01:32.100
128ビットのアドレスを使う｡

01:32.100 --> 01:35.490
これによって､ アドレス空間が格段に広くなる｡ 

01:35.490 --> 01:41.430
実際､ 340ウン千億のIPアドレスが得られる可能性がある｡

01:41.430 --> 01:42.930
これは､ 地球上のすべての男性､

01:42.930 --> 01:45.930
女性､ 子供のIPアドレスに相当する｡

01:45.930 --> 01:48.540
これは2の128乗である｡ 

01:48.540 --> 01:51.300
実際､ 地球上には非常に多くのIPアドレスが存在するため､

01:51.300 --> 01:56.250
一人一人の男女､ そして子供に対して何個ものIPアドレスが存在する｡

01:56.250 --> 02:01.230
さて､ 皆さんはIPv4からIPv6に移行したことを不思議に思うかもしれない｡

02:01.230 --> 02:03.090
バージョン5はどうなったのですか？

02:03.090 --> 02:05.370
なぜバージョン6に移行したのか？

02:05.370 --> 02:11.190
バージョン5は作られたが､ 公式なプロトコルや標準として完全に採用されることはなかった｡

02:11.190 --> 02:13.350
そのため､ 生産が開始されることはなかった｡ 

02:13.350 --> 02:17.970
その代わり､ バージョン5が実験的なプロトコルであったために開発されたコンセプトの多くが､

02:17.970 --> 02:21.870
IPv6が正式な標準になったときに持ち込まれた｡

02:21.870 --> 02:25.650
では､ IPv6の利点について話そう｡ 

02:25.650 --> 02:26.910
最大の利点のひとつは､

02:26.910 --> 02:31.350
128ビットアドレスのおかげでアドレス空間が格段に広くなったことだ｡

02:31.350 --> 02:32.460
さらにIPv6は､

02:32.460 --> 02:35.160
IPv4のブロードキャスト・データ・フロー・タイプを削除することで､

02:35.160 --> 02:38.730
ネットワークの効率も向上させた｡

02:38.730 --> 02:44.010
また､ IPv6にはパケットやデータグラムの断片化がないため､

02:44.010 --> 02:46.050
より安全である｡

02:46.050 --> 02:48.150
また､ 各パケットに一定のサイズのMTUがあるIPv4とは異なり､

02:48.150 --> 02:54.870
各セッション内でのディスカバリーの最大伝送単位もない｡

02:54.870 --> 02:57.030
IPv4では､ 最大伝送単位サイズより大きなパケットを送ると､

02:57.030 --> 03:02.400
実際にフラグメント化されてネットワーク上に送られる｡

03:02.400 --> 03:05.970
そして目的地に着くと､ 再び組み立てられて読まれる｡

03:05.970 --> 03:07.650
これは実はセキュリティ上のリスクだった｡ 

03:07.650 --> 03:11.460
また､ 余分な処理も必要となり､ インターネット接続速度が向上した現代のネットワークでは､

03:11.460 --> 03:17.070
非常に非効率的なやり方となったため､ 実際にネットワークが遅くなる可能性もあった｡

03:17.070 --> 03:21.900
そこでIPv6では､ フラグメンテーションを完全に廃止することにした｡

03:21.900 --> 03:24.480
IPv6が完全に受け入れられ､

03:24.480 --> 03:26.970
受け入れられるためには､ IPv4との後方互換性を確保し､

03:26.970 --> 03:38.630
IPv6とIPv4の両方が同じネットワーク上で共存できるようにしなければならない｡

03:38.700 --> 03:41.490
結局のところ､ IPv6が開発されリリースされたのは1990年代後半で､

03:41.490 --> 03:47.490
すでに世界中で多くのコンピューター・ネットワークが構築されていた｡

03:47.490 --> 03:51.960
だから､ 1日ですべてを入れ替えることは不可能だ｡

03:51.960 --> 03:56.730
ガス自動車から電気自動車への移行を考えてみよう｡

03:56.730 --> 04:00.420
これは､ 2020年代から2030年代にかけてずっと起こっていることだ｡

04:00.420 --> 04:07.710
2025年1月1日に､ もう誰もガソリン車を使うなというのは無理な話だ｡

04:07.710 --> 04:11.010
その日のうちにすべて電気自動車に置き換わる｡

04:11.010 --> 04:12.180
もし政府がそれをやろうとしたら､

04:12.180 --> 04:14.160
おそらく革命を起こすだろう｡ なぜなら､

04:14.160 --> 04:21.900
すでに多くの人々がガス自動車を所有し､ その自動車とそれを支えるインフラに膨大な資金と投資を行っているからだ｡

04:21.900 --> 04:26.250
そのため､ 一夜にしてすべてのガス自動車を置き換えることはできない｡

04:26.250 --> 04:28.680
その代わり､ 2030年か2040年までには､

04:28.680 --> 04:39.390
世界で販売される新車の多くが電気自動車として販売され､ ガス自動車は販売されなくなるだろう｡

04:39.390 --> 04:42.900
これとまったく同じことがIPv6でも起こっている｡ 

04:42.900 --> 04:47.010
そのため､ IPv6はIPv4とIPv6の両方を同じネットワーク上で共存させることを可能にし､

04:47.010 --> 05:01.080
これらのネットワークを実行する機器はデュアルスタックとして知られるようになる｡ これは単に､ 同じネットワーク機器上でIPv4プロトコルとIPv6プロトコルの両方を同時に実行できることを意味する｡

05:01.080 --> 05:04.410
デュアルスタックデバイスの場合､ クライアントがIPv6をサポートしていれば､

05:04.410 --> 05:08.760
ルータースイッチはIPv6を使用することを好み､ その方式で会話を行う｡

05:08.760 --> 05:11.370
デバイスがIPv6をサポートできない場合､

05:11.370 --> 05:16.380
デバイスはIPv4プロトコルを使って話をすることになる｡

05:16.380 --> 05:18.390
そうすれば､ 私はまだあなたをサポートできる｡ 

05:18.390 --> 05:20.850
もうひとつの方法はトンネリングと呼ばれるものだ｡ 

05:20.850 --> 05:24.780
これはIPv6がIPv4デバイス上にトンネルされる場所である｡ 

05:24.780 --> 05:29.580
これにより､ 古いIPv4ルーターでもIPv6トラフィックを伝送できるようになる｡

05:29.580 --> 05:31.710
IPv6は基本的に､ IPv6パケットをIPv4ヘッダーでカプセル化し､

05:31.710 --> 05:42.480
IPv6データをIPv4ルーターやすでに存在するその他のインフラで伝送するメカニズムとしてトンネル化される｡

05:42.480 --> 05:46.380
これは､ ソースとデスティネーション間にポイント・ツー・ポイントのトンネルを作り､

05:46.380 --> 05:48.450
その情報をカプセル化することで実現する｡

05:48.450 --> 05:51.630
これにより､ 分離されたIPv6クライアントとサーバーは､

05:51.630 --> 05:59.040
その間に存在するIPv4を使用するルーターやスイッチ・インフラをすべてアップグレードする必要なく通信できるようになる｡

05:59.040 --> 06:02.880
さて､ いつかはIPv4が完全に引退する日が来るかもしれない｡ 

06:02.880 --> 06:05.070
しかし､ 今のところ､ それは起こっていない｡ 

06:05.070 --> 06:07.440
そして個人的には､ 期待はしていない｡ 

06:07.440 --> 06:08.670
私が読んだいくつかの記事によると､

06:08.670 --> 06:11.160
IPv4は少なくとも2040年まで残るという予測があります｡

06:11.160 --> 06:20.640
従って､ ネットワーク技術者として当面の間､ IPv4とIPv6の両方を扱う方法を知っておく必要があるでしょう｡

06:20.640 --> 06:24.120
IPv6のもう一つの利点は､ ヘッダーが簡素化されていることだ｡ 

06:24.120 --> 06:26.850
そのため､ IPv4では12個あったフィールドが､

06:26.850 --> 06:29.430
IPv6では5個になり､ ヘッダーがスリム化され､

06:29.430 --> 06:33.630
ネットワーク上での送信効率が大幅に向上した｡

06:33.630 --> 06:37.920
では､ IPv6のヘッダーとはどのようなものなのだろうか？

06:37.920 --> 06:42.750
これからお見せしますが､ 試験のためにこれを暗記する必要はありません｡

06:42.750 --> 06:49.230
その代わり､ これはIPv4とIPv6で異なるフィールドを示したものである｡

06:49.230 --> 06:54.450
そして今､ IPv6がIPv4に比べてどれほどシンプルなものかがお分かりいただけただろう｡

06:54.450 --> 06:58.170
さて､ 試験のために理解しておかなければならないことに戻ろう｡

06:58.170 --> 07:01.590
例えば､ IPv6アドレスは実際にどのように見えるのか？

07:01.590 --> 07:04.590
長さが128ビットということは､

07:04.590 --> 07:13.410
2進数で書くと128個の1か0になるということだ｡

07:13.410 --> 07:16.680
さて､ IPv4でやったようにドット付き10進数表記を使うこともできるが､

07:16.680 --> 07:19.020
それでも128ビットすべてを表すのに16オクテットが必要なので､

07:19.020 --> 07:23.670
書き出すオクテット数は多くなる｡

07:23.670 --> 07:25.380
そこでIETFは､ この問題を解決するために､

07:25.380 --> 07:29.310
代わりに16進数を使うことを決定した｡

07:29.310 --> 07:34.980
16進数は16進数で､ 高校の代数の授業で習った覚えがある人もない人もいるだろう｡

07:34.980 --> 07:36.210
さて､ 16進数では､

07:36.210 --> 07:38.760
16進数の各桁は実際には4ビットである｡

07:38.760 --> 07:41.250
これにより､ 4桁の16進数を組み合わせてセグメントを構成することで､

07:41.250 --> 07:45.780
IPv6アドレスを表現できるようになる｡

07:45.780 --> 07:48.720
セグメントには16ビットが入る｡ 

07:48.720 --> 07:51.030
これは16進数の4桁で表される｡ 

07:51.030 --> 07:52.440
そしてコロンを加え､

07:52.440 --> 08:00.510
128ビットになるまでセグメントを増やし続ける｡

08:00.510 --> 08:03.510
これで合計32桁の16進数になるが､

08:03.510 --> 08:05.460
それでもかなり長い｡

08:05.460 --> 08:09.330
さて､ IPv6アドレスは128ビットで表現されるため､

08:09.330 --> 08:14.700
これらのセグメント内には32桁以上の16進数は存在しないことになる｡

08:14.700 --> 08:20.250
さて､ なぜ私はこの8つのセグメントの合計の長さを32桁以内と言ったのだろうか？

08:20.250 --> 08:22.800
32桁×1桁4ビットで128ビットになるのだから､

08:22.800 --> 08:28.290
16進数32桁でいいのでは？

08:28.290 --> 08:35.880
というのも､ IPv6では､ 非常に長いIPv6アドレスを簡略化するための省略形が使えるからだ｡

08:35.880 --> 08:40.650
速記法のルールは本当に重要だ｡

08:40.650 --> 08:43.020
つまり､ セグメントに4つのゼロがある場合､

08:43.020 --> 08:47.310
代わりに1つのゼロを入れて､ 先頭のゼロを取り除くことができる｡

08:47.310 --> 08:55.790
例えば､ 私が2018:0000:0000:0000:0000:0000:4815:54aeという本当に長いIPv6アドレスを持っているとしよう｡

09:04.470 --> 09:09.810
単純なルールを使えば､ ゼロが複数あるセグメントをすべてゼロひとつに置き換えることができる｡

09:09.810 --> 09:14.810
これで2018:0:0:0:0:4815:54aeとなる｡ 

09:19.590 --> 09:22.680
これで16進数の桁数が32から17に減ったので､

09:22.680 --> 09:26.790
長さは約半分になった｡

09:26.790 --> 09:29.520
我々は良くなってきているが､ そこで止まるつもりはない｡ 

09:29.520 --> 09:30.710
IPv6略語の世界では､

09:30.710 --> 09:33.000
もう一つ使えるルールがある｡

09:33.000 --> 09:35.280
このルールは､ 複数のセグメントにすべてゼロが入っていて､

09:35.280 --> 09:36.840
他の16進数で表されていない場合は､

09:36.840 --> 09:44.160
ダブルコロンでまとめて､ すべてのゼロを取り除くことができるというものだ｡

09:44.160 --> 09:45.420
さて､ このルールは特別で､

09:45.420 --> 09:50.460
IPv6アドレスの中でダブルコロンが使えるのは1回だけだからだ｡

09:50.460 --> 09:52.530
ダブルコロンのルールを使えば､

09:52.530 --> 10:07.450
2018:0:0:0:0:0:4815:54aeを要約すると､ 5つのゼロをすべて取り除き､ ダブルコロンに置き換えることで､ 2018::4815::54aeを得ることができる｡

10:10.290 --> 10:13.020
だから､ 32桁の16進数から17桁の16進数へ､

10:13.020 --> 10:21.690
そして今は17桁から12桁へと､ ずっと小さく､ ずっと作業しやすくなった｡

10:21.690 --> 10:24.240
この省略形がいかに役に立つか､ おわかりいただけただろう｡ 

10:24.240 --> 10:28.950
では､ どうやってIPv6アドレスとIPv4アドレスを見分けるのですか？

10:28.950 --> 10:32.130
さて､ 最初の方法は､ IPv4が何であるかを見ることだ｡ 

10:32.130 --> 10:36.990
IPv4は常に4オクテットのドット付き10進数表記を使う｡

10:36.990 --> 10:38.490
一方､ IPv6は数字の間にコロンを使い､

10:38.490 --> 10:42.450
16進数で表記される｡

10:42.450 --> 10:44.280
さて､ 試験当日に出題されるかもしれない問題のひとつに､

10:44.280 --> 10:49.080
IPv6アドレスを見たときにそれを識別するというものがある｡

10:49.080 --> 10:53.700
例えば､ 次のうちどれがIPv6アドレスですか？

10:53.700 --> 10:55.410
これはあなたに尋ねるべき公正な質問だろう｡ 

10:55.410 --> 10:59.280
192のような選択肢も出てくるだろう｡  168. 1. 1､ これはIPv4アドレスなので､

10:59.280 --> 11:01.830
それではないことはわかっている｡

11:01.830 --> 11:12.000
12:34:56:78:90:AB､ または1234::5678::90ABとなる｡

11:12.000 --> 11:17.010
ちょっと待って､ 今言った最後の2つは本当に似ているよね？

11:17.010 --> 11:20.310
そうだが､ 有効なIPv6アドレスは1つだけだ｡ 

11:20.310 --> 11:21.630
どれだかわかる？

11:21.630 --> 11:24.000
ほとんどの学生はここで混乱するからだ｡ 

11:24.000 --> 11:28.020
さて､ ここで2つ目の選択肢は､ 実はIPv6アドレスではない｡ 

11:28.020 --> 11:29.820
代わりにMACアドレスだ｡ 

11:29.820 --> 11:31.260
レイヤー2の物理アドレスであるMACアドレスは､

11:31.260 --> 11:37.230
常に12桁の16進数で､ コロンで区切られていることを覚えておいてほしい｡

11:37.230 --> 11:38.370
通常､ 2桁ずつ6つのグループに分け､

11:38.370 --> 11:43.200
それぞれをコロン1つで区切ります｡

11:43.200 --> 11:46.080
一方､ IPv6アドレスは常に4桁ずつのセグメントで記述され､

11:46.080 --> 11:52.500
ダブルコロンがない限り常に16セグメントでなければならない｡

11:52.500 --> 11:58.020
この例では､ 3つ目のオプションの最初のセグメントと2つ目のセグメントの間にダブルコロンがあります｡

11:58.020 --> 12:03.450
このアドレスの1番目と2番目のセグメントの間のゼロをすべて取り除いたので､

12:03.450 --> 12:08.520
IPv6アドレスであることがわかる｡

12:08.520 --> 12:11.790
つまり､ IPv6アドレスのように見えるものを数えてみて､

12:11.790 --> 12:15.480
それが12桁､ 正確に12桁の16進数で､ シングルコロンで区切られていて､

12:15.480 --> 12:17.040
ダブルコロンがどこにも見当たらない場合､

12:17.040 --> 12:18.840
それはMACアドレスであって､

12:18.840 --> 12:22.140
IPv6アドレスではない｡

12:22.140 --> 12:25.860
そうでなければ､ このように見えて16進数が含まれていれば､

12:25.860 --> 12:29.190
試験当日はIPv6アドレスになる｡

12:29.190 --> 12:31.440
試験では､ IPv6アドレスがどのようなものかを認識し､

12:31.440 --> 12:39.960
ゼロを取り除いてダブルコロンのトリックを使って1つにまとめることができればよい｡

12:39.960 --> 12:45.000
この2つができれば､ 試験当日のIPv6アドレッシングは問題ないだろう｡

12:45.000 --> 12:47.280
さて､ IPv6アドレスに関しては､

12:47.280 --> 12:50.100
ユニキャストアドレス､ マルチキャストアドレス､

12:50.100 --> 12:54.210
エニーキャストアドレスの3種類のアドレスが使用できる｡

12:54.210 --> 12:56.640
IPv6がIPv4と大きく異なる興味深い点は､

12:56.640 --> 13:03.900
クライアントの1つのインターフェースに複数のIPv6アドレスを割り当てることができることだ｡

13:03.900 --> 13:05.730
そしてこれらの割り当ては､ ユニキャスト､

13:05.730 --> 13:10.290
マルチキャスト､ エニーキャストという3つの異なるタイプのいずれかを混在させることができる｡

13:10.290 --> 13:14.910
そのため､ ワークステーションやノートパソコンにネットワーク・インターフェース・カードが1枚しかなくても､

13:14.910 --> 13:22.140
その1枚のカードに複数のIPv6アドレスや異なるタイプのIPv6アドレスが割り当てられている可能性がある｡

13:22.140 --> 13:25.950
ユニキャストアドレスは､ 1つのインターフェイスを識別するために使われる｡

13:25.950 --> 13:30.930
これらはグローバルルーティングされたユニキャストアドレスとリンクローカルアドレスに分けられる｡

13:30.930 --> 13:32.760
グローバルにルーティングされたユニキャストアドレスは､

13:32.760 --> 13:39.600
A､ B､ Cクラスのユニキャストアドレスを使ったIPv4のパブリックアドレスと似ている｡

13:39.600 --> 13:44.220
さて､ IPv6では､ グローバルルーティングされたユニキャストアドレスは､

13:44.220 --> 13:49.050
常に最初のセグメントが2000-3999で始まる｡

13:49.050 --> 13:55.770
さて､ 最初のセグメントとして2000-3999が表示された場合､ これはグローバルにルーティングされたユニキャストアドレスであることを意味します｡

13:55.770 --> 14:03.050
例えば､ 2584:0db8:8583:1234:5678:882e:0370:7334のIPv6アドレスは､

14:10.800 --> 14:14.010
最初のセグメントに2584が含まれているため､

14:14.010 --> 14:17.070
ユニキャストアドレスとしてグローバルルーティングされ､

14:17.070 --> 14:20.670
2000と3999の間にある｡

14:20.670 --> 14:22.650
一方､ リンクローカルアドレスは､ ローカルユースアドレスとも呼ばれ､

14:22.650 --> 14:28.020
IPv4におけるプライベートIPアドレスのように使われる｡

14:28.020 --> 14:32.097
IPv6のリンクローカルアドレスはローカルエリアネットワークでのみ使用でき､

14:32.097 --> 14:38.940
IPv6アドレスの最初のセグメントは常にFE80で始まる｡

14:38.940 --> 14:44.100
現在､ IPv6システムが起動するときはいつでも､ グローバルにルーティング可能なアドレスがすでに手動で設定されていたり､

14:44.100 --> 14:47.070
DHCPのようなコンフィギュレーション・プロトコルで取得されていたとしても､

14:47.070 --> 14:53.700
そのシステム上の各IPv6インターフェースにリンクローカル・アドレスを実際に作成するようになっています｡

14:53.700 --> 14:56.340
そのために､ SLAAC（ステートレス・アドレス自動コンフィギュレーション､

14:56.340 --> 15:00.840
S-L-A-A-C）として知られるものを使用する｡

15:00.840 --> 15:02.610
ステートレス自動コンフィギュレーションでは､

15:02.610 --> 15:08.880
ホストはDHCPのような集中型サーバーからアドレスやその他のコンフィギュレーション情報を取得する必要はありません｡

15:08.880 --> 15:11.640
その代わりに､ リンクローカルアドレスを独自に割り当て､

15:11.640 --> 15:13.050
そのリンクローカルアドレスの一意性をテストし､

15:13.050 --> 15:15.420
リンクローカルアドレスを自分自身に割り当て､

15:15.420 --> 15:22.680
ルーターに連絡し､ 自動コンフィギュレーションの進め方についてノードに指示を与えることができる｡

15:22.680 --> 15:27.090
さらに､ 使用したいグローバル・ユニキャスト・アドレスを設定することもできる｡

15:27.090 --> 15:29.520
EUI-64とネイバー・ディスカバリー・プロトコルの話を始めるので､

15:29.520 --> 15:41.580
この概念についてもう少し深く掘り下げていくことになるのですが､ これらのプロセスはどちらもSLAACとして知られるステートレスアドレス自動設定プロトコルで使用されるものだからです｡

15:41.580 --> 15:43.680
次にマルチキャストアドレス｡ 

15:43.680 --> 15:47.100
現在､ マルチキャストアドレスは､ パケットをマルチキャストアドレスに送信し､

15:47.100 --> 15:49.710
グループ内のすべてのインターフェイスに配信できるように､

15:49.710 --> 15:52.680
インターフェイスのグループを識別するために使用されています｡

15:52.680 --> 15:59.460
IPv6では､ マルチキャストアドレスは常に最初のセグメント内の最初の2桁としてFFを含む｡

15:59.460 --> 16:02.280
IPv6アドレスの先頭にFFがあったら､

16:02.280 --> 16:04.800
そのマルチキャストを覚えておこう｡

16:04.800 --> 16:08.700
最後のタイプのアドレスは､ エニーキャスト・アドレスとして知られている｡

16:08.700 --> 16:11.610
エニーキャストアドレスは､ パケットをセットのどのメンバーにも送ることができるように､

16:11.610 --> 16:14.400
インターフェースのセットを識別するために使われる｡

16:14.400 --> 16:18.060
エニーキャストアドレスは､ 実際にはユニキャストアドレス空間から割り当てられる｡

16:18.060 --> 16:19.620
つまり､ IPv6アドレスを見ただけでは､

16:19.620 --> 16:25.410
そのIPv6アドレスがユニキャストかエニーキャストかを判断することはできない｡

16:25.410 --> 16:28.050
さて､ マルチキャストやリンクローカルを見る場合､

16:28.050 --> 16:29.790
これを行う非常に簡単な方法があるが､

16:29.790 --> 16:33.870
ユニキャストとエニーキャストを見分ける簡単な方法はない｡

16:33.870 --> 16:36.990
さて､ SLAAC（ステートレスアドレス自動設定プロセス）について､

16:36.990 --> 16:40.140
もう少し話を戻そう｡

16:40.140 --> 16:42.090
今言ったように､ IPv6ではSLAACと呼ばれる自動設定プロセスがあり､

16:42.090 --> 16:56.360
これを使用してインターフェイスが現在置かれているネットワークを検出し､ EUI-64と呼ばれるプロセスを使用して､ MACアドレスに基づいて独自のホストIDを選択できるようにします｡

16:56.550 --> 17:07.967
さて､ このEUI-64（拡張固有識別子）プロセスによって､ ホストはEUI-64と呼ばれる一意の64ビットIPv6インターフェース識別子を自らに割り当てることができるようになる｡

17:09.180 --> 17:15.480
さて､ このEUI-64フォーマットのアドレスは､ インターフェースの48ビットのMACアドレスを使って得られる｡

17:15.480 --> 17:19.260
MACアドレスはまず2つの24ビット部分に分けられる｡ 

17:19.260 --> 17:25.170
MACアドレスの前半には､ OUI（組織固有識別子）が含まれる｡

17:25.170 --> 17:29.010
そして後半には､ 特定のネットワーク・インターフェイス・カードが入っている｡

17:29.010 --> 17:35.730
さて､ その間に16ビットの16進数値FFFEを突っ込む｡

17:35.730 --> 17:44.760
こうすれば､ 24ビット､ 16ビット､ 24ビットを組み合わせて64ビットのEUIアドレスを得ることができる｡

17:44.760 --> 17:49.860
これで､ ネットワーク上のインターフェイスを識別するのに必要な64ビットが揃った｡

17:49.860 --> 17:52.320
そして､ インターフェイスは自動検出を使って､

17:52.320 --> 18:00.960
そのインターフェイスが存在するネットワークを決定し､ IPv6アドレスのネットワーク部分を追加する｡

18:00.960 --> 18:02.940
ここで､ ネットワークを表す最初の64ビットを､

18:02.940 --> 18:05.580
MACアドレスから作成したEUI-64アドレスの64ビットの前に置き､

18:05.580 --> 18:14.550
グローバルにルーティング可能なユニキャストIPv6アドレスを作成します｡

18:14.550 --> 18:20.700
このMACアドレスを使って､ グローバルにルーティング可能なアドレスを作成する｡

18:20.700 --> 18:25.560
DHCPはIPv6でも使用できる｡

18:25.560 --> 18:29.520
その場合､ DHCPv6プロトコルを使う必要がある｡ 

18:29.520 --> 18:34.650
これによって､ DHCPv6サーバーからDHCPに自動的に割り当てることができるようになります｡

18:34.650 --> 18:41.430
しかし､ EUI-64による自動コンフィギュレーション・プロセスはすでにIPv6プロトコルにデフォルトで組み込まれているので､

18:41.430 --> 18:43.230
DHCPv6を使う必要はない｡

18:44.280 --> 18:48.870
しかし､ DHCPv6を使いたい場合は､ SLAACの自動設定プロトコルを使わせる代わりに､

18:48.870 --> 18:55.170
各インターフェイスが取得するアドレスを割り当てることができます｡

18:55.170 --> 19:00.930
今言ったように､ IPv6はデフォルトでMACアドレスに基づいて自分のアドレスを選び､

19:00.930 --> 19:03.480
それからNDP（近隣発見プロトコル）というものを使って､

19:03.480 --> 19:12.630
MACアドレスに基づいてネットワーク上の他のレイヤー2アドレスを知り､ それから自分のホストIDを選びます｡

19:12.630 --> 19:15.630
試験のためにNDPを深く知る必要はありませんが､ IPv6ではNDP（Neighbor

19:15.630 --> 19:17.850
Discovery Protocol）が使用され､

19:17.850 --> 19:25.683
ルーター広告や近隣発見から多くの機能を取り出し､ 代わりに処理してくれることを理解しておく必要があります｡
