En este artículo se abordará un problema común en la configuración de IP virtual (VIP) en FortiGate, donde el depurador muestra el mensaje ‘failed to match vid-N’. Este problema es crítico ya que puede afectar la conectividad y el rendimiento de los servicios a través del firewall. A continuación, se detallarán los pasos para diagnosticar y resolver este inconveniente de manera efectiva.
Índice
Descripción del problema
El error ‘failed to match vid-N’ indica que el VIP coincidente no está presente en la política de firewall configurada. Esto puede llevar a que los paquetes sean rechazados, afectando el tráfico legítimo y causando interrupciones en los servicios.
Alcance
Este artículo se centra en la plataforma FortiGate, que es utilizada para gestionar firewalls y asegurar redes.
Diagnóstico paso a paso
Para diagnosticar el problema, es fundamental observar el flujo de depuración (debug flow). El siguiente es un ejemplo de salida de depuración que se puede esperar al enfrentar este problema:
Salida de depuración:
FGT1 # 2024-10-08 13:10:37 id=65308 trace_id=1 func=print_pkt_detail line=5879 msg="vd-root:0 received a packet(proto=6, 10.10.10.10:56414->20.20.20.20:22) tun_id=0.0.0.0 from port1. flag [S], seq 2020481783, ack 0, win 64240"
2024-10-08 13:10:37 id=65308 trace_id=1 func=init_ip_session_common line=6063 msg="allocate a new session-08bacf6c"
2024-10-08 13:10:37 id=65308 trace_id=1 func=iprope_dnat_check line=5474 msg="in-[port1], out-[]"
2024-10-08 13:10:37 id=65308 trace_id=1 func=iprope_dnat_tree_check line=834 msg="len=2"
2024-10-08 13:10:37 id=65308 trace_id=1 func=__iprope_check_one_dnat_policy line=5337 msg="checking gnum-100000 policy-1"
2024-10-08 13:10:37 id=65308 trace_id=1 func=get_new_addr line=1265 msg="find DNAT: IP-30.30.30.30, port-0(fixed port)"
2024-10-08 13:10:37 id=65308 trace_id=1 func=__iprope_check_one_dnat_policy line=5429 msg="matched policy-1, act=accept, vip=1, flag=104, sflag=2000000"
2024-10-08 13:10:37 id=65308 trace_id=1 func=iprope_dnat_check line=5499 msg="result: skb_flags-02000000, vid-1, ret-matched, act-accept, flag-00000104"
La primera parte de la traza de flujo indica que se ha coincidido el NAT de destino con VID (ID de IP virtual 1). A continuación, se verifica la política de firewall destinada, pero el VIP coincidente no está configurado en dicha política.
2024-10-08 13:10:37 id=65308 trace_id=1 func=__iprope_check_one_policy line=2131 msg="checked gnum-100004 policy-94, ret-matched, act-accept"
2024-10-08 13:10:37 id=65308 trace_id=1 func=__iprope_check_one_policy line=2156 msg="failed to match vid-1"
2024-10-08 13:10:37 id=65308 trace_id=1 func=__iprope_check_one_policy line=2131 msg="checked gnum-100004 policy-95, ret-no-match, act-accept"
Como no existe otra política coincidente, la verificación finalmente llega a una denegación implícita y se descarta el paquete.
2024-10-08 13:10:37 id=65308 trace_id=1 func=__iprope_check_one_policy line=2131 msg="checked gnum-100004 policy-0, ret-matched, act-accept"
2024-10-08 13:10:37 id=65308 trace_id=1 func=__iprope_user_identity_check line=1894 msg="ret-matched"
2024-10-08 13:10:37 id=65308 trace_id=1 func=__iprope_check_one_policy line=2365 msg="policy-0 is matched, act-drop"
2024-10-08 13:10:37 id=65308 trace_id=1 func=__iprope_fwd_check line=844 msg="after iprope_captive_check(): is_captive-0, ret-matched, act-drop, idx-0"
2024-10-08 13:10:37 id=65308 trace_id=1 func=iprope_fwd_auth_check line=873 msg="after iprope_captive_check(): is_captive-0, ret-matched, act-drop, idx-0"
Solución recomendada
Para resolver este problema, se debe mover el VIP esperado por encima del original siguiendo las instrucciones del artículo Technical Tip: Virtual IP (VIP) port forwarding order of execution.
Otra forma de abordarlo incluye establecer filtros en los VIPs según sea necesario; consulte el artículo Technical Tip: FortiOS Destination NAT (DNAT) logic when Central NAT is disabled para más detalles.
Comandos CLI utilizados
Los siguientes comandos CLI pueden ser útiles para verificar la configuración de VIP y políticas:
show firewall vip
show firewall policy
Buenas prácticas y recomendaciones
Asegúrese de que todos los VIPs y políticas de firewall estén correctamente configurados y documentados. Además, es recomendable realizar revisiones periódicas de la configuración para detectar posibles problemas antes de que afecten la operatividad de la red.
Notas adicionales
Para obtener una lista de números de tabla iprope que pueden ayudar a identificar qué función de firewall se está comprobando en varias etapas de un flujo de depuración, consulte Technical Tip: iprope policies group.
¿Te ha resultado útil??
0 / 0

Hola, somos Mila Jiménez y César Sánchez. Dos apasionados de la ciberseguridad con muchos años de experiencia. Hemos trabajado en muchas empresas del mundo TI y ahora nos apetece compartir nuestro conocimiento con cualquiera que lo necesite.
¡Si te gusta nuestro contenido puedes invitarnos a un café AQUÍ!