# IP付加機能 / DHCPリレー

DHCPリレーエージェント機能は、受信したDHCPパケットを異なるサブネットのDHCPサーバーに転送する機能です。
一般的に、DHCPパケットはブロードキャストで送信されるため、クライアントとサーバーは同一のIPサブネット上にある必要があります。
DHCPリレーエージェント機能を使用すれば、クライアントとサーバーが別のサブネットに存在する場合でも、DHCPを利用することができます。

## 基本設定

DHCPリレーエージェント機能を使用するために必要な設定を示します。
なお、以下の例では、IPの基本設定までは完了しているものとします。IPインターフェースの基本設定については「IP」の「IPインターフェース」をご覧ください。
DHCPリレーエージェントの設定は、DHCPパケットを受信する可能性のあるIPインターフェースごとに行います。ここでは、vlan1インターフェースで受信したDHCPパケットを、（別のインターフェースにある）DHCPサーバー192.168.30.5に転送する場合の例を示します。

1. DHCPパケットの受信インターフェースであるvlan1の設定を行うため、インターフェースモードに移行します。

       awplus(config)# interface vlan1

   Note

   DHCPリレーの設定をする対象VLANインターフェースは400以内としてください。

2. 該当インターフェースで受信したDHCPパケットの転送先を指定します。

       awplus(config-if)# ip dhcp-relay server-address 192.168.30.5
       awplus(config-if)# exit

3. DHCPリレーエージェント機能を有効にします。

       awplus(config)# service dhcp-relay

   Note

   DHCPリレーエージェント機能は初期状態で有効に設定されているため、実際には本コマンドは不要です。

以上で設定は完了です。
リレーエージェント情報オプション（オプションコード82）の付加・削除を有効にするには、ip dhcp-relay agent-optionコマンドを使います。
リレーエージェント情報オプションの検査を有効にするには、ip dhcp-relay agent-option checkingコマンドを使います。
すでにリレーエージェント情報オプションが付加されているクライアントパケットの扱いは、ip dhcp-relay information policyコマンドで変更できます。初期設定では、既存のリレーエージェント情報を本装置自身の情報で上書きしてから転送します（replace）。
DHCPリレーエージェント機能において、該当インターフェースで受信したDHCPパケットを転送する際に、クライアント側のインターフェースのIPアドレスを送信元IPアドレスとして使用するように設定するには、ip dhcp-relay use-client-side-addressコマンドを使います。
DHCPリレーエージェント機能の設定内容を確認するには、show ip dhcp-relayコマンドを使います。

### DHCPv6リレーを利用した固定IPアドレスの割り当て方法

通常、DHCPv6サーバーから固定IPアドレスを割り当てる場合はDUIDを使用しますが、このDUIDはMACアドレスと異なり、ハードウェアに一意に紐付られたものではなく、OSを変更した場合や、再インストールなどでDUIDの値が変わってしまいます。
そのため、DUIDを使って固定IPアドレスを割り当てる設定の場合、環境によって正常にIPが割り当てできなくなる場合が発生します。
そのような状況を回避するために、DUIDの代わりにSubscriber-IDを使用し、かつ、その値に送信元MACアドレスを用いて、常に同じハードウェアには同じIPアドレスをDHCPv6サーバーから割り当てるようにします。
これには「subscriber-id-auto-mac」機能を使います。
以下にこの機能の具体的な設定例を示します。

設定例のネットワーク構成例

Note

本機能でサポートしているDHCPv6サーバーはISC DHCP v4.3.0以降のみになります。

1. リレーの設定
   2つのインターフェースにIPv6アドレスを割り当て、DHCPサーバーのIPを指定します。
   1. ip dhcp-relay agent-option subscriber-id-auto-macコマンドを実行し、1つ目のインターフェースで「subscriber-id-auto-mac」機能を有効にします。
   2. ip dhcp-relay server-addressコマンドで、1つ目のインターフェースで受信したDHCPパケットを、2つ目のインターフェースに存在するDHCPサーバーに転送するように設定します。
   3. 2つ目のインターフェースにIPv6アドレスを割り当てます。

          awplus# configure terminal
          awplus(config)# interface vlan1
          awplus(config-if)# ip dhcp-relay agent-option subscriber-id-auto-mac
          awplus(config-if)# ip dhcp-relay server-address 2001:db8:21e:102::2 vlan2
          awplus(config)# interface vlan2
          awplus(config-if)# ipv6 address 2001:db8:21e:102::1/64

2. サーバーの設定
   下記は、「00:00:5e:00:53:12」のMACアドレスを持っているSubscriberに、「2001:db8:21e:101::43」のIPv6アドレスを割り当てる例です。

       default-lease-time 600;
       max-lease-time 7200;
       log-facility local7;
       subnet6 2001:db8:21e:102::0/64 {
       }
       subnet6 2001:db8:21e:101::0/64 {
           #General pool for clients
           range6 2001:db8:21e:101::10 2001:db8:21e:101::30;
           #Fixed host address for client 00:00:5e:00:53:12
           host specialclient {
               host-identifier v6relopt 33 dhcp6.subscriber-id 00:00:5e:00:53:12;
               fixed-address6 2001:db8:21e:101::43;
           }
       }

本機能の状態を確認するには、show ip dhcp-relayコマンドを使用します。