1,问题描述

组网情况:

现象描述:

用户期望内部PC通过公网域名去直接访问内部服务器。配置文件如下:

nat alg dns enable

#

nat dns-map ztbzx.huangshi.gov.cn 61.184.106.138 80 tcp

nat dns-map www.hsztbzx.com 61.184.106.138 80 tcp

#

配置完成后,发现设备的CPU占用率会很高,有告警提示。

Jun 5 2013 08:57:55+00:00 AR3260 %%01MON/4/CPU_USAGE_HIGH(l)[0]:The CPU is overloaded, and the tasks with top three CPU occupancy are VALP(91%), SOCK(0%), AREM(0%). (CpuUsage=97%, Threshold=80%)

Jun 5 2013 08:56:48+00:00 AR3260 %%01MON/4/CPU_USAGE_HIGH(l)[1]:The CPU is overloaded, and the tasks with top three CPU occupancy are VALP(87%), SOCK(0%), QADP(0%). (CpuUsage=93%, Threshold=80%)

Jun 5 2013 08:54:13+00:00 AR3260 %%01MON/4/CPU_USAGE_HIGH(l)[2]:The CPU is overloaded, and the tasks with top three CPU occupancy are VALP(94%), QADP(1%), SOCK(0%). (CpuUsage=100%, Threshold=80%)

2,处理过程

了解到现网的内部网络有大量的主机,使能DNS ALG后,当内部主机转发报文携带域名时,均需要上送AR进行解析,导致CPU占用率高。

解决方法如下:

1、删除DNS ALG和DNS Mapping的配置,配置文件如下:

undo nat alg dns enable

undo nat dns-map ztbzx.huangshi.gov.cn 61.184.106.138 80 tcp

undo nat dns-map www.hsztbzx.com 61.184.106.138 80 tcp

2、在GE1/0/0上配置NAT Server,配置文件如下:

#

acl number 3000

rule 0 permit ip source 192.168.1.0 0.0.0.255 destination 61.184.106.138 0

#

interface GigabitEthernet1/0/0

ip address 192.168.1.1 255.255.255.0

nat outbound 3000 //内网主机直接访问61.184.106.138时做Easy IP,将源地址改为GE1/0/0的地址,保证内网服务器和内网主机间的交互都经过Router转发

nat server protocol tcp global 61.184.106.138 www inside 192.168.1.2 www //内网主机直接访问61.184.106.138时,将目的地址改为私网地址

3,建议与总结

使能ALG(Application Level Gateway)功能可以使NAT设备识别被封装在报文数据部分的IP地址或端口信息,并根据映射表项进行替换,实现报文正常穿越NAT。目前设备的ALG功能所支持的协议包括:DNS、FTP、SIP、PPTP和RTSP。

过多的内网主机同时用域名方式访问内网服务器时,如果使能了NAT ALG,会导致设备的CPU占用率高,因此,可以采用NAT Outbound和NAT Server的方式来规避此问题。

查看原文 >>
相关文章