某据点采用MSR 2011做NAT,方式为NAPT,对端为防火墙,与远端业务服务器采用TCP长连接。在NAT session消失,即端口被释放后,与远端服务器无法通信。
NAPT端口映射采用轮询机制,对于不同类型的报文有不同的默认老化时间:
<Sysname> display nat aging-time
NAT aging-time value information:
tcp ---- aging-time value is 300 (seconds)
udp ---- aging-time value is 240 (seconds)
icmp ---- aging-time value is 10 (seconds)
pptp ---- aging-time value is 300 (seconds)
dns ---- aging-time value is 10 (seconds)
tcp-fin ---- aging-time value is 10 (seconds)
tcp-syn ---- aging-time value is 10 (seconds)
ftp-ctrl ---- aging-time value is 300 (seconds)
ftp-data ---- aging-time value is 300 (seconds)
no-pat ---- aging-time value is 240 (seconds)
端口映射轮询机制利用icmp,tcp以及ftp-data进行测试,对NAPT端口映射机制进行验证
icmp报文验证
tcp报文验证
ftp-data报文验证
在端口被释放后,下一次映射将启用下一端口号,由于NAT设备与远端业务服务器采用TCP长连接,NAT将端口释放后,防火墙未释放端口,下次NAT时更换端口后被防火墙拒绝而造成业务中断。此外,NAPT端口映射的轮询机制并不是一直轮询,而是在两次NAT相隔一段时间之后,将重新启用第一次映射的端口号,如下图所示:
由于在设备上只能调整报文触发NAT session的老化时间,无法保证每次映射都是原端口号不变
需要设备端与防火墙进行配合,调整tcp报文老化时间,同时调整防火墙端的老化时间,使二者尽可能的接近或一致,抑或在防火墙设备上做NAT
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作