Olá caros,
Um servidor DHCP é necessário quando temos várias maquinas e outros equipamentos IP na rede, no qual o serviço DHCP disponibiliza dinamicamente IP/máscara de rede, default gateway, servidor DNS, entre outras informações para o solicitante, com isso facilitando o trabalho do administrador de rede.
Vamos imaginar o cenário onde um usuário malicioso adiciona um computador na rede com o serviço DHCP Server habilitado. Quando uma máquina qualquer precisar de IP ou expirar o lease time, ela vai enviar pacotes DHCP Request em broadcast, no qual esse “ novo ” Servidor DHCP envia o DHCP Reply com seu próprio IP como default-gateway. Quando a máquina “ enganada ” enviar um pacote para fora da rede, o pacote vai passar pelo falso default-gateway, o PC do atacante, e depois enviado para o destino correto. Será questão de tempo para o ” lease time ” dos outros PCs expirarem e o trafego da sua rede ser inteiramente interceptado. Esse é um ataque muito perigoso do tipo “ man-in-the-middle “, pois com um sniffer o atacante consegue coletar vários dados dos usuários inclusive conversas e senhas.
Para evitar este tipo de ataque, devemos primeiro mapear as portas dos switches que não estão sendo utilizadas, e adicioná-las em uma VLAN separada da rede em produção, ou mantê-las em “ shutdown ‘. Porém o atacante ainda pode utilizar o ponto de rede de uma máquina na VLAN correta. Nos switches Cisco ( 2960, 3560, 3750, 4000, 6000 ) temos um recurso chamado DHCP Snooping, que classifica cada porta como trusted ou untrusted ( confiável ou não confiável ). Os servidores DHCP ficam nas portas trusted, e o restante das portas como untrusted, e o switch intercepta todas as requisições DHCP nas portas untrusted antes de encaminhá-las, caso ele receba um DHCP Reply de uma porta não confiável, esse pacote será descartado.
O serviço DHCP é descrito através da RFC 2131 e um dos principais pontos nesse momento para entender seria visualizar as mensagens que são trocadas quando um cliente solicita endereço para o servidor. Segue abaixo as mensagens trocadas:

O DHCP snooping possui uma base de dados com endereço IP, endereço MAC, lease time, etc. Essa base é utilizada em outras features como DAI (Dynamic ARP Inspection) e o IP Source Guard que serão abortados nos próximos posts do Multihop.
Para habilitar o DHCP Snooping digite o seguinte comando no modo de configuração global:
Switchconfig)#ip dhcp snooping
Agora identifique as VLANs que serão protegidas:
Switch(config)#ip dhcp snooping vlan 100\ Switch(config)#ip dhcp snooping vlan 200
Todas as portas do switch ficam no modo untrusted por padrão quando habilitamos o DHCP snooping. Agora vamos configurar as portas onde estão os servidores DHCP da rede como trusted:
Switch#conf t\ Switch(config)#interface FastEthernet 0/0\ Switch(config-if)#ip dhcp snooping trust
Podemos também configurar um limite de requisições DHCP que passam em uma interface, o rate pode ser um valor de 1 a 2048 pacotes por segundo:
Switch(config)#interface FastEthernet 2/1\ Switch(config-if)#ip dhcp snooping limit rate 10
Por padrão é habilitado a opção 82 DHCP, que é descrita na RFC 3046 publicada em janeiro de 2001 ( http://www.rfc-archive.org/getrfc.php?rfc=3046 ). Quando uma requisição DHCP é interceptada em uma porta untrusted, o switch adiciona seu próprio MAC e um identificador da porta de origem no campo option-82, em seguida encaminha para o servidor DHCP. Quando retorna o pacote reply o switch compara o campo option-82 para confirmar que a requisição foi originada de uma porta válida:
Switch(config)#ip dhcp snooping information option
Para verificar as configurações do DHCP Snooping, utilize o comando “show ip dhcp snooping”. Somente portas que estão como trusted ou com rate-limit serão listadas:
Switch # show ip dhcp snooping\ DHCP Snooping is configured on the following VLANs:\ 20 30-40 100 200\ Insertion of option 82 information is enabled.\ Interface Trusted Rate limit (pps)\ --------- ------- ----------------\ FastEthernet2/1 yes 10\ FastEthernet2/2 yes none\ FastEthernet3/1 no 20\ Switch #
Com o comando “show ip dhcp snooping binding” conseguimos visualizar as entradas que correspondem as portas untrusted como MAC, lease time, VLAN, etc:
Switch # show ip dhcp snooping binding\ MacAddress IP Address Lease (seconds) Type VLAN Interface\ ----------- ----------- -------------- ----- ---- ----------\ 0010.01FF.0201 192.168.2.3 1600 dynamic 100 FastEthernet2/1\ 0010.01FA.1B31 192.168.2.4 1600 dynamic 100 FastEthernet2/2\ Switch #
Espero que essas informações possa ajudar em alguma implementação de segurança. 😀
Aguardo comentários.
Fonte:
http://www.cisco.com/en/US/docs/switches/lan/catalyst4500/12.1/13ew/configuration/guide/dhcp.html