uRPF - Troubleshooting

Método general (de lo mínimo a lo complejo)

  1. ¿CEF está habilitado? sin CEF, uRPF no funciona.
  2. ¿El modo (strict/loose) es adecuado para la topología (asimetría)?
  3. ¿Se descarta tráfico legítimo? revisa los verification drops.
  4. ¿Está aplicado en la interface de entrada correcta?

Comando base:

Router# show ip interface gigabitEthernet 0/1

Caso 1 — Se descarta tráfico legítimo (strict + enrutamiento asimétrico)

Síntoma: tras activar uRPF strict, se cae tráfico válido.

Causa: el retorno hacia esa IP de origen va por otra interface (enrutamiento asimétrico), así que strict lo descarta.

Diagnóstico:

Router# show ip interface gigabitEthernet 0/1   ! verification drops subiendo
Router# show ip route ip-de-origen              ! ¿la ruta apunta a otra interface?

Solución: usar loose mode en esa interface.

Router(config-if)# ip verify unicast source reachable-via any

Caso 2 — uRPF no descarta nada (no protege)

Síntoma: el spoofing no se bloquea.

Causas:

  • CEF deshabilitado.
  • uRPF aplicado en la interface o dirección equivocada.
  • Loose mode con allow-default cuando existe una ruta por defecto (todo “existe” por la default).

Diagnóstico:

Router# show cef interface gigabitEthernet 0/1
Router# show running-config interface gigabitEthernet 0/1 | include verify

Solución: habilitar CEF, aplicar en la interface de entrada, y usar strict (rx) donde no haya asimetría.

Router(config)# ip cef
Router(config-if)# ip verify unicast source reachable-via rx

Caso 3 — Tráfico con ruta por defecto se descarta

Síntoma: tráfico cuya única ruta es la default se cae con loose mode.

Causa: por defecto, loose no considera la ruta por defecto como “existente”.

Solución: agregar allow-default.

Router(config-if)# ip verify unicast source reachable-via any allow-default

Caso 4 — Falla el ping al propio router

Síntoma: el router no responde a ciertos pings tras activar uRPF.

Causa: en algunos escenarios, uRPF descarta paquetes con origen la propia IP del router.

Solución (si aplica): permitir el self-ping.

Router(config-if)# ip verify unicast source reachable-via rx allow-self-ping

Úsalo con criterio; en producción no suele ser necesario.


Recuerda el orden: CEF activo, modo correcto (strict sin asimetría, loose con asimetría), aplicado en la entrada, y revisar los verification drops.