Introducción
Este documento describe una situación en la que la Traducción de direcciones de red para la interfaz virtual (NAT NVI) provoca un uso elevado de la CPU. NAT NVI se diseñó para permitir NAT entre contextos de reenvío de ruta virtual (VRF), pero se ha visto que se ha implementado en escenarios que no son VRF.
CPU de entrada IP alta con NAT NVI sin VRF
En algunos de estos escenarios que no son VRF, NAT NVI puede causar switching de proceso que puede conducir a una alta cpu debido al proceso de entrada IP y a un menor rendimiento. La conmutación de procesos se observa cuando NAT NVI se realiza junto con la sobrecarga de la interfaz o el conjunto NAT que contiene las direcciones IP que están dentro de la subred de una interfaz local. Cuando esto sucede, el comando show process cpu sorted muestra una alta utilización debido al proceso IP Input.
Router#show process cpu sorted
CPU utilization for five seconds: 84%/37%; one minute: 30%; five minutes: 11%
PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process
112 189988000 137290092 1383 45.91% 13.97% 4.05% 0 IP Input
show ip cef switching statistics feature muestra un gran y creciente número de punts debido al paquete destinado a nosotros:
Router#show ip cef switching statistics
Reason Drop Punt Punt2Host
RP LES Packet destined for us 0 1402039546 0
RP LES Total 0 1402039546 0
All Total 0 1402039546 0
Solución
Reemplace NAT NVI con NAT heredada (ip nat inside o ip nat outside) como se muestra a continuación:
1. Agregue las nuevas sentencias NAT heredadas para entradas dinámicas y estáticas.
(config)#ip nat inside source list 100 interface GigabitEthernet0/0 overload
2. Agregue ip nat inside o ip nat outside según corresponda a las interfaces NAT.
(config)#interface gigabitethernet0/0
(config-if)#ip nat inside
(config)#interface gigabitethernet0/1
(config-if)#ip nat outside
3. Elimine ip nat enable de todas las interfaces.
(config)#interface gigabitethernet0/0
(config-if)#no ip nat enable
(config)#interface gigabitethernet0/1
(config-if)#ip nat enable
4. Elimine las entradas NAT NVI dinámicas y estáticas. Esto podría requerir que utilice la palabra clave "forced" para eliminar las entradas que se están usando actualmente.
(config)#no ip nat source list 100 int gigabitEthernet 0 overload
Nota: La guía de configuración para NAT NVI se puede encontrar aquí como referencia.