建议拓扑如下:
故障:1、公网PC访问内网服务器时,流量经过MSR公网接口时先执行一次nat server进行目的地址转换,从内网接口出去时再执行一次nat outband进行源地址转换,通过该方式实现双向NAT转换
2、按照正常配置之后,发现内网服务器无法访问,MSR都有正常的nat转换信息
在终端上抓包发现,确认tcp三次握手已经建立,但是http request请求没有回应,事实上tcp的三次握手根本就没有完成。终端在发送ACK包后,以为tcp成功建立,于是发送了http request,但这个ack的包没有被正确的进行NAT转换,也就是说终端认为tcp已经建立,但服务器由于收不到正确的ACK包,TCP状态依然处于SYN_RCVD。
一条数据流经过MSR时,只有第一个报文会走慢转并建立快速转发表项,后续报文会直接走快转表。快转时是看不到nat转换的debug信息的,因此nat debug信息实际上只是第一个报文的慢转流程,后续的报文并未真正进行NAT转换,而是直接根据已经建立的快转表进行转发。 本案例中,第一个SYN包走慢转,并触发了从终端到服务器方向的快转表。第二个SYN_ACK包也走慢转,并触发了从服务器到终端方向的快转表。第三个ACK包,由于匹配了第一个SYN包产生的快转表,所以导致NAT无法正确进行
在做单向NAT时,一条快转关联一个NAT表项,这种机制可以有效的提高报文转发效率,提升路由器的业务处理能力。而在做双向NAT时,两个端口都进行NAT转换,在开启快转的情况下,一条快转需要两个NAT表项,一个用来替换源地址,一个用来替换目的地址。我司MSR V5设备一条快转只能关联一个NAT表项,因此一条数据流除了第一个报文走慢转可以顺利进行NAT转换外,后续走快转表的报文都不能够正常转换,导致客户在开启快转配置双向NAT的MSR V5设备上无法正常访问web业务。
若需实现双向NAT,必须在内外网两个接口上都关闭快转,命令undo ip fast-forwarding。
注意:关闭接口上的快转功能可能会对客户的业务造成一定影响。快速转发功能是一个提高设备转发效率的功能,在关闭了快转后,经过路由器的每一条报文都需要经过CPU处理,从而导致CPU率利用率上升,加重了CPU的负担,降低了报文转发速度。在客户业务流量较小时,影响不大;在客户业务流量较大时,关闭快转会使得业务处理变慢,CPU长期处于高负荷运转,不利于客户的业务开展和路由器的生命周期,严重时可能导致宕机。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作