内容

はじめに

外部 DHCP サーバ

DHCP プロキシとブリッジ モードの比較

DHCP プロキシ モード

プロキシ パケットのフロー

プロキシ パケットのキャプチャ

クライアント側

サーバ側

プロキシの設定例

トラブルシュート

警告

DHCP ブリッジ モード

DHCP ブリッジの動作：ブリッジ パケット フロー

ブリッジ パケットのキャプチャ：クライアント側

ブリッジ パケットのキャプチャ：サーバ側

ブリッジの設定例

トラブルシュート

警告

内部 DHCP サーバ

内部 DHCP とブリッジ モードの比較

内部 DHCP サーバ：パケット フロー

内部 DHCP サーバの設定例

トラブルシュート

WLC内部DHCPサーバでのDHCPリースのクリア

警告

エンド ユーザ インターフェイス

DHCP 要求

L2 と L3 のローミング

関連情報

はじめに

このドキュメントでは、Cisco AireOSワイヤレスコントローラのさまざまなDHCP操作について説明します。

外部 DHCP サーバ

外部 DHCP サーバを使用する場合、ワイヤレス LAN コントローラ（WLC）では DHCP の次の 2 つの動作モードがサポートされます。

- DHCP プロキシ モード

- DHCP ブリッジモード

DHCP プロキシモードは DHCP ヘルパー機能として動作し、DHCP サーバとワイヤレスクライアントの間の DHCP トランザクションのセキュリティと制御を強化します。DHCPブリッジモードには、DHCPトランザクションでのコントローラの役割をワイヤレスクライアントに対して完全に透過的にするオプションがあります。

DHCP プロキシとブリッジ モードの比較

クライアント DHCP の処理

DHCP プロキシ モード

DHCP ブリッジ モード

giaddr の変更

Yes

いいえ

siaddr の変更

Yes

いいえ

パケットの内容の変更

Yes

いいえ

冗長オファーは転送されない

Yes

いいえ

オプション 82 のサポート

Yes

いいえ

ブロードキャストからユニキャストへ

Yes

いいえ

BOOTP のサポート

いいえ

サーバ

RFC 非準拠

プロキシエージェントとリレーエージェントは、まったく同じ概念ではありません。RFC に完全に準拠するには、DHCP ブリッジ モードを推奨します。

いいえ

DHCP プロキシ モード

DHCP プロキシはすべてのネットワーク環境に最適であるとは限りません。コントローラは、ヘルパー機能を提供し、特定のセキュリティ問題に対処するために、すべてのDHCPトランザクションを変更およびリレーします。

通常、コントローラの仮想IPアドレスは、クライアントに対するすべてのDHCPトランザクションの送信元IPアドレスとして使用されます。その結果、実際の DHCP サーバ IP アドレスが公表されることはありません。この仮想 IP はコントローラ上で、DHCP トランザクションのデバッグ出力として表示されます。ただし、仮想IPアドレスを使用すると、特定のタイプのクライアントで問題が発生する可能性があります。

DHCPプロキシモードの動作では、対称モビリティプロトコルと非対称モビリティプロトコルの両方で同じ動作が維持されます。

外部 DHCP サーバから複数のオファーが着信すると、通常 DHCP プロキシは着信した最初のオファーを選択して、そのサーバの IP アドレスをクライアントのデータ構造に設定します。その結果、再試行後にトランザクションが失敗するまで、後続のすべてのトランザクションは同じDHCPサーバを介して実行されます。この時、プロキシはクライアントに異なる DHCP サーバを選択します。

DHCP プロキシはデフォルトでイネーブルです。通信するすべてのコントローラは、同じDHCPプロキシ設定を持つ必要があります。

注:DHCPオプション82が正しく動作するには、DHCPプロキシを有効にする必要があります。

プロキシ パケットのフロー

プロキシ パケットのキャプチャ

コントローラが DHCP プロキシモードの場合、コントローラは DHCP パケットを DHCP サーバに送信するだけでなく、実際に新しい DHCP パケットを作成して、DHCP サーバに転送します。クライアントDHCPパケットに存在するすべてのDHCPオプションは、コントローラDHCPパケットにコピーされます。次のスクリーンショットには、DHCP Request パケットの例が示されています。

クライアント側

このスクリーンショットは、クライアント側から見たパケットキャプチャです。ここには、DHCP Discover、DHCP Offer、DHCP Request、DHCP ACK が示されています。DHCP要求が強調表示され、boot pの詳細が展開されて、DHCPオプションが表示されます。

サーバ側

このスクリーンショットは、サーバ側から見たパケットキャプチャです。前の例と同様、DHCP Discover、DHCP Offer、DHCP Request、DHCP ACK が示されています。ただし、これらはコントローラがDHCPプロキシの機能として構築したパケットです。ここでも、DHCP要求が強調表示され、boot pの詳細が展開されて、DHCPオプションが表示されます。これらはクライアントのDHCP要求パケットと同じであることに注意してください。また、WLCプロキシがパケットをリレーし、パケットアドレスを強調表示することに注意してください。

プロキシの設定例

コントローラを DHCP プロキシとして使用するには、コントローラで DHCP プロキシ機能をイネーブルにする必要があります。デフォルトでは、この機能はイネーブルです。DHCPプロキシを有効にするには、次のCLIコマンドを使用できます。GUIのDHCPメニューのコントローラページでも同じことができます。

(Cisco Controller) >config dhcp proxy enable (Cisco Controller) >show dhcp proxy DHCP Proxy Behavior: enabled

DHCPプロキシが動作するには、DHCPサービスを必要とする各コントローラインターフェイスでプライマリDHCPサーバを設定する必要があります。DHCPサーバは、管理インターフェイス、apマネージャインターフェイス、およびダイナミックインターフェイスで設定できます。次の CLI コマンドを使用して、各インターフェイスに DHCP サーバを設定することができます。

(Cisco Controller) >config interface dhcp ap-manager primary <primary-server> (Cisco Controller) >config interface dhcp management primary <primary-server> (Cisco Controller) >config interface dhcp dynamic-interface <interface-name>

primary <primary-server>

DHCP ブリッジ機能はグローバル設定であるため、コントローラ内のすべての DHCP トランザクションに影響します。

トラブルシュート

このコマンドの出力を示します。 debug dhcp packet enable デバッグには、コントローラが MAC アドレス 00:40:96:b4:8c:e1 のクライアントから DHCP Request を受信し、DHCP Request を DHCP サーバに送信し、DHCP サーバからの応答を受信し、DHCP Offer をクライアントに送信していることが示されています。

(Cisco Controller) >debug dhcp message enable Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP received op BOOTREQUEST (1)

(len 312, port 29, encap 0xec03) Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option len (including the magic cookie) 76 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: message type = DHCP REQUEST Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: 61 (len 7) - skipping Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: requested ip = 192.168.4.13 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: 12 (len 7) - skipping Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: 81 (len 11) - skipping Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: vendor class id = MSFT 5.0 (len 8) Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: 55 (len 11) - skipping Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP options end, len 76, actual 68 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP selecting relay 1 - control block settings: dhcpServer: 0.0.0.0, dhcpNetmask: 0.0.0.0, dhcpGateway: 0.0.0.0, dhcpRelay: 0.0.0.0 VLAN: 0 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP selected relay 1 - 192.168.3.1

(local address 192.168.4.2, gateway 192.168.4.1, VLAN 101, port 29) Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP transmitting DHCP REQUEST (3) Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP op: BOOTREQUEST, htype: Ethernet,

hlen: 6, hops: 1 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP xid: 0xfc3c9979 (4231829881), secs: 0,

flags: 0 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP chaddr: 00:40:96:b4:8c:e1 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP ciaddr: 0.0.0.0, yiaddr: 0.0.0.0 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP siaddr: 0.0.0.0, giaddr: 192.168.4.1 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP requested ip: 192.168.4.13 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP Forwarding DHCP packet (332 octets)

-- packet received on direct-connect port requires forwarding to external DHCP

server. Next-hop is 192.168.4.1 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP sending REQUEST to 192.168.4.1

(len 350, port 29, vlan 101) Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP selecting relay 2 - control block settings: dhcpServer: 0.0.0.0, dhcpNetmask: 0.0.0.0, dhcpGateway: 0.0.0.0, dhcpRelay: 192.168.4.1 VLAN: 101 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP selected relay 2 - NONE Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP received op BOOTREPLY (2) (len 316, port 29,

encap 0xec00) Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option len (including the magic cookie) 80 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: message type = DHCP ACK Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: 58 (len 4) - skipping Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: 59 (len 4) - skipping Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: lease time = 691200 seconds Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: server id = 192.168.3.1 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: netmask = 255.255.0.0 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: 15 (len 14) - skipping Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: gateway = 192.168.4.1 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: DNS server, cnt = 1, first = 192.168.3.1 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP option: WINS server, cnt = 1, first = 192.168.3.1 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP options end, len 80, actual 72 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP setting server from ACK (server 192.168.3.1,

yiaddr 192.168.4.13) Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 Assigning Address 192.168.4.13 to mobile Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP sending REPLY to STA (len 424, port 29,

vlan 20) Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP transmitting DHCP ACK (5) Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP op: BOOTREPLY, htype: Ethernet, hlen: 6,

hops: 0 Thu Jun 25 21:48:55 2009: 00:40:96:b4:8c:e1 DHCP xid: 0xfc3c9979 (4231829881), secs: 0,

flags: 0 Thu Jun 25 21:48:59 2009: 00:40:96:b4:8c:e1 DHCP chaddr: 00:40:96:b4:8c:e1 Thu Jun 25 21:48:59 2009: 00:40:96:b4:8c:e1 DHCP ciaddr: 0.0.0.0, yiaddr: 192.168.4.13 Thu Jun 25 21:48:59 2009: 00:40:96:b4:8c:e1 DHCP siaddr: 0.0.0.0, giaddr: 0.0.0.0 Thu Jun 25 21:48:59 2009: 00:40:96:b4:8c:e1 DHCP server id: 192.0.2.10 rcvd server id: 192.168.3.1

警告

- DHCP プロキシがイネーブルになっているコントローラと、ファイアウォールと DHCP サーバの両方として機能するデバイスの間には、相互運用性の問題がある可能性があります。この問題の主な原因は、一般にファイアウォールとして使用されるデバイスのファイアウォール コンポーネントがプロキシ要求に応答しないためです。この問題の回避策は、コントローラでDHCPプロキシを無効にすることです。

- クライアントがコントローラでDHCP REQ状態になると、コントローラはDHCP informパケットをドロップします。クライアントは、クライアントからDHCP Discoverパケットを受信するまで、コントローラ上でRUN状態にはなりません（これはクライアントがトラフィックを渡すために必要です）。DHCPプロキシが無効になると、DHCPインフォームパケットがコントローラによって転送されます。

- 相互に通信するすべてのコントローラは、同じDHCPプロキシ設定を持つ必要があります。

DHCP ブリッジ モード

DHCPブリッジ機能は、DHCPトランザクションでのコントローラの役割をクライアントに対して完全に透過的にするように設計されています。802.11からイーサネットIIへの変換を除き、クライアントからのパケットはLight Weight Access Point Protocol(LWAPP)トンネルからクライアントVLAN(またはL3ローミングの場合はEthernet over IP(EoIP)トンネル)へ、変更されずにブリッジされます。同様に、イーサネットIIから802.11への変換を除き、クライアントへのパケットはクライアントVLAN（またはL3ローミングの場合はEoIPトンネル）からLWAPPトンネルへ、変更されずにブリッジされます。これは、クライアントをスイッチポートに書き込み、そのクライアントが従来の DHCP トランザクションを実行することと同様であると見なすことができます。

DHCP ブリッジの動作：ブリッジ パケット フロー

ブリッジ パケットのキャプチャ：クライアント側

クライアント側のパケットキャプチャのスクリーンショットでは、プロキシモードでのクライアントキャプチャの主な違いは、コントローラの仮想IPアドレスではなく、OfferパケットとAckパケットに表示されるDHCPサーバの実際のIPです。

ブリッジ パケットのキャプチャ：サーバ側

有線パケットキャプチャのスクリーンショットでは、パケット 40 がテストクライアント 00:40:96:b6:44:51 から有線ネットワークへの DHCP Request ブロードキャストであることが示されています。

ブリッジの設定例

DHCP ブリッジ機能をコントローラでイネーブルにするには、コントローラで DHCP プロキシ機能をディセーブルにする必要があります。この機能をディセーブルにするには、CLI で次のコマンドを使用する必要があります。

(Cisco Controller) >config dhcp proxy disable (Cisco Controller) >show dhcp proxy DHCP Proxy Behaviour: disabled

DHCPサーバがクライアントと同じレイヤ2(L2)ネットワークに存在しない場合は、IPヘルパーを使用して、クライアントゲートウェイのDHCPサーバにブロードキャストを転送する必要があります。次に、この設定の例を示します。

Switch#conf t Switch(config)#interface vlan <client vlan #> Switch(config-if)#ip helper-address <dhcp server IP>

DHCP ブリッジ機能はグローバル設定であるため、コントローラ内のすべての DHCP トランザクションに影響します。コントローラ上の必要なすべてのVLANについて、有線インフラストラクチャにIP helper文を追加する必要があります。

トラブルシュート

ここに一覧で表示されているデバッグはコントローラ CLI でイネーブルにされ、このドキュメント用に出力の DHCP の部分が抜粋されています。

(Cisco Controller) >debug client 00:40:96:b6:44:51 (Cisco Controller) >debug dhcp message enable 00:40:96:b6:44:51 DHCP received op BOOTREQUEST (1) (len 308, port 1, encap 0xec03) 00:40:96:b6:44:51 DHCP option len (including the magic cookie) 72 00:40:96:b6:44:51 DHCP option: message type = DHCP DISCOVER 00:40:96:b6:44:51 DHCP option: 116 (len 1) - skipping 00:40:96:b6:44:51 DHCP option: 61 (len 7) - skipping 00:40:96:b6:44:51 DHCP option: 12 (len 12) - skipping 00:40:96:b6:44:51 DHCP option: vendor class id = MSFT 5.0 (len 8) 00:40:96:b6:44:51 DHCP option: 55 (len 11) - skipping 00:40:96:b6:44:51 DHCP options end, len 72, actual 64 00:40:96:b6:44:51 DHCP processing DHCP DISCOVER (1) 00:40:96:b6:44:51 DHCP op: BOOTREQUEST, htype: Ethernet, hlen: 6, hops: 0 00:40:96:b6:44:51 DHCP xid: 0x224dfab6 (575535798), secs: 0, flags: 0 00:40:96:b6:44:51 DHCP chaddr: 00:40:96:b6:44:51 00:40:96:b6:44:51 DHCP ciaddr: 0.0.0.0, yiaddr: 0.0.0.0 00:40:96:b6:44:51 DHCP siaddr: 0.0.0.0, giaddr: 0.0.0.0 00:40:96:b6:44:51 DHCP successfully bridged packet to DS  00:40:96:b6:44:51 DHCP received op BOOTREPLY (2) (len 308, port 1, encap 0xec00) 00:40:96:b6:44:51 DHCP option len (including the magic cookie) 72 00:40:96:b6:44:51 DHCP option: message type = DHCP OFFER 00:40:96:b6:44:51 DHCP option: server id = 192.168.10.1  00:40:96:b6:44:51 DHCP option: lease time = 84263 seconds 00:40:96:b6:44:51 DHCP option: 58 (len 4) - skipping 00:40:96:b6:44:51 DHCP option: 59 (len 4) - skipping 00:40:96:b6:44:51 DHCP option: netmask = 255.255.255.0 00:40:96:b6:44:51 DHCP option: gateway = 192.168.10.1 00:40:96:b6:44:51 DHCP options end, len 72, actual 64 00:40:96:b6:44:51 DHCP processing DHCP OFFER (2) 00:40:96:b6:44:51 DHCP op: BOOTREPLY, htype: Ethernet, hlen: 6, hops: 0 00:40:96:b6:44:51 DHCP xid: 0x224dfab6 (575535798), secs: 0, flags: 0 00:40:96:b6:44:51 DHCP chaddr: 00:40:96:b6:44:51 00:40:96:b6:44:51 DHCP ciaddr: 0.0.0.0, yiaddr: 192.168.10.104 00:40:96:b6:44:51 DHCP siaddr: 0.0.0.0, giaddr: 0.0.0.0 00:40:96:b6:44:51 DHCP server id: 192.168.10.1 rcvd server id: 192.168.10.1 00:40:96:b6:44:51 DHCP successfully bridged packet to STA  00:40:96:b6:44:51 DHCP received op BOOTREQUEST (1) (len 328, port 1, encap 0xec03) 00:40:96:b6:44:51 DHCP option len (including the magic cookie) 92 00:40:96:b6:44:51 DHCP option: message type = DHCP REQUEST 00:40:96:b6:44:51 DHCP option: 61 (len 7) - skipping 00:40:96:b6:44:51 DHCP option: requested ip = 192.168.10.104 00:40:96:b6:44:51 DHCP option: server id = 192.168.10.1 00:40:96:b6:44:51 DHCP option: 12 (len 12) - skipping 00:40:96:b6:44:51 DHCP option: 81 (len 16) - skipping 00:40:96:b6:44:51 DHCP option: vendor class id = MSFT 5.0 (len 8) 00:40:96:b6:44:51 DHCP option: 55 (len 11) - skipping 00:40:96:b6:44:51 DHCP options end, len 92, actual 84 00:40:96:b6:44:51 DHCP processing DHCP REQUEST (3) 00:40:96:b6:44:51 DHCP op: BOOTREQUEST, htype: Ethernet, hlen: 6, hops: 0 00:40:96:b6:44:51 DHCP xid: 0x224dfab6 (575535798), secs: 0, flags: 0 00:40:96:b6:44:51 DHCP chaddr: 00:40:96:b6:44:51 00:40:96:b6:44:51 DHCP ciaddr: 0.0.0.0, yiaddr: 0.0.0.0 00:40:96:b6:44:51 DHCP siaddr: 0.0.0.0, giaddr: 0.0.0.0 00:40:96:b6:44:51 DHCP requested ip: 192.168.10.104 00:40:96:b6:44:51 DHCP server id: 192.168.10.1 rcvd server id: 192.168.10.1 00:40:96:b6:44:51 DHCP successfully bridged packet to DS 00:40:96:b6:44:51 DHCP received op BOOTREPLY (2) (len 308, port 1, encap 0xec00) 00:40:96:b6:44:51 DHCP option len (including the magic cookie) 72 00:40:96:b6:44:51 DHCP option: message type = DHCP ACK 00:40:96:b6:44:51 DHCP option: server id = 192.168.10.1 00:40:96:b6:44:51 DHCP option: lease time = 86400 seconds 00:40:96:b6:44:51 DHCP option: 58 (len 4) - skipping 00:40:96:b6:44:51 DHCP option: 59 (len 4) - skipping 00:40:96:b6:44:51 DHCP option: netmask = 255.255.255.0 00:40:96:b6:44:51 DHCP option: gateway = 192.168.10.1 00:40:96:b6:44:51 DHCP options end, len 72, actual 64 00:40:96:b6:44:51 DHCP processing DHCP ACK (5) 00:40:96:b6:44:51 DHCP op: BOOTREPLY, htype: Ethernet, hlen: 6, hops: 0 00:40:96:b6:44:51 DHCP xid: 0x224dfab6 (575535798), secs: 0, flags: 0 00:40:96:b6:44:51 DHCP chaddr: 00:40:96:b6:44:51 00:40:96:b6:44:51 DHCP ciaddr: 0.0.0.0, yiaddr: 192.168.10.104 00:40:96:b6:44:51 DHCP siaddr: 0.0.0.0, giaddr: 0.0.0.0 00:40:96:b6:44:51 DHCP server id: 192.168.10.1 rcvd server id: 192.168.10.1 00:40:96:b6:44:51 Assigning Address 192.168.10.104 to mobile 00:40:96:b6:44:51 DHCP successfully bridged packet to STA 00:40:96:b6:44:51 192.168.10.104 Added NPU entry of type 1

この DHCP デバッグ出力には、コントローラで DHCP ブリッジが使用されていることを示すいくつかの点があります。

- DHCP successfully bridged packet to DS：クライアントから送信された元の DHCP パケットは変更されずに配信システム（DS）にブリッジされたことを示します。DS は有線のインフラストラクチャです。

- DHCP successfully bridged packet to STA：このメッセージは、DHCP パケットは変更されずにステーション（STA）にブリッジされたことを示します。STA は DHCP を要求するクライアントマシンです。

また、デバッグには実際のサーバ IP アドレスが表示されています。これは 192.168.10.1 です。DHCPブリッジの代わりにDHCPプロキシを使用している場合は、サーバのIPアドレスに対応するコントローラの仮想IPアドレスが表示されます。

警告

- デフォルトでは、DHCPプロキシは有効になっています。

- 相互に通信するすべてのコントローラは、同じDHCPプロキシ設定を持つ必要があります。

- DHCP オプション 82 が動作するには、DHCP プロキシがイネーブルになっている必要があります。

内部 DHCP サーバ

内部 DHCP サーバは、外部 DHCP サーバを使用できないブランチ オフィス用に当初から導入されていました。同じサブネット上にある10未満のアクセスポイント(AP)を持つ小規模なワイヤレスネットワークをサポートするために設計されています。内部サーバは、ワイヤレス クライアント、直接接続 AP、管理インターフェイスのアプライアンス モード AP、および AP から中継される DHCP 要求に対し、IP アドレスを提供します。これは、本格的な汎用DHCPサーバではありません。サポートする機能は限られており、大規模な導入では拡張できません。

内部 DHCP とブリッジ モードの比較

コントローラの主要な 2 つの DHCP モードは、DHCP プロキシまたは DHCP ブリッジのいずれかです。DHCP ブリッジを使用すると、コントローラは自律型 AP による DHCP Back のように機能します。DHCP パケットは、VLAN にリンクされているサービスセット識別子（SSID）へのクライアント関連付けから AP に送信されます。次に、DHCP パケットはその VLAN から送信されます。IPヘルパーがそのVLANのレイヤ3(L3)ゲートウェイで定義されている場合、パケットはダイレクトユニキャストを介してそのDHCPサーバに転送されます。次に、DHCP サーバは、その DHCP パケットを転送した L3 インターフェイスに直接応答を返します。DHCPプロキシでも同じ考えですが、すべての転送はVLANのL3インターフェイスではなく、コントローラで直接行われます。たとえば、クライアントからWLANにDHCP要求が着信すると、WLANでは、VLANのインターフェイスで定義されているDHCPサーバを使用するか、またはWLANのDHCPオーバーライド機能を使用して、DHCPパケットのGIADDRフィールドにVLANインターフェイスのIPアドレスを入力して、ユニキャストDHCPパケットをDHCPサーバに転送します。

内部 DHCP サーバ：パケット フロー

内部 DHCP サーバの設定例

内部DHCPサーバが機能できるようにするには、コントローラでDHCPプロキシを有効にする必要があります。これは、次のセクションにある GUI から行うことができます。

注：すべてのバージョンで、GUI経由でDHCPプロキシを設定することはできません。

Controller->Advanced->DHCP

または、次のように CLI からも行うことができます。

Config dhcp proxy enable Save config

内部 DHCP サーバをイネーブルにするには、次の手順を実行します。

1. IPアドレスをプルするために使用するスコープを定義します(Controller > Internal DHCP Server > DHCP Scope)。をクリックします。New

2. DHCPオーバーライドをコントローラの管理インターフェイスIPアドレスにポイントします。

3. DHCPプロキシが有効になっていることを確認します。

トラブルシュート

内部DHCPサーバのデバッグでは通常、IPアドレスの取得に問題のあるクライアントを見つける必要があります。次のデバッグを実行する必要があります。

debug client <MAC ADDRESS OF CLIENT>

debug client は、入力したクライアント MAC アドレスのみでデバッグをイネーブルにするマクロです。

debug dhcp packet enable debug dot11 mobile enable debug dot11 state enable debug dot1x events enable debug pem events enable debug pem state enable debug cckm client debug enable

DHCPが発行する主なコマンドは、debug clientコマンドによって自動的にイネーブルになるdebug dhcp packet enableコマンドです。

00:1b:77:2b:cf:75 dhcpd: received DISCOVER 00:1b:77:2b:cf:75 dhcpd: Sending DHCP packet (giaddr:192.168.100.254)to 127.0.0.1:67

from 127.0.0.1:1067  00:1b:77:2b:cf:75 sendto (548 bytes) returned 548 00:1b:77:2b:cf:75 DHCP option len (including the magic cookie) 312 00:1b:77:2b:cf:75 DHCP option: message type = DHCP OFFER  00:1b:77:2b:cf:75 DHCP option: server id = 192.168.100.254 00:1b:77:2b:cf:75 DHCP option: lease time = 86400 seconds 00:1b:77:2b:cf:75 DHCP option: gateway = 192.168.100.1 00:1b:77:2b:cf:75 DHCP option: 15 (len 13) - skipping 00:1b:77:2b:cf:75 DHCP option: netmask = 255.255.255.0 00:1b:77:2b:cf:75 DHCP options end, len 312, actual 64 00:1b:77:2b:cf:75 DHCP option len (including the magic cookie) 81 00:1b:77:2b:cf:75 DHCP option: message type = DHCP REQUEST  00:1b:77:2b:cf:75 DHCP option: 61 (len 7) - skipping 00:1b:77:2b:cf:75 DHCP option: requested ip = 192.168.100.100 00:1b:77:2b:cf:75 DHCP option: server id = 192.0.2.10 00:1b:77:2b:cf:75 DHCP option: 12 (len 14) - skipping 00:1b:77:2b:cf:75 DHCP option: vendor class id = MSFT 5.0 (len 8) 00:1b:77:2b:cf:75 DHCP option: 55 (len 11) - skipping 00:1b:77:2b:cf:75 DHCP option: 43 (len 3) - skipping 00:1b:77:2b:cf:75 DHCP options end, len 81, actual 73 00:1b:77:2b:cf:75 DHCP Forwarding packet locally (340 octets) from 192.168.100.254 to

192.168.100.254 dhcpd: Received 340 byte dhcp packet from 0xfe64a8c0 192.168.100.254:68 00:1b:77:2b:cf:75 dhcpd: packet 192.168.100.254 -> 192.168.100.254 using scope "User Scope"  00:1b:77:2b:cf:75 dhcpd: received REQUEST  00:1b:77:2b:cf:75 Checking node 192.168.100.100 Allocated 1246985143, Expires 1247071543

(now: 1246985143) 00:1b:77:2b:cf:75 dhcpd: server_id = c0a864fe 00:1b:77:2b:cf:75 dhcpd: server_id = c0a864fe adding option 0x35 adding option 0x36

adding option 0x33 adding option 0x03 adding option 0x0f adding option 0x01 00:1b:77:2b:cf:75 dhcpd: Sending DHCP packet (giaddr:192.168.100.254)to 127.0.0.1:67

from 127.0.0.1:1067  00:1b:77:2b:cf:75 sendto (548 bytes) returned 548 00:1b:77:2b:cf:75 DHCP option len (including the magic cookie) 312 00:1b:77:2b:cf:75 DHCP option: message type = DHCP ACK  00:1b:77:2b:cf:75 DHCP option: server id = 192.168.100.254 00:1b:77:2b:cf:75 DHCP option: lease time = 86400 seconds 00:1b:77:2b:cf:75 DHCP option: gateway = 192.168.100.1 00:1b:77:2b:cf:75 DHCP option: 15 (len 13) - skipping 00:1b:77:2b:cf:75 DHCP option: netmask = 255.255.255.0 00:1b:77:2b:cf:75 DHCP options end, len 312, actual 64

WLC内部DHCPサーバでのDHCPリースのクリア

次のコマンドを発行して、WLC の内部 DHCP サーバにある DHCP リースをクリアできます。

config dhcp clear-lease <all/IP Address>

ランダム データの例は次のとおりです。

config dhcp clear-lease all

警告

- 内部DHCPサーバが機能するためには、DHCPプロキシをイネーブルにする必要があります

- 内部DHCPサーバを使用する場合のポート1067へのDHCPの使用（CPU ACLの影響を受ける）

- 内部DHCPサーバは、127.0.0.1 UDPポート67を介してコントローラループバックインターフェイスでリッスンします

エンド ユーザ インターフェイス

- config dhcp proxy disable コマンドは、DHCPブリッジ機能を使用します。これはグローバル コマンドです（WLAN ごとのコマンドではありません）。

- DHCPプロキシはデフォルトで有効になっています。

- DHCP プロキシをディセーブルにすると、ローカル WLAN は内部 DHCP サーバを使用できません。ブリッジ動作は、パケットを内部サーバにリダイレクトするために必要な動作と同じにはなりません。ブリッジは、802.11 からイーサネット II への変換を除き、単にブリッジするだけとなります。DHCPパケットは、変更されずにLWAPPトンネルからクライアントVLANに（またはその逆に）渡されます。

- プロキシをイネーブルにする場合、WLAN をイネーブルにするには、DHCP サーバを WLAN のインターフェイス（または WLAN 自体）で設定する必要があります。プロキシがディセーブルのときには、サーバは使用されないため、サーバを設定する必要はありません。

- ユーザが DHCP プロキシをイネーブルにしようとすると、すべての WLAN（または関連付けられているインターフェイス）に DHCP サーバが設定されていることを内部で確認します。設定されていないと、イネーブル動作は失敗します。

DHCP 要求

WLANの高度な設定には、RUN状態（クライアントがコントローラを介してトラフィックを渡すことができる状態）に移行する前にユーザにDHCPを渡すように要求するオプションがあります。このオプションでは、DHCP Request の全部または半分をクライアントに要求します。クライアントからコントローラに提示される主要なものは、DHCP Request と DHCP サーバから戻される ACK です。クライアントがこれらの手順を実行している限り、クライアントはDHCPの必須の手順を通過し、RUN状態に移行します。

L2 と L3 のローミング

L2 Roam:クライアントに有効なDHCPリースがあり、同じL2ネットワーク上の2つの異なるコントローラ間でL2ローミングを実行する場合、クライアントでreDHCPを実行する必要はなく、クライアントエントリを完全に元のコントローラから新しいコントローラに移動する必要があります。次に、クライアントが再びDHCPを必要とする場合、現在のコントローラ上のDHCPブリッジングまたはプロキシプロセスは、再びパケットを透過的にブリッジします。

L3ローミング:L3ローミングのシナリオでは、クライアントは異なるL3ネットワークにある2つの異なるコントローラ間を移動します。この場合、クライアントは元のコントローラにアンカーされ、新しい外部コントローラのクライアントテーブルにリストされます。アンカーシナリオでは、クライアントデータは外部コントローラとアンカーコントローラ間のEoIPトンネル内でトンネリングされるため、クライアントのDHCPはアンカーコントローラで処理されます。

関連情報

- Lightweight Cisco Aironet アクセス ポイント用 DHCP オプション 43 の設定例

- テクニカル サポートとドキュメント - Cisco Systems