動作確認環境
- C2960-8TC-L
- Version 12.2(55)SE12
DHCP スヌーピングの検証
DHCP スヌーピングとは
スイッチにおいて DHCP スヌーピングを使用すると、信頼設定がされていないスイッチポートに DHCP サーバが接続された場合に、スイッチはその DHCP サーバからの DHCP パケットを破棄します。つまり信頼されていないポートに接続された DHCP サーバをネットワークから排除することができます。
検証構成

スイッチでの DHCP スヌーピング設定
ip dhcp snooping
- DHCP スヌーピング機能の有効化
ip dhcp snooping vlan <Vlan-ID>
- DHCP スヌーピングを有効化する VLAN を指定
[no] ip dhcp snooping information option
- DHCP Option 82 データ挿入を有効[無効]にする
- デフォルトでは有効
- 検証環境ではこれが有効だと DHCP サーバでエラーとなり DHCP クライアントが IP アドレスを取得できなかったので無効化した
- Cisco のルータを DHCP サーバとして利用していたからのよう。Cisco のルータを DHCP サーバとして使用する場合、そのルータで
ip dhcp relay information trust-all
を設定していないとリレー情報が付加されたパケットが破棄されるらしい
- Cisco のルータを DHCP サーバとして利用していたからのよう。Cisco のルータを DHCP サーバとして使用する場合、そのルータで
ip dhcp snooping trust
(インターフェースでの設定)- 対象インターフェースを信頼されたインターフェースであると設定
- DHCP サーバを接続するポートにこれを設定する
- デフォルトではこの設定は無効
◆検証構成におけるスイッチでの DHCP スヌーピング設定
ip dhcp snooping
ip dhcp snooping vlan 1
no ip dhcp snooping information option
interface FastEthernet0/7
ip dhcp snooping trust
interface FastEthernet0/8
ip dhcp snooping trust
DHCP スヌーピング状態確認
show ip dhcp snooping
- DHCP スヌーピング設定情報の表示
Switch#show ip dhcp snooping
Switch DHCP snooping is enabled
DHCP snooping is configured on following VLANs:
1
DHCP snooping is operational on following VLANs:
1
DHCP snooping is configured on the following L3 Interfaces:
Insertion of option 82 is disabled
circuit-id default format: vlan-mod-port
remote-id: 0022.0cbe.7980 (MAC)
Option 82 on untrusted port is not allowed
Verification of hwaddr field is enabled
Verification of giaddr field is enabled
DHCP snooping trust/rate is configured on the following Interfaces:
Interface Trusted Allow option Rate limit (pps)
----------------------- ------- ------------ ----------------
FastEthernet0/7 yes yes unlimited
Custom circuit-ids:
FastEthernet0/8 yes yes unlimited
Custom circuit-ids:
show ip dhcp snooping binding
- DHCP スヌーピングバインディングテーブルの表示
Switch#show ip dhcp snooping binding
MacAddress IpAddress Lease(sec) Type VLAN Interface
------------------ --------------- ---------- ------------- ---- --------------------
AC:7A:56:28:16:06 10.1.1.2 84507 dhcp-snooping 1 FastEthernet0/1
Total number of bindings: 1
show ip dhcp snooping statistics
- DHCP スヌーピング統計情報の表示
Switch#show ip dhcp snooping statistics
Packets Forwarded = 453
Packets Dropped = 0
Packets Dropped From untrusted ports = 0
Untrusted ポートに DHCP サーバを接続した場合の検証
以下構成図のように Untrusted port に DHCP サーバを接続して動作確認してみます。

この場合、DHCP サーバからの DHCP パケットは破棄されるため、DHCP クライアントは IP アドレスを取得できず、スイッチの DHCP スヌーピングバインディングテーブルには何も情報が表示されません。
Switch#show ip dhcp snooping binding
MacAddress IpAddress Lease(sec) Type VLAN Interface
------------------ --------------- ---------- ------------- ---- --------------------
Total number of bindings: 0
IP ソースガードの検証
IP ソースガードとは
IP ソースガードを使用すると、DHCP バインディングテーブルに掲載されていない IP アドレスを送信元とするパケットを破棄することができます。正規の DHCP サーバから IP アドレスを取得していないクライアントからの通信は遮断するといった用途で使用できます。
スイッチでの IP ソースガードの設定
IP ソースガードは DHCP スヌーピングを前提としているため、DHCP スヌーピングの設定が必要になります。DHCP スヌーピングの設定に加えて IP ソースガードの設定を行います。
IP ソースガードを有効化したいポートに対して以下のいずれかの設定を行います。
ip verify source
- 送信元 IP アドレスがバインディングテーブルに掲載されていない場合は通信を破棄する
ip verify source port-security
- 送信元 IP アドレス/MAC アドレスの組み合わせがバインディングテーブルに掲載されていない場合は通信を破棄する
◆検証構成におけるスイッチでの IP ソースガード設定
interface FastEthernet0/2
ip verify source
動作検証
以下のように Untrusted port に静的 IP を設定したクライアントを接続します。

上図のクライアントは静的にアドレスを設定しているためスイッチの IP ソースガードに引っかかります。例えばクライアントから Other Server に Ping をしても疎通は失敗します。
Router#ping vrf VRF1 10.1.1.101 source 10.1.1.10
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.1.101, timeout is 2 seconds:
Packet sent with a source address of 10.1.1.10
.....
Success rate is 0 percent (0/5)
※検証環境では Cisco ルータをクライアントとして使用しています
IP ソースガードの状態確認
show ip verify source
- IP ソースガードの設定情報とバインディング情報の表示
Switch#show ip verify source
Interface Filter-type Filter-mode IP-address Mac-address Vlan
--------- ----------- ----------- --------------- ----------------- ----
Fa0/2 ip active deny-all 1
上記は Fa0/2 に静的アドレスを設定したクライアントを接続した状態での表示です。IP-address の表示が deny-all となっていて、この場合すべての送信元 IP アドレスについて拒否動作となります。
Fa0/2 に接続したDHCP クライアントが DHCP サーバから IP アドレス 10.1.1.3 を取得した後は以下のように IP-address 欄にアドレスが表示されます。この場合、送信元 IP アドレスが 10.1.1.3 の場合は通信が許可されます。
Switch#show ip verify source
Interface Filter-type Filter-mode IP-address Mac-address Vlan
--------- ----------- ----------- --------------- ----------------- ----
Fa0/2 ip active 10.1.1.3 1
show ip source binding
- IP ソースバインディングテーブルの表示
Switch#show ip source binding
MacAddress IpAddress Lease(sec) Type VLAN Interface
------------------ --------------- ---------- ------------- ---- --------------------
AC:7A:56:28:16:06 10.1.1.2 84902 dhcp-snooping 1 FastEthernet0/1
AC:7A:56:28:15:FE 10.1.1.3 86070 dhcp-snooping 1 FastEthernet0/2
Total number of bindings: 2