してみるテストロゴ
Apache 2.4系でHTTP/2サーバを構築してみるテスト。

IPv6の設定の確認(Windowsクライアント編)

さて、UQ-WiMAX2から、IPv6のアドレスが、クライアントのPCまで割り当てられてるか確認します。

このページは、既にクライアントPCをIPv6に接続する設定が済んでいることを前提としています。

クライアントのIPv6アドレスの確認

WindowsのクライアントPCのIPv6アドレスを確認するためには、コマンドプロンプトから、以下のコマンドを打ちます。

いくつかネットワークインタフェースがあると思いますが、WiFiルータであれば、「Wireless LAN adapter ワイヤレス ネットワーク接続」を探します。

C:\Users\anonymous>ipconfig -all

Windows IP 構成
(…省略…)
Wireless LAN adapter ワイヤレス ネットワーク接続:

   接続固有の DNS サフィックス . . . . .:
   説明. . . . . . . . . . . . . . . . .: Intel(R) Dual Band Wireless-AC 7260
   物理アドレス. . . . . . . . . . . . .: 5C-C5-D4-XX-XX-XX
   DHCP 有効 . . . . . . . . . . . . . .: はい
   自動構成有効. . . . . . . . . . . . .: はい
   IPv6 アドレス . . . . . . . . . . . .: 2001:268:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX(優先)
   一時 IPv6 アドレス. . . . . . . . . .: 2001:268:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX(優先)
   リンクローカル IPv6 アドレス. . . . .: fe80::XXXX:XXXX:XXXX:XXXX%10(優先)
   IPv4 アドレス . . . . . . . . . . . .: 192.168.179.3(優先)
   サブネット マスク . . . . . . . . . .: 255.255.255.0
   リース取得. . . . . . . . . . . . . .: 2016年5月XX日 XX:XX:XX
   リースの有効期限. . . . . . . . . . .: 2016年5月XX日 XX:XX:XX
   デフォルト ゲートウェイ . . . . . . .: fe80::XXXX:XXXX:XXXX:XXXX%10
                                          192.168.179.1
   DHCP サーバー . . . . . . . . . . . .: 192.168.179.1
   DHCPv6 IAID . . . . . . . . . . . . .: XXXXXXXX
   DHCPv6 クライアント DUID. . . . . . .: XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX
   DNS サーバー. . . . . . . . . . . . .: 192.168.179.1
   NetBIOS over TCP/IP . . . . . . . . .: 有効

「IPv6アドレス」が無ければ、IPv6のネットワークには接続できていないので、もういちど設定を見直すか、クライアントPCの再起動を試してください。

(リンクローカルアドレスは、ネットワークの接続できていなくとも表示されることがありますので、単なる「IPv6」アドレスがあるか、を見てください。)

Windowsの管理者権限があれば、ipconfig -renewといったコマンドで、「IPv6アドレス」等を取得できる可能性もあります。

ここでは、IPv6のアドレスが、3つ割り当てられていることがわかります。

「IPv6アドレス」、「一時IPv6アドレス」、「リンクローカルIPv6アドレス」の3つです。

このうち、「IPv6アドレス」、「一時IPv6アドレス」は、いわゆる「グローバルユニキャストアドレス」、もしくは単に、「グローバルアドレス」と呼ばれる、外部との接続に利用できるアドレスが割り当てられています。

特に、「一時IPv6アドレス」は、取得しても、DNSに逆引き登録されないなど、匿名性が高くなるアドレスです。クライアントは、積極的にこのアドレスを利用して通信します。

「リンクローカルIPv6アドレス」は、外部との接続には利用できないアドレスです。このアドレスは、LAN内部の通信に利用します。

このように、リンクローカルIPv6アドレスは、IPv4のプライベートアドレスに相当する役割を担うほか、ルータとの通信、すなわち、デフォルトルート(デフォルトゲートウェイ)のアドレスとしても、リンクローカルIPv6アドレスを利用します。

クライアントのIPv6動作確認

ということで、pingで動作確認してみます。

コマンドラインから、以下のコマンドを打ってみてください。

-6オプションはIPv6の使用を強制します。

C:\WINDOWS\system32>ping -6 www.google.com

www.google.com [2404:6800:4004:80f::2004]に ping を送信しています 32 バイトのデ ータ:
2404:6800:4004:80f::2004 からの応答: 時間 =54ms
2404:6800:4004:80f::2004 からの応答: 時間 =54ms

2404:6800:4004:80f::2004 の ping 統計:
    パケット数: 送信 = 2、受信 = 2、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
ブラウザから確認する場合は、コチラで便利です。

IPv4アドレスと、IPv6アドレスのセキュリティーの違い

IPv4は、未使用のアドレス数が減少し、既に枯渇している状況でもあり、一般の利用者のホストに割り当てられるIPv4アドレスは、プライベートアドレスと呼ばれる、外部からのアクセスが難しいアドレスが割り当てられてきました。

上記のipconfigの結果もIPv4については、192.168から始まる、プライベートアドレスが割り当てられています。

IPv4のプライベートアドレスを割り当てられたホストが、グローバルアドレスのホストと通信するためには、ルータがNAT変換と呼ばれる処理を行う必要があるため、直接外部から接続するためには、ルータに設定を追加するなどの操作が必要となります。その分、外部からの直接接続が難しいため、セキュリティー的にはメリットの部分がありました。

一方、IPv6では当面、アドレスが枯渇する心配はないので、グローバルアドレスと呼ばれる、外部から何ら変換処理を行うことなく、接続できるアドレスが割り当てられます。このため、プライベートアドレスよりは、外部からの接続がしやすいアドレスが割り当てられることになります。そのため、IPv4のプライベートアドレスと比べて、セキュリティー的なメリットが失われています。

一般のパソコンはともかく、コピーFAXプリンタの複合機などは、IPv4のプライベートアドレスのネットワークに設置されることを前提としている部分があるため、大学など、IPv4のクラスB(/16)の割り当てを受けた、グローバルアドレスを潤沢に持っている組織で、よく起きていた事件を見て頂ければ、なにが起こるか想像できると思います。

そのため、IPv6では、ファイアウォールによるトラフィックフィルタは必須だとご理解いただけると思います。

その代わり、IPv6は、NAT変換にまつわるプロトコルの制限がなくなったり、NAT変換しない分、ルータの処理が軽くなります。

このように、一長一短ではありますが、クライアントのPCへの直接接続ができないように、ファイアウォール設定を厳しめにしておくことに越したことはありません。

さて、クライアントのPCをIPv6に接続するだけならこれでOKですが、この3つのアドレスの割り当て処理を見ていきましょう。

IPv6アドレスの自動設定

クライアントのPCには、今まで通り、IPv4を利用していたときと同じ感覚で、アドレスの割り当てが自動で行われることは、前述のとおりです。

ただ、この自動的なアドレスの割り当ては、IPv4の時と、大きく異なるところがあります。

IPv6にも、IPv4のように、DHCPサーバから、グローバルアドレスを割り当てることができますが、DhCPv6では、デフォルトルートの情報は提供されません。

IPv6では、デフォルトルートの情報は、DHCPサーバ(WiFiルータ内蔵のものを含む)ではなく、ルータのIPv6対応機能から取得します。

以下の図は、IPv4とIPv6の自動設定の違いです。

IPv4とIPv6の自動設定の違い
[拡大]

このように、IPv6では、自動設定の主役は、ルータ広告(RA)になります。

また、IPv6では、リンクローカルスコープと、グローバルスコープにそれぞれIPv6アドレスが割り当てられます。

つまり、複数のアドレスを使い分けます。

さらに、ルータ広告(RA)から割り当てられたプイフィックスから生成したグローバルアドレスとは別のアドレスを、DHCPv6から取得する、といったことも考えらえます。

また、DNSサーバの情報は、当初ルータ広告(RA)では伝達できませんでした。

このため、DNSサーバへの参照が必要な場合は、DHCPv6しか選択肢がありませんでした。これについては、ルータ広告(RA)のDNS自動設定オプション((RFC 6106)によって、ルータ広告(RA)でも伝達できるようになりました。ただ、Windowsではまだ対応していないため、本格的に利用するにはもう少し待つ必要があります。

そのため、ルータ広告(RA)の自動設定を使った環境ではリンクローカルアドレスにかかわる設定をRAで行い、DHCPv6や設定ファイルで、グローバルアドレスにかかわる設定するというのがオーソドックスな設定方法になります。

ルータ広告(RA)のDNS自動設定オプション(RFC 6106)に対応したOSが増えると、DHCPv6と組み合わせたステートフルよりは、RAのみのステートレスで設定する環境が増えるかもしれませんが、Windowsの対応待ちでしょうか。

ただ、WindowsもIPv4のDHCPから、DNSサーバを取得できれば、それを利用して、IPv6アドレスを取得する「AAAA」レコードをとってくるので、IPv6のステートレスでも、普通に使えると言えば使えます。

ルータ広告によるアドレス設定(ステートレスアドレス自動設定:SLAAC)

WX01を使うと、IPv6アドレスと一時IPv6アドレスの、2つのグローバルユニキャストアドレスが割り当てられましたが、これらは、DHCPv6ではなく、ルータ広告(RA)によって設定されたアドレスです。

(WX01から割り当てられるアドレスが、DHCPv6からのものではないことは、後ほど説明します。)

まずホストは、リンクローカルスコープで通信するためのリンクローカルIPv6アドレスを生成します。

リンクローカルIPv6アドレスは、ホストが、自身のインタフェースIDをMACアドレスやランダム数値から生成して、リンクローカルプリフィックス(FE80::/10)と組み合わせて生成します。

このアドレスから、ネットワークに、「Router Solicitation(RS)」パケットを全ルータ宛のマルチキャストで送ると、ルータから、「Router Advertisement(RA)」がかえってきます。このパケットの送信元アドレスが、デフォルトゲートウェイのアドレスになります。

さらに、「ルータ広告(Router Advertisement(RA))」には、リンクローカルスコープ以外のネットワークプリフィックス(つまりグローバルスコープのネットワークプリフィックス)が含まれます。

C:\Users\anonymous>ipconfig -all

Windows IP 構成
(…省略…)
Wireless LAN adapter ワイヤレス ネットワーク接続:

   接続固有の DNS サフィックス . . . . .:
   説明. . . . . . . . . . . . . . . . .: Intel(R) Dual Band Wireless-AC 7260
   物理アドレス. . . . . . . . . . . . .: 5C-C5-D4-XX-XX-XX
   DHCP 有効 . . . . . . . . . . . . . .: はい
   自動構成有効. . . . . . . . . . . . .: はい
   IPv6 アドレス . . . . . . . . . . . .: 2001:268:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX(優先)
   一時 IPv6 アドレス. . . . . . . . . .: 2001:268:XXXX:XXXX:ZZZZ:ZZZZ:ZZZZ:ZZZZ(優先)
   リンクローカル IPv6 アドレス. . . . .: fe80::XXXX:XXXX:XXXX:XXXX%10(優先)
   IPv4 アドレス . . . . . . . . . . . .: 192.168.179.3(優先)
   サブネット マスク . . . . . . . . . .: 255.255.255.0
   リース取得. . . . . . . . . . . . . .: 2016年5月XX日 XX:XX:XX
   リースの有効期限. . . . . . . . . . .: 2016年5月XX日 XX:XX:XX
   デフォルト ゲートウェイ . . . . . . .: fe80::YYYY:YYff:feYY:YYYY%10
                                          192.168.179.1
   DHCP サーバー . . . . . . . . . . . .: 192.168.179.1
   DHCPv6 IAID . . . . . . . . . . . . .: XXXXXXXX
   DHCPv6 クライアント DUID. . . . . . .: XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX
   DNS サーバー. . . . . . . . . . . . .: 192.168.179.1
   NetBIOS over TCP/IP . . . . . . . . .: 有効
(…省略…)

上記、WX01を利用した環境のipconfigの結果に、「自動構成有効」に「はい」と入っていれば、ルータ広告(RA)を使って、少なくとも、デフォルトゲートウェイが設定されていることを意味します。

つまり、ルータ広告(RA)の送信元ルータのアドレスをデフォルトゲートウェイに設定します。

デフォルトゲートウェイのYYYY:YYff:feYY:YYYYの部分はWX01のMACアドレスをEUI-64で64ビットに変換した数値が入ります。

ルータ広告(RA)には、追加のプリフィックス情報を設定することができ、グローバルスコープのネットワークプリフィックスが含まれることがあります。これからグローバルアドレスを設定することができます。

ここでは、ルータ広告の中に、ネットワークプリフィックスとして、2001:268:XXXX:XXXX:といったプリフィックスをもつ、グローバルスコープのIPv6アドレスと、IPv6一時アドレスが割り当てられています。

ルータ広告の設定に基づくDHCPv6の動作

ルータ広告(RA)による、アドレスの取得が済むと、RAのフラグから、DHCPv6サーバからもアドレスやその他情報を取得するか確認します。

このフラグの内容でDHCPv6サーバへの要求が異なります。

Mフラグ(Managed Flag)

MフラグがONの場合、DHCPv6サーバから、IPv6アドレスを取得します。

MフラグがOFFなら、RAのリンクローカルだけを使用します。

MフラグがONのことを「ステートフル自動設定」と呼びます。

OFF、つまり、DHCPv6を使わずに、RAだけでアドレスを設定することを「ステートレス自動設定」と呼びます。

 

Oフラグ(Other Config Flag)

OフラグがONの場合、DHCPv6サーバから、IPv6アドレス以外のパラメータ(DNSサーバの情報)も取得します。

同様の情報はRAから取得できるオプションがありますがWindowsは、このDNSオプション(RFC 6106)には、未対応のようです。

従って、Windowsに対して、自動設定でDNSサーバの情報を送ろうとすると、OフラグをONにして、DHCPv6を使うか、IPv4のDHCPから割り当てられたDNSサーバを使用することになります。

 

WX01のルータ広告(RA)は、少なくともMフラグがOFFなので、ルータ広告(RA)によるステートレス自動設定をおこなっています。

WX01が配下のクライアントPC(ホスト)に対して、ステートレス自動設定を行うためには、少なくとも委任(PD:Prefix Delegation)が行われていないといけないので、WX01へのIPv6アドレスの割り当ては、プリフィックス/64のDHCPv6-PD(Prefix Delegation)で行われているようです。

ルータ広告で取ってきたアドレスか、DHCPv6で取ってきたアドレスか?

さきほど、PCが、WX01から取ってきたアドレスは、DHCPv6ではなく、ルータ広告(RA)から生成したものだと書きましたが、以下のコマンドからそれが判ります。

C:\Users\anonymous>ipconfig -all

Windows IP 構成
(…省略…)
Wireless LAN adapter ワイヤレス ネットワーク接続:

   接続固有の DNS サフィックス . . . . .:
   説明. . . . . . . . . . . . . . . . .: Intel(R) Dual Band Wireless-AC 7260
   物理アドレス. . . . . . . . . . . . .: 5C-C5-D4-XX-XX-XX
   DHCP 有効 . . . . . . . . . . . . . .: はい
   自動構成有効. . . . . . . . . . . . .: はい
   IPv6 アドレス . . . . . . . . . . . .: 2001:268:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX(優先)
   一時 IPv6 アドレス. . . . . . . . . .: 2001:268:XXXX:XXXX:ZZZZ:ZZZZ:ZZZZ:ZZZZ(優先)
   リンクローカル IPv6 アドレス. . . . .: fe80::XXXX:XXXX:XXXX:XXXX%10(優先)
   IPv4 アドレス . . . . . . . . . . . .: 192.168.179.3(優先)
   サブネット マスク . . . . . . . . . .: 255.255.255.0
   リース取得. . . . . . . . . . . . . .: 2016年5月XX日 XX:XX:XX
   リースの有効期限. . . . . . . . . . .: 2016年5月XX日 XX:XX:XX
   デフォルト ゲートウェイ . . . . . . .: fe80::YYYY:YYff:feYY:YYYY%10
                                          192.168.179.1
   DHCP サーバー . . . . . . . . . . . .: 192.168.179.1
   DHCPv6 IAID . . . . . . . . . . . . .: XXXXXXXX
   DHCPv6 クライアント DUID. . . . . . .: XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX
   DNS サーバー. . . . . . . . . . . . .: 192.168.179.1
   NetBIOS over TCP/IP . . . . . . . . .: 有効
(…省略…)

ipconfigでは、わかりにくいのですが、IPv6アドレスの直後の行に「リース取得」と、「リースの有効期限」の表示がないことから、DHCPv6を利用していないとわかります。

もうすこしわかりやすく、DHCPを利用しているかは、以下のコマンドで確認できます。

WX01のルータを使用した場合
C:\Users\anonymous>netsh interface ipv6 show addresses
(…省略…)

インターフェイス 10: ワイヤレス ネットワーク接続

アドレス種類  DAD 状態    有効期間   優先有効期間 アドレス
------------  ----------- ---------- ------------ ---------------------
Public     設定                  2h         1h 2001:268:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX
Temporary  設定                  2h         1h 2001:268:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX
その他        設定            infinite   infinite fe80::YYYY:YYff:feYY:YYYY%10
(…省略…)

アドレス種類に「DHCP」の表示がないので、「IPv6アドレス(Public)」と、「一時IPv6アドレス(Temporary)」の2つは、ルータ広告(RA)から生成したアドレスです。有効期間はいずれも2時間、優先有効期間は1時間です。

リンクローカルのアドレスは、自身が生成したものですので、有効期限が無限(infinite)のようです。

ちなみに、DHCPv6からの割り当てがあると、以下のように表示されます。

CiscoのルータでDHCPv6を使用した場合
C:\Users\anonymous>netsh interface ipv6 show addresses
(…省略…)

インターフェイス 10: ワイヤレス ネットワーク接続

アドレス種類  DAD 状態    有効期間   優先有効期間 アドレス
------------  ----------- ---------- ------------ ---------------------
Public     設定         29d23h59m5s 6d23h59m5s 240d:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX
Dhcp       設定         1d23h56m20s  23h56m20s 240d:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX
Temporary  設定         6d23h56m19s  23h51m55s 240d:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX
その他        設定            infinite   infinite fe80::YYYY:YYff:feYY:YYYY%10
(…省略…)

補足すると、ルータ広告に、グローバルアドレスがあり、ここから、PublicとTemporary(一時アドレス)を生成しています。

このように、ルータ広告(RA)によるアドレスに加えて、DHCPv6からアドレスを割り当てることができます。

DHCPv6で取ってきたDNSサーバ情報の確認

DHCPv6によって取得したDNSサーバの情報については、以下のコマンドで確認できます。

WX01を使用した場合
C:\Users\anonymous>netsh interface ipv6 show dnsservers
(…省略…)

インターフェイスの構成 "ワイヤレス ネットワーク接続"
    DHCP で構成された DNS サーバー:  なし
    次のサフィックスで登録します:           プライマリのみ
(…省略…)

ということで、少なくともDHCPv6からのものは使っていないようです。

ちなみに、DHCPv6からDNSサーバの情報を取得すると以下の表示になります。

CiscoのルータでDHCPv6を使用した場合
C:\Users\anonymous>netsh interface ipv6 show dnsservers
(…省略…)

インターフェイスの構成 "ワイヤレス ネットワーク接続"
    DHCP で構成された DNS サーバー:  240d:XXXX:XXXX:XXXX::XX
                                     240d:XXXX:XXXX:XXXX::XX
    次のサフィックスで登録します:           プライマリのみ

(…省略…)

どうも、Windowsは、ルータ広告(RA)のDNSオプション(RFC 6106)に対応していないことと、WX01からのアドレス配布方法が、ルータ告知のみのようなので、ウチの環境(WX01経由)では、DNSサーバとして、IPv4のものを利用しているようです。

WX01には複数のホストを接続することができるので、WX01がルータ広告(RA)でのアドレス配布を行っている以上、プロバイダから、DHCPv6-PDを使って、WX01にIPv6アドレスの委任が行われていると思われます。

クライアントホストを使う場合は、DHCPv6-PDを知らなくてもいいのですが、サーバを設置するようなネットワークを構築するに当たっては、このDHCPv6-PDについて知っておく必要があります。

次に、このDHCPv6-PD(Prefix Delegation)を説明します。

NEXT >> DHCPv6-PDを使ったサーバの設定

©Copyrights 2015-2023, non-standard programmer

このサイトは、あくまでも私の個人的体験を、綴ったものです。 軽く参考程度にご利用ください。