連載
» 2013年03月14日 18時54分 UPDATE

Windows管理者のためのIPv6入門:第5回 IPv6アドレスをDHCPで割り当てる (1/2)

IPv6におけるIPアドレスの設定方法は、ルータのアドバタイズ機能を使ったステートレスな自動設定が基本であるが、一部不足する情報はDHCPで補足するという、ハイブリッドな構成も使われる。

[打越浩幸,デジタルアドバンテージ]
Windows管理者のためのIPv6入門
Windows Server Insider


「Windows管理者のためのIPv6入門」のインデックス

連載目次

 前回は、IPv6アドレスの静的な設定と、ステートレスな設定について解説した。DHCPサーバがなくても、ルータから送信される「RA(Router Advertisement)のアドバタイズ(広報)」の仕組みにより、ネットワーク上のノードは正しくプリフィックス情報を取得し、自分自身のIPv6アドレスを設定することができる。だがDHCPサーバを利用しないと組織全体への計画的なIPアドレス割り当ては実現できない。今回は、DHCPサーバを使ったステートフルなアドレス設定について見ていく。

ステートレスとステートフルなIPv6アドレスの設定方法

 IPv6におけるアドレスの自動割り当て機能として、前回は、「ステートレス」と「ステートフル」な2通りの設定方法があることを解説した。ステートレスな設定とはつまり、ルータが送信するプリフィックス情報「Router Advertisement(RA)」を元にして、クライアントが自分自身のIPv6アドレスを自動的に決定する方法である。DHCPサーバを用意しなくても各クライアントにIPv6アドレスを割り当てられる。

 だが自動構成では、DNSサーバのIPアドレスやDNSのサフィックスなど、いくつか取得(配布)できない項目がある(コラム「IPv6アドレス構成の自動化に関する規格」参照)。固定的なIPv6アドレスの割り当ても含め、これらの設定も自動化したければ、IPv6対応のDHCPサーバ(以下DHCPv6サーバ)を用意してステートフルなアドレス割り当てを行う必要がある。今回はこの方法についてみていく。

DHCPv6におけるIPv6アドレスの自動配布

 DHCPv6サーバを使ったIPv6アドレスの割り当て方法は、IPv4でDHCPサーバを使う場合とほぼ同様であるが、一部異なる点もある。IPv6アドレスの割り当てをDHCPv6サーバに完全に依存するのではなく、ステートレスな自動割り当てでも使われていた、RAによる一部の自動構成機能がそのまま使われるからだ。例えばWindows OSのデフォルト設定では、IPv6アドレス(およびプリフィックス)はRAから取得した情報に基づいて決定するが、それ以外のDNSサーバ・アドレスなどのパラメータはDHCPv6サーバから取得したものを使う、というハイブリッド構成になっている。

 具体的に言うと、クライアントはルータが送信するRAに含まれている2つのフラグ情報を見て、IPv6アドレスをどこから取得するかを決定する。

Mフラグ Oフラグ 構成内容
オン オン ・DHCPv6サーバを使ったステートフルな自動構成。
・IPv6アドレスもそのほかのパラメータもDHCPv6サーバから取得する
・DHCPv6サーバ側で、クライアントに割り当てたIPv6アドレスを管理する
・DHCPv6サーバが利用できない場合は、第4回で解説したように、最低でもDNSサーバなどの情報は手動で設定するか、IPv4のDHCPサーバ経由で割り当てること
オン オフ ・IPv6アドレスは自動取得するが、そのほかのパラメータは手動で設定する構成
・ほとんど使われることはない
オフ オン ・DHCPv6サーバを使ったステートレスな自動構成
・IPv6アドレスはRAからの情報を元に自身で生成する
・IPv6アドレス以外のパラメータはDHCPv6サーバから取得する
・DHCPv6サーバも(RAを送信した)ルータも、クライアントのIPv6アドレスを管理しない
・現状のIPv6ネットワークでよく使われている構成
オフ オフ ・完全な手動構成
・IPv6アドレスもそのほかのパラメータもすべて手動で設定する必要がある
・IPv4と違い、IPv6では設定が煩雑なのであまり使われることはない
MフラグとOフラグの組み合わせによるIPv6アドレスの自動構成の方法
IPv6のクライアントは、アドバタイズされたRAに含まれている2つのフラグ(MフラグとOフラグ)の設定に応じてIPv6アドレスの自動構成(もしくは手動設定)を行う。

 「M(Managed)フラグ」は、IPv6アドレスをDHCPv6サーバから取得するか、それともRAから得たプリフィックス情報を使って自分で生成するかを決定するフラグ、「O(Other Config)フラグ」は、IPv6アドレス以外のパラメータをDHCPv6サーバから取得するかどうかを決めるフラグである。IPv6クライアントは、まずこのRAのパケットを受信し、その中にある2つのフラグを見てIPv6アドレスの設定方法を決定する。MフラグがオンならDHCPv6サービスでアドレスを取得し、さらにOフラグもオンならそれ以外のパラメータもDHCP経由で取得する。

 RAとDHCPv6を組み合わせることにより、RAだけを使ったステートレスな自動設定では不足するパラメータ(DNSサーバ・アドレスやDNSドメイン名情報など)をクライアントに渡すことができる。なお、DHCPv6の仕様ではデフォルト・ゲートウェイ・アドレスを渡すことができないなど、いくつか設定不可能なパラメータもあるので(通常は、RAの送信元であるルータがデフォルト・ゲートウェイ・アドレスとなる)、計画的にIPv6を導入している場合は、RAもDHCPv6も使わないという運用はあまりないだろう。

【コラム】IPv6アドレス構成の自動化に関する規格

 DHCPv6でデフォルト・ゲートウェイ情報を渡したり、RAでDNSサーバ情報を渡したりするための標準機能はまだ規格化の途中であり、Windows Server OSではいずれも未サポートである。

設定項目 RAによる配布 DHCPv6による配布
デフォルト・ゲートウェイ情報 ○(規格化済み) 規格化前のドラフト段階(リンク
DNSサーバ情報 RFC 6106(リンク)で規格化作業中 ○(規格化済み)
IPv6アドレス構成の自動化に関する規格

 DHCPv4では、DHCPサーバでクライアントが必要とするIPアドレス情報をすべて配布できたが、IPv6の場合は、RAで自動構成の方法を決定し、DHCPv6で必要なパラメータを配布するという、2段構成になっている。RAとDHCPv6のいずれかだけでは配布できないパラメータがあるためだ。これを改善するための規格がこの表のように制定作業中であるが、現時点でのWindows OSではまだ利用できない。


Windows OSにおける、RAパケットのMフラグとOフラグの設定

 第4回の記事では、Windows OSの設定を変更してRAをアドバタイズするように設定した(netshで「set interface <IF番号> advertise=enabled」コマンドを実行する)。ここで送信されるRAに含まれるMフラグとOフラグは、デフォルトではいずれもオンになっている。もしネットワーク上にDHCPv6サーバがあれば、RAを受け取ったクライアントは、RAとDHCPv6の両方を使ってIPv6アドレスを構成しようとする。

 ステートレスな設定や手動による設定を利用したい場合は、送信するRAパケット中のMフラグとOフラグの設定を変更すればよい。MフラグとOフラグの初期値は、デフォルトではオン(enable)になっているが、これを変更するには、netshで次のようなコマンドを実行する。

※Mフラグを設定する
netsh interface ipv6 set interface <IF番号> managedaddress=enabled または disabled

※Oフラグを設定する
netsh interface ipv6 set interface <IF番号> otherstateful=enabled または disabled


 現在のフラグの状態を確認するにはnetshで「show interface <IF番号>」コマンドを実行する。

※現在のフラグの状態を確認する

netsh interface ipv6>show int 11

インターフェイス ローカル エリア接続 パラメーター
----------------------------------------------
IfLuid : ethernet_5
IfIndex : 11
状態 : connected
メトリック : 10
リンク MTU : 1500 バイト
到達可能な時間 : 34500 ミリ秒
基本の到達可能な時間 : 30000 ミリ秒
再転送間隔 : 1000 ミリ秒
DAD 転送 : 1
サイト プレフィックスの長さ : 64
サイト ID : 1
転送 : disabled
アドバタイズ : enabled
近隣探索 : enabled
近隣到達不可能性検出 : enabled
ルーター発見 : enabled
管理されたアドレス構成 : disabled …Mフラグの設定
その他のステートフル構成 : disabled …Oフラグの設定
脆弱なホストによる送信 : disabled
脆弱なホストによる受信 : disabled
自動メトリックの使用 : enabled
既定ルートを無視 : disabled
アドバタイズされたルーターの有効期間: 1800 秒
既定ルートのアドバタイズ : disabled
現在のホップ制限 : 0
ARPND スリープ解除パターンの強制 : disabled
指定の MAC スリープ解除パターン : disabled

netsh interface ipv6>


 この設定は、RAをアドバタイズする側のWindows OSもしくはルータで設定しておくこと。


       1|2 次のページへ

Copyright© 1999-2017 Digital Advantage Corp. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

Focus

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。