Commande dhcp snooping – switch Cisco

L’objectif de la commande dhcp snooping est d’empêcher la configuration IP de matériels par des serveurs dhcp pirates.
Elle permet aussi de limiter le nombre de demande dhcp sur un port. Elle peut être utilisée pour la table de correspondance MAC/IP par d’autre commande de sécurité.

Principe

On active la commande pour l’ensemble des ports du switch. Puis on indique les ports qui doivent retransmettre les baux venant des serveurs dhcp officiels (port uplink ou port sur lesquels les serveurs dhcp officiels sont connectés).

Activation de l’option dhcp snooping

Dans l’exemple, on active le service dhcp pour les vlans 1 à 10.
On désactive l’option 82 (sauf si on en a besoin).

 switch(config)#ip dhcp snooping
 switch(config)#ip dhcp snooping vlan 1-10
 switch(config)#no ip dhcp snooping information option

On laisse passer les trames dhcp sur le port ou est connecté le serveur dhcp puis on fixe une limite au nombre de trame par seconde.

 switch(config)#int gigabitEthernet 0/1
 switch(config-if)#ip dhcp snooping trust
 switch(config-if)#ip dhcp snooping limit rate 100

Affichage de la configuration du dhcp snooping

switch#show ip dhcp snooping
 Switch DHCP snooping is enabled
 DHCP snooping is configured on following VLANs:
 1-1024
 DHCP snooping is operational on following VLANs:
 1,3-4
 DHCP snooping is configured on the following L3 Interfaces:
 Insertion of option 82 is disabled
 circuit-id default format: vlan-mod-port
 remote-id: 0038.2356.12345 (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)
 -----------------------    -------    ------------    ----------------
 GigabitEthernet0/1         yes        yes             100
 Custom circuit-ids:
 switch#

Affichage de la table de correspondance établie par l’option dhcp snooping

switch#show ip dhcp snooping binding
 MacAddress          IpAddress        Lease(sec)  Type           VLAN  Interface
 ------------------  ---------------  ----------  -------------  ----  --------------------
 00:1C:45:65:12:34   192.168.1.9      43059       dhcp-snooping   4    FastEthernet0/3
 Total number of bindings: 1
 switch#

 

Utilisation de la table de correspondance dhcp snooping pour sécuriser le réseau

Deux options utilisent cette table de correspondance mac/ip:
– l’option dynamic arp inspection
– l’option ip source guard

dynamic arp inspection

Cette option empêche un client de se faire passer pour un autre par la corruption de la table d’adresse mac du switch (arp spoofing).
Pour cela, le switch vérifie la correspondance des adresses Mac/IP dans la table de correspondance construite par l’option dhcp snooping.

Activation de l’option dynamic arp inspection pour le vlan 10

switch(config)#ip arp inspection vlan 10

On peut souhaiter ne pas vérifier les trames pour une interface. Dans l’exemple ci-dessous, on ne vérifie pas les trames pour l’interface gi0/1

 switch(config)#int gigabitEthernet 0/1
 switch(config-if)#ip arp inspection trust

Vérification de l’activation pour le vlan 3

 switch#sh ip arp inspection vlan 3
 Source Mac Validation      : Disabled
 Destination Mac Validation : Disabled
 IP Address Validation      : Disabled
Vlan     Configuration    Operation   ACL Match          Static ACL
 ----     -------------    ---------   ---------          ----------
 3     Enabled          Active
 Vlan     ACL Logging      DHCP Logging      Probe Logging
 ----     -----------      ------------      -------------
 3     Deny             Deny              Off
 switch#

 

Usurpation d’adresse IP : IP source guard

Cette option permet de contrer une tentative d’usurpation d’adresses IP.
Elle vérifie la correspondance IP/port dans la table de correspondance construite par l’option dhcp snooping. Il est aussi possible de configurer des adresses Mac/IP statiques

Activation pour une interface

switch(config)#int fa0/7
 switch(config-if)#ip verify source

Vérification de l’activation correspondance adresse IP/port

switch#sh ip verify source
 Interface  Filter-type  Filter-mode  IP-address       Mac-address        Vlan
 ---------  -----------  -----------  ---------------  -----------------  ----
 Fa0/3      ip           active       192.168.10.12                       3
 Fa0/6      ip           active       deny-all                            3
 Fa0/7      ip           inactive-no-snooping-vlan
 switch#

Configuration manuelle:

switch(config)#ip source binding 00:1A:12:34:12:34 vlan 3 192.168.10.15 interface fastEthernet 0/6
switch#sh ip verify source
 Interface  Filter-type  Filter-mode  IP-address       Mac-address        Vlan
 ---------  -----------  -----------  ---------------  -----------------  ----
 Fa0/3      ip           active       192.168.10.12                       3
 Fa0/6      ip           active       192.168.10.15                       3
 Fa0/7      ip           inactive-no-snooping-vlan

Commande pour vérifier la correspondance adresse IP, adresse mac et port

On active tout d’abord l’option port-security puis l’option ip verify source

switch(config-if)#int fa0/6
 switch(config-if)#switchport port-security
 switch(config-if)#ip verify source port-security

vérification

switch#sh ip verify source
 Interface  Filter-type  Filter-mode  IP-address       Mac-address        Vlan
 ---------  -----------  -----------  ---------------  -----------------  ----
 Fa0/3      ip-mac       active       192.168.10.12    00:1C:33:22:11:11   3
 Fa0/6      ip-mac       active       192.168.10.15    00:1A:12:34:12:34   3
 Fa0/7      ip           inactive-no-snooping-vlan
 switch#