Dynamic Routing, ECMP y PBF

Contenido complementario

Las secciones de ECMP y de Policy Based Forwarding (PBF) no están en las notas de tus cursos que tengo; están completadas con conocimiento general de PAN-OS. Compáralas con lo que viste en la lección y corrígelas si difieren.

Resumen

Las rutas estáticas funcionan bien en redes pequeñas, pero cuando hay muchas redes o varios routers, mantenerlas a mano es inviable. Un protocolo de enrutamiento dinámico (RIP, OSPF, BGP) permite que el firewall y los routers vecinos intercambien rutas automáticamente y se adapten a cambios. El firewall participa como un router más: forma “vecindades” con otros routers, aprende sus rutas y anuncia las suyas.
Además hay dos herramientas para controlar por dónde sale el tráfico. ECMP (Equal Cost Multi-Path) reparte el tráfico entre varias rutas de igual costo, para aprovechar más de un enlace. PBF (Policy Based Forwarding) decide la salida según una regla (origen, aplicación, usuario…) en lugar de la tabla de rutas, por ejemplo “el tráfico de la aplicación X sale por el ISP B”. Esta nota cubre la configuración básica de RIP, OSPF y BGP, ECMP, PBF y cómo comprobar los vecinos y las rutas aprendidas.

Requisitos previos

  • Interfaces Layer 3 con IP y Virtual Router (ver L3 Interfaces, Subinterfaces y DHCP)
  • Conocimiento de la topología del vecino: su IP, el protocolo, el área (OSPF), el AS (BGP) o el modo de la interfaz (RIP en PAN-OS es solo v2) (ver Lab PCNSA (curso))
  • Conectividad directa con el vecino y una regla de Security Policy que permita el protocolo entre las zonas (RIP, OSPF y BGP son aplicaciones que se pueden permitir) (ver Security Policy Fundamentals)
  • Para OSPF y RIP: la interfaz debe estar en el protocolo con el mismo tipo de red y parámetros que el vecino
  • Para BGP: los números de AS, el Router ID y la IP del peer alcanzable
  • Para PBF: saber el next hop y la interfaz de salida, y una IP de monitoreo si quieres conmutar si falla

Conceptos clave

ConceptoQué es
RIPProtocolo por vector de distancia; métrica = saltos (máx. 15); sencillo, para redes pequeñas
OSPFProtocolo de estado de enlace; usa áreas (el área 0 es el backbone); converge rápido
BGPProtocolo entre sistemas autónomos (AS); base de Internet y de redes grandes
Router IDIdentificador único del router en OSPF y BGP
Redistribution ProfileReglas para pasar rutas de un origen (estáticas, conectadas, otro protocolo) a otro
ECMPReparte tráfico entre rutas de igual costo
PBFReenvío según regla, antes de consultar la tabla de rutas
graph LR
    FW["Firewall<br/>VR default"] -- "OSPF área 0" --- R1["Router vecino 1"]
    FW -- "BGP AS 65001 a AS 65002" --- R2["Router ISP"]
    FW -- "RIP v2" --- R3["Router vecino 3"]
    R1 --- NET["Redes aprendidas<br/>entran a la tabla de rutas"]

Configuración (Ejemplo, Lab PCNSA)

1. RIP

  1. Network > Virtual Routers > default > RIP.
  2. Marca Enable. Opcional: Reject Default Route (por defecto activado).
  3. Interfaces > Add: la interfaz (por ejemplo ethernet1/1), Enable, Mode normal, y opcionalmente Advertise Default Route.
  4. Auth Profiles (opcional): contraseña o MD5 para autenticar a los vecinos.
  5. OK y Commit.
  6. Crea la regla de Security Policy para la aplicación rip entre las zonas del vecino.

2. OSPF

  1. Network > Virtual Routers > default > OSPF.
  2. Marca Enable y define el Router ID (por ejemplo 10.10.0.15).
  3. Areas > Add: Area ID 0.0.0.0 (backbone), Type Normal.
  4. En el área, pestaña Interface > Add: la interfaz (ethernet1/1), Enable, Passive (si no debe formar vecinos, solo anunciar la red), Link Type (broadcast, p2p o p2mp), Metric, y los timers (Hello Interval 10 s, Dead Counts 4 por defecto; deben coincidir con el vecino).
  5. Auth Profile (opcional) con contraseña o MD5.
  6. OK y Commit.
  7. Crea la regla de Security Policy para la aplicación ospf entre las zonas.

Tipos de área: Normal, Stub, NSSA. Un Stub no recibe rutas externas; un NSSA permite redistribución local.

set network virtual-router default protocol ospf router-id 10.10.0.15 enable yes
set network virtual-router default protocol ospf area 0.0.0.0 interface ethernet1/1 enable yes
commit

Si un comando no coincide con tu versión, usa Tab o ?.

3. BGP

  1. Network > Virtual Routers > default > BGP.
  2. Marca Enable, Router ID (por ejemplo 23.1.2.15) y AS Number (por ejemplo 65001).
  3. Peer Group > Add: Name ISP-A, Type EBGP (o IBGP).
  4. En el grupo > Peer > Add: Name isp-a-peer, Peer AS 65002, Local Address (interfaz y IP, por ejemplo ethernet1/6 23.1.2.15/24), Peer Address (23.1.2.1).
  5. Opcional: Import/Export rules, Auth Profile, Multi Hop (si el peer no está directamente conectado, necesario con eBGP a loopback), timers.
  6. Marca Install Route en BGP > General: sin esa opción las rutas aprendidas por BGP no se instalan en la tabla de rutas. (Reject Default Route viene activado: ignora la 0.0.0.0/0 anunciada por los peers.)
  7. OK y Commit.
  8. Crea la regla de Security Policy para la aplicación bgp.

Para anunciar redes propias por BGP: BGP > Redist Rules > Add y elige el Redistribution Profile; las Export Rules de BGP solo filtran lo anunciado a cada peer group.

4. Redistribution Profile (compartir rutas entre orígenes)

  1. Network > Virtual Routers > default > Redistribution Profiles > Add (en la lista de perfiles IPv4).
  2. Name static-to-ospf, Priority, Redistribute Redist, Source Type static (o connected, ospf, bgp, rip), y filtros por destino o interfaz.
  3. Aplícalo: en OSPF > Export Rules o RIP > Export Rules (o en BGP > Redist Rules) > Add y elige el perfil.
  4. Commit.

Sin redistribución, las rutas estáticas o de otro protocolo no se anuncian por defecto.

5. ECMP

  1. Network > Virtual Routers > default > Router Settings > ECMP.
  2. Marca Enable, y elige el método de reparto: IP Modulo, IP Hash, Weighted Round Robin o Balanced Round Robin.
  3. Max Path: cuántas rutas iguales usar (2 a 4).
  4. Opcional: Symmetric Return (el retorno sale por la misma interfaz por la que entró), Strict Source Path.
  5. OK y Commit.
  6. Debe haber al menos dos rutas al mismo destino, con la misma métrica y AD, por ejemplo dos rutas por defecto con métrica 10 por interfaces distintas.

El cambio de ECMP puede requerir reiniciar el Virtual Router (la GUI avisa), con corte breve.

6. Policy Based Forwarding (PBF)

  1. Policies > Policy Based Forwarding > Add. Name app-via-isp-b.
  2. Source: Source Zone o Source Interface (por ejemplo inside), Source Address, Source User.
  3. Destination/Application/Service: la aplicación o destino a desviar.
  4. Forwarding: Action Forward, Egress Interface ethernet1/7, Next Hop IP Address 24.1.2.1.
  5. Monitor (opcional): Profile Wait Recover o Fail Over, y una IP de destino para saber si el camino sigue vivo.
  6. Enforce Symmetric Return (opcional): fuerza el retorno por el mismo camino.
  7. OK y Commit.

Otras Actions de PBF: Discard (descarta) y No PBF (excluye ese tráfico de PBF para que use la tabla de rutas normal).

PBF y el orden

PBF se evalúa antes que la tabla de rutas, pero solo para el primer paquete de la sesión; el resto sigue el camino de la sesión. Aun así, necesitas Security Policy y NAT correctos para la interfaz de salida elegida.

Verificación

Comando o lugarQué debes verSi no lo ves
show routing protocol ospf neighborVecinos en estado FullSi está en Init o ExStart/Exchange (o en 2-Way con un vecino que debería ser DR/BDR), revisa el área, timers, MTU y autenticación
show routing protocol ospf interfaceInterfaces activas con área y estadoSi no aparece, la interfaz no está habilitada en OSPF
show routing protocol bgp peerPeer en estado EstablishedSi está en Active o Idle, revisa IP, AS, puerto 179 y regla
show routing protocol bgp loc-ribRutas aprendidas por BGPSi está vacío, no hay rutas aceptadas por las import rules
show routing protocol rip databaseRutas RIP aprendidasSi está vacío, revisa autenticación, interfaz y regla
show routing routeLas rutas con su origen (flags O, B, R, S, C)Si falta una, no se aprendió o hay una de menor AD
show routing fibRutas instaladas en la FIBSi la RIB tiene la ruta y la FIB no, mira ECMP y el estado de la interfaz
show routing summaryResumen de rutas por protocoloÚtil para ver si aumentan al activar el protocolo
show pbf rule all (o show running pbf-policy; verificar con Tab o ?)Reglas PBF activas y su estadoSi no aparecen, falta commit o la regla está deshabilitada
Monitor > Logs > TrafficLa interfaz de salida usada por la sesiónSi no es la esperada, PBF o la ruta no coinciden
Monitor > Logs > SystemCambios de vecinos y de rutasÚtil para saber cuándo cayó un vecino

Errores comunes

El vecino OSPF no llega a Full

  • Causa: Area ID, Hello/Dead timers, tipo de red, autenticación o MTU no coinciden; o la Security Policy no permite ospf.
  • Revisa: show routing protocol ospf neighbor y Monitor > Logs > Traffic (tráfico denegado).
  • Solución: alinea los parámetros con el vecino y permite la aplicación ospf en ambos sentidos entre las zonas.

La sesión BGP no se establece

  • Causa: IP o AS del peer incorrectos, el puerto TCP 179 bloqueado, el Local Address no coincide con lo que el vecino espera, o falta Multi Hop si no están directamente conectados.
  • Revisa: show routing protocol bgp peer y la regla de bgp.
  • Solución: corrige los datos, permite la aplicación bgp y confirma la configuración espejo en el vecino.

Se aprenden rutas pero no se instalan o no se usan

  • Causa: hay otra ruta con menor AD o métrica; la ruta aprendida no pasa las import rules; en BGP no está marcado Install Route.
  • Revisa: show routing route y las AD (ver Static Routing y Path Monitoring).
  • Solución: ajusta AD o métricas y revisa las reglas de importación.

Mis rutas no se anuncian a los vecinos

  • Causa: no hay redistribución ni export rule; la red no está en una interfaz habilitada en el protocolo.
  • Solución: habilita la interfaz en el protocolo o crea un Redistribution Profile y aplícalo.

El tráfico se rompe después de activar ECMP

  • Causa: ECMP puede hacer que ida y vuelta usen caminos distintos, y el NAT o la política por interfaz rompe las sesiones asimétricas.
  • Solución: activa Symmetric Return, asegúrate de que haya NAT/Security Policy coherentes para todas las salidas y prueba con tráfico real.

PBF no desvía el tráfico

  • Causa: la regla no coincide (zona, origen, aplicación), o el tráfico ya tiene sesión, o falta un No PBF previo que lo excluye.
  • Revisa: orden de reglas PBF y la sesión (show session id <n>).
  • Solución: ajusta la regla; para probar, borra la sesión con clear session all filter source <IP>.

Tras conmutar con PBF las sesiones fallan

  • Causa: el NAT por la otra interfaz no existe o la Security Policy no contempla esa zona de salida.
  • Solución: crea NAT y reglas para cada interfaz de salida (ver Source NAT).

El firewall aprende una ruta por defecto que no quiero

  • Causa: un vecino anuncia 0.0.0.0/0 y el firewall la acepta.
  • Solución: usa Reject Default Route (RIP) o filtros de importación en BGP/OSPF.