M6 · Segurança

DHCP Snooping e Dynamic ARP Inspection (DAI)

O que é

DHCP Snooping é um recurso de segurança disponível em switches Cisco que filtra mensagens DHCP recebidas em portas não confiáveis. Ele age como um firewall de camada 2 para tráfego DHCP: inspeciona cada mensagem que entra por portas marcadas como untrusted e decide se deve encaminhá-la ou descartá-la.

Dynamic ARP Inspection (DAI) é um recurso complementar que faz o mesmo trabalho, mas para mensagens ARP. Ele impede que dispositivos maliciosos envenenem as tabelas ARP de outros hosts na rede, desviando o tráfego para si mesmos.

Os dois recursos formam uma dupla de defesa de camada 2 e são cobrados juntos no Exam Topic 5.7 do CCNA 200-301.


Como funciona

DHCP Snooping

O conceito central é a divisão das portas do switch em dois grupos:

  • Trusted (confiável): geralmente as portas uplink, que apontam para roteadores, outros switches ou o servidor DHCP legítimo. Mensagens DHCP chegando por essas portas são encaminhadas sem inspeção.
  • Untrusted (não confiável): todas as outras portas, tipicamente as que conectam hosts finais. Por padrão, todas as portas nascem untrusted.

Quando uma mensagem DHCP chega em uma porta untrusted, o switch aplica as seguintes regras:

  1. Mensagens de servidor DHCP (OFFER, ACK, NACK) são sempre descartadas. Servidores DHCP não deveriam estar conectados a portas não confiáveis.
  2. Mensagens de cliente DHCP (DISCOVER, REQUEST) são inspecionadas: o switch compara o endereço MAC de origem do frame Ethernet com o campo Client Hardware Address (CHADDR) da mensagem DHCP. Se os dois não coincidem, a mensagem é descartada.
  3. Mensagens RELEASE e DECLINE são verificadas contra a binding table: o switch checa se o IP e a interface de origem batem com o registro existente.

A Binding Table

Quando um cliente obtém um endereço IP via DHCP com o snooping ativo, o switch registra automaticamente na binding table:

MAC Address IP Address Lease Time VLAN Interface
aa:bb:cc:dd:ee:01 192.168.1.10 86400 1 Gi0/1

Esse registro é a base para as verificações de RELEASE/DECLINE e, mais importante, é a fonte de dados que o DAI usa.

Rate Limiting

O DHCP Snooping suporta limitação de taxa por porta (ip dhcp snooping limit rate). Se o número de mensagens DHCP por segundo exceder o limite configurado, a interface é desabilitada automaticamente (err-disabled). Isso protege contra ataques de DHCP starvation que tentam esgotar o pool do servidor com milhares de DISCOVERs falsos.


Dynamic ARP Inspection (DAI)

O ARP não tem mecanismo de autenticação. Qualquer dispositivo pode enviar uma mensagem ARP gratuitous — uma resposta ARP não solicitada — afirmando que determinado IP pertence ao seu MAC. Os outros hosts acreditam nessa afirmação e atualizam suas tabelas ARP. Isso é chamado de ARP spoofing ou ARP poisoning.

Com ARP poisoning, o atacante pode se colocar no caminho entre a vítima e o gateway padrão, interceptando (e potencialmente modificando) todo o tráfego que passa — um ataque man-in-the-middle clássico.

O DAI quebra esse ataque consultando a binding table do DHCP Snooping. Quando uma mensagem ARP chega em uma porta untrusted, o switch verifica:

  • O Sender MAC e o Sender IP do pacote ARP batem com algum registro na binding table?

- Se sim: encaminha normalmente. - Se não: descarta a mensagem.

Assim, um atacante que envie um ARP gratuitous com o IP do gateway terá sua mensagem bloqueada, porque o par IP+MAC não corresponde a nenhum registro legítimo na tabela.

Portas Trusted no DAI

Assim como no DHCP Snooping, é preciso marcar manualmente as portas confiáveis (uplinks para roteadores e outros switches). A diferença de configuração: o DAI não precisa de um comando global de habilitação — basta ativá-lo por VLAN com ip arp inspection vlan.

Verificações Adicionais (Opcionais)

O DAI pode ser configurado para realizar verificações mais profundas com ip arp inspection validate:

  • src-mac: compara o MAC de origem do frame Ethernet com o Sender MAC do ARP.
  • dst-mac: compara o MAC de destino do frame com o Target MAC do ARP (apenas em respostas).
  • ip: rejeita pacotes ARP com IPs inválidos (0.0.0.0, broadcasts, multicast).

Importante: ao configurar múltiplas validações, todas devem ser especificadas em um único comando. Comandos separados se sobrescrevem.

Rate Limiting no DAI

Diferente do DHCP Snooping, o DAI já vem com rate limiting habilitado por padrão em portas untrusted: 15 pacotes por segundo. O DAI também suporta burst interval, permitindo configurações como "25 pacotes a cada 2 segundos" com ip arp inspection limit rate 25 burst-interval 2.

Hosts com IP Estático

Dispositivos que não usam DHCP não terão entrada na binding table. Para que o DAI não bloqueie suas mensagens ARP, é preciso criar ARP ACLs manualmente mapeando o IP ao MAC desses hosts e aplicá-las por VLAN.


Na prática

Configuração básica do DHCP Snooping

SW(config)# ip dhcp snooping
SW(config)# ip dhcp snooping vlan 1
SW(config)# no ip dhcp snooping information option
SW(config)# interface GigabitEthernet0/0
SW(config-if)# ip dhcp snooping trust

> O comando no ip dhcp snooping information option desabilita a inserção automática da Option 82. Em redes sem relay agent L3, deixar a Option 82 ativa causa drops silenciosos de mensagens DHCP.

Verificar a binding table

SW# show ip dhcp snooping binding

Configuração básica do DAI

SW(config)# ip arp inspection vlan 1
SW(config)# interface GigabitEthernet0/0
SW(config-if)# ip arp inspection trust

Ativar validações adicionais do DAI

SW(config)# ip arp inspection validate ip src-mac dst-mac

Configurar rate limiting com burst interval

SW(config)# interface GigabitEthernet0/1
SW(config-if)# ip arp inspection limit rate 25 burst-interval 2

Reabilitar interface em err-disabled

SW(config)# errdisable recovery cause dhcp-rate-limit
SW(config)# errdisable recovery cause arp-inspection

Verificar DAI

SW# show ip arp inspection interfaces
SW# show ip arp inspection

Por que cai no exame

O CCNA cobra DHCP Snooping e DAI juntos porque eles são interdependentes: o DAI depende da binding table criada pelo DHCP Snooping. As questões mais frequentes testam:

  1. Qual mensagem DHCP é sempre descartada em porta untrusted? — OFFER, ACK e NACK (mensagens de servidor).
  2. O que o DAI verifica no ARP? — Sender MAC e Sender IP contra a binding table do DHCP Snooping.
  3. Diferença de configuração entre DHCP Snooping e DAI: snooping precisa de dois comandos (ip dhcp snooping + ip dhcp snooping vlan); DAI precisa apenas de um (ip arp inspection vlan).
  4. Rate limiting padrão: DHCP Snooping não tem limite padrão; DAI tem 15 pps em portas untrusted por padrão.
  5. Validate no DAI: múltiplas opções devem ser configuradas em um único comando — comandos separados se sobrescrevem.

Resumo em uma linha

DHCP Snooping bloqueia servidores DHCP falsos filtrando mensagens em portas não confiáveis e criando uma tabela de vínculos IP-MAC que o DAI usa para impedir ARP spoofing antes que um atacante possa desviar o tráfego da rede.