Cisco NAT estático con mapas de ruta

8

Actualizar:

Parece que los mapas de ruta solo coinciden en las direcciones IP, no en los puertos. Tuve otra situación esta semana en un dispositivo, modelo y versión de software diferente. Terminé cambiando las declaraciones NAT a:

ip nat dentro del código fuente estático tcp 192.168.1.20 3389 xxxx 3389

Luego restringí el acceso basado en una ACL en lugar de un mapa de ruta. Hubiera sido bueno definir NAT condicional, pero parece que simplemente no funciona.


Por lo tanto, tenemos una configuración de caja NAT bastante estándar para ofrecer una solución NAT alojada para varios clientes.

Aquí está la topología básica:

Topología

Software Cisco IOS, Software C2900 (C2900-UNIVERSALK9-M), Versión 15.2 (4) M3, SOFTWARE DE LIBERACIÓN (fc2)

El problema que tengo es que ver con la sección del mapa de ruta de las declaraciones NAT.

ip nat inside source static tcp 10.1.10.201 22 x.x.x.x 22 vrf Customer1-vrf route-map Customer1-portforwarding extendable

ip access-list extended Customer1-forwarding-acl
 permit tcp host 10.1.10.201 host a.a.a.a eq 22
 permit tcp host 10.1.10.201 host b.b.b.b eq 22

route-map Customer1-portforwarding permit 10
 match ip address Customer1-forwarding-acl

Creo que entiendo el mapa de ruta correcto. Está destinado a designar lo que está permitido para NAT y lo que no. Básicamente estoy tratando de configurarlo para permitir solo traducciones de direcciones públicas específicas. No parece estar haciendo eso. Parece estar permitiendo traducciones de cualquier dirección pública.

Cambié completamente la ACL a una declaración de 'denegar cualquier IP' y todavía lo permite. Estoy un poco perdido. Parece que el mapa de ruta no está haciendo nada.

Cualquier ayuda sería muy apreciada!

Salud,

H

Firebirdnz
fuente
1
Es curioso, estaba investigando el mismo problema este fin de semana. Esto sucede también en una situación que no es VRF. Lamentablemente no pude terminar mi trabajo.
RedShift
¿Alguna respuesta te ayudó? Si es así, debe aceptar la respuesta para que la pregunta no siga apareciendo para siempre, buscando una respuesta. Alternativamente, puede proporcionar y aceptar su propia respuesta.
Ron Maupin

Respuestas:

2

creo que el problema está en la configuración de VRF en sí, así que verifique los siguientes
1. configure 'ip vrf forwarding Customer1-portforwarding' en las interfaces involucradas en NAT (interfaces nat inside, nat outside)
2. si su lista de acceso utilizará el Tabla de enrutamiento VRF, por lo que debe agregar el comando 'set vrf Customer1-portforwarding' en la configuración del mapa de ruta para hacer uso de la tabla de enrutamiento VRF
3. hacer que su mapa de ruta sea más específico configurando el siguiente salto
4. verifique NATing usando 'sh ip comando de traducción nat

hacer uso de esas URL
NAT sobre VRF
Mapa de ruta sobre VRF

Gadeliow
fuente
1

Me doy cuenta de que esta publicación es antigua, pero quería hacer un seguimiento de esta, en caso de que tenga este problema por ahí.

Es curioso que la dirección IP en la que está probando este NAT, fuera del global, también esté en el mismo VRF que el cliente. Si es así, es posible que desee probar: match-in-vrf

ip nat inside source static tcp 10.1.10.201 22 x.x.x.x 22 vrf Customer1-vrf route-map Customer1-portforwarding match-in-vrf

También probaría otros dos métodos: 1.) modifique su ACL para el mapa de ruta, para tener la misma fuente que la IP en la que desea NAT. Si leemos de izquierda a derecha sobre las reglas NAT, es posible que no analicemos esto hasta después de que ocurra la traducción. 2.) intente ip nat fuera del código fuente estático tcp ... No estoy seguro de cuál funcionaría, pero sería bueno ver una depuración como la siguiente:

access-list 99 permit host 10.1.10.201
access-list 99 permit host x.x.x.x
!
debug ip nat 99
!
terminal length 0
!
show log
Joseph Drane
fuente
0

Intente eliminar el puerto 22 de:

ip nat inside source static tcp 10.1.10.201 22 x.x.x.x 22 vrf Customer1-vrf route-map Customer1-portforwarding extendable

Mike Pennington
fuente
Perdón por el retraso en probar esto. Estuve de licencia la semana pasada ... Extracción de muelas del juicio ... Momentos divertidos ... Probado lo preguntaron esta mañana y lamentablemente no tuvimos suerte.
Firebirdnz
0

En la declaración NAT, indica que el puerto SOURCE es 22 en la dirección interna, pero en su ACL coloca el "eq 22" en el lado DESTINO. Intente eliminar "eq 22" de su mapa de ruta ACL por completo, o póngalo en el lado correcto (fuente) para que coincida con su declaración NAT.

fltsimbuff
fuente
0

Parece que el mapa de ruta tiene algunos problemas. No pude solucionar más problemas.

Firebirdnz
fuente