# IP付加機能 / DHCPv6サーバー

DHCPv6サーバー機能は、DHCPv6クライアントに対して、IPv6アドレスやIPv6の設定情報を動的に提供する機能です。
本製品のDHCPv6サーバーは、次の2つの動作をサポートしています。

- 単一IPv6アドレスの割り当て（IA_NA）
- IPv6プレフィックス（アドレスブロック）の割り当て（IA_PD）

また、DHCPv6 PDクライアント機能を併用することで、下記の動作も可能です。

- IPv6プレフィックスの再割り当て
  上位のDHCPv6サーバーから割り当てられたプレフィックスの一部を細分化し、自身のDHCPv6サーバー機能によって下位のDHCPv6クライアントに再割り当てする。

Note

DHCPv6 PDクライアント機能については「IPv6」の「IPv6インターフェース」をご覧ください。

## 基本設定

本製品をDHCPv6サーバーとして機能させるために必要な設定について説明します。
なお、以下の例では、IPv6の基本設定までは完了しているものとします。IPv6インターフェースの基本設定については「IPv6」の「IPv6インターフェース」をご覧ください。

### アドレスを割り当てる（IA_NA）

DHCPv6クライアント（IPv6ホスト）に単一IPv6アドレスと設定情報を割り当てるには、次のようにします。
ここでは次の環境を想定します。

表 1
DHCPv6サーバー
インターフェース | eth1
アドレスの割り当て
動的割り当て | 2001:db8:1:1::dd00 ～ 2001:db8:1:1::dd7f（128アドレス）
設定情報の通知
DNSサーバーアドレス | 2001:db8:1:1::16, 2001:db8:1:1::1f
ドメイン名 | tw.example.com

1. DHCPv6プールを作成します。DHCPv6プール名をipv6 dhcp poolコマンドで指定してください。

       awplus(config)# ipv6 dhcp pool na1

2. DHCPv6クライアントに割り当てる動的IPv6アドレスを指定します。これには、address rangeコマンドかaddress prefixコマンドを使います。
   - address rangeコマンドでは、次のようにアドレスを範囲指定します。
     この例では2001:db8:1:1::dd00 ～ 2001:db8:1:1::dd7fの128アドレスを割り当てています。

         awplus(config-dhcp6)# address range 2001:db8:1:1::dd00 2001:db8:1:1::dd7f

   - address prefixコマンドでは、次のようにプレフィックスを指定します。
     この例ではプレフィックス2001:db8:1:1::/64内のアドレスを動的に割り当てます。

         awplus(config-dhcp6)# address prefix 2001:db8:1:1::/64

3. DHCPv6クライアントに通知する基本的なIPv6設定パラメーターを指定します。
   ここでは、通知するDNSサーバーとドメイン名の情報を、それぞれdns-serverコマンド、domain-nameコマンドで設定しています。

       awplus(config-dhcp6)# dns-server 2001:db8:1:1::16
       awplus(config-dhcp6)# dns-server 2001:db8:1:1::1f
       awplus(config-dhcp6)# domain-name tw.example.com
       awplus(config-dhcp6)# exit

   Note

   IPv6アドレスなどを複数指定するときは、コマンドを複数回実行してください。

   Note

   上記以外にもさまざまな設定情報をクライアントに通知することができます。詳細はコマンドリファレンス編をご覧ください。

4. デフォルトゲートウェイの情報をルーター通知（RA）パケットで通知するよう設定します。これにはipv6 nd suppress-raコマンドをno形式で実行します。
   また、RAパケットのMフラグをセットすることで、クライアントに対しDHCPv6などのステートフルプロトコルを使うよう指示します。これには、ipv6 nd managed-config-flagコマンドを使います

       awplus(config)# interface eth1
       awplus(config-if)# no ipv6 nd suppress-ra
       awplus(config-if)# ipv6 nd managed-config-flag

5. eth1インターフェースでDHCPv6サーバーを有効にします。これには、ipv6 dhcp serverコマンドを使います。同コマンドでは手順1で作成したプール名を指定します。

       awplus(config)# interface eth1
       awplus(config-if)# ipv6 dhcp server na1

設定は以上です。

### プレフィックスを割り当てる（IA_PD）

DHCPv6 PDクライアント（IPv6ルーター）にIPv6アドレスプレフィックス（アドレスブロック）を割り当てるには、次のようにします。
ここでは次の環境を想定します。

表 2
DHCPv6サーバー
インターフェース | eth1
プレフィックスの割り当て
動的割り当て | プールブロック全体 | 2001:db8:2200::/40
割り当て単位（プレフィックス長） | 48

1. DHCPv6 PDクライアントに割り当てるプレフィックスの仕様をプレフィックスプールBlockToDelegateとして設定します。これには、ipv6 local poolコマンドを使います。
   ここでは、アドレスブロック2001:db8:2200::/40から、/48単位でプレフィックスを割り当てするよう設定します。実際に割り当てられるプレフィックスは、2001:db8:2200::/48、2001:db8:2201::/48、2001:db8:2202::/48 ... 2001:db8:22ff::/48 のようになります。

       awplus(config)# ipv6 local pool BlockToDelegate 2001:db8:2200::/40 48

2. DHCPv6プールを作成します。DHCPv6プール名をipv6 dhcp poolコマンドで指定してください。

       awplus(config)# ipv6 dhcp pool pd1

3. 手順1で作成したプレフィックスプールBlockToDelegateの仕様にもとづいて、動的なプレフィックス割り当てを行うよう指示します。これには、prefix-delegation poolコマンドを使います。

       awplus(config-dhcp6)# prefix-delegation pool BlockToDelegate

4. eth1インターフェースにおいて、デフォルトゲートウェイの情報をルーター通知（RA）パケットで通知するよう設定します。これにはipv6 nd suppress-raコマンドをno形式で実行します。

       awplus(config)# interface eth1
       awplus(config-if)# no ipv6 nd suppress-ra

5. eth1インターフェースでDHCPv6サーバーを有効にします。これには、ipv6 dhcp serverコマンドを使います。同コマンドでは手順2で作成したプール名を指定します。

       awplus(config)# interface eth1
       awplus(config-if)# ipv6 dhcp server pd1

設定は以上です。
DHCPv6 PDクライアント機能を併用して、上位DHCPv6サーバーから取得したプレフィックスを再割り当てする方法については、「IPv6」の「IPv6インターフェース」をご覧ください。

## 設定・動作の確認

DHCPv6プールの情報を確認するには、show ipv6 dhcp poolコマンドを使います。
IPv6アドレスの割り当て状況を確認するには、show ipv6 dhcp bindingコマンドを使います。