VCFC可以在EVPN组网下,支持第三方防火墙纳管。当发生流量不通问题时,往往很难定位。下面是经常遇到的应该第三方防火墙流量不通问题的经验案例。
EVPN组网,APP虚机通过第三方防火墙访问DB业务不通,导致APP业务异常。
APP虚机应首先确保自身的三层通信是正常的,因而需要确认APP虚机能Ping通自身网关,甚至跨网段互通也应该正常畅通。本文以APP虚机192.168.0.1访问DB 172.18.0.3为例说明,在第一步中,APP虚机192.168.0.1需要能学到自身网关IP 192.168.0.254的ARP并Ping通网关。
如果APP虚机无法Ping通自身网关、或跨三层通信有问题,请参考Fabric 1.5方案分布式网关三层转发不通问题排查云图进行排查。
当APP虚机访问DB时,首先会将报文发送至APP Leaf上,APP Leaf会在自身的VPN内查找DB路由转发,而这个DB路由是由Service_Leaf发布的,故而如果APP Leaf下未学到172.18.0.0/24 DB网段路由,请首先登陆Service_Leaf设备查看EVPN实例内是否network了该DB网段,如下图红框处,使用命令“display ip routing-table vpn-instance xxVPN”,来确认APP_Leaf是否学到DB路由,xxVPN为APP虚机所在的VRF,这里以“whVPN02”为例:
当未查到如上所述路由时,需要在Service_Leaf下确认是否发布了该网段路由,可以使用命令“display current-configuration | begin SDN_INSTANCE_BGP”来确认,如下图红框处,可以看到BGP实例100的EVPN地址簇下,DB所在的VPN(whVPN)内,network了DB网段172.18.0.0/24:
如果Service_Leaf未network DB网段,请进入步骤三继续排查。
如果Service_Leaf已经network了DB网段,但APP Leaf未学到该DB网段路由,请参考Fabric 1.5方案分布式网关三层转发不通问题排查云图进行排查。
DB vRouter(即导流vRouter)上,需要手工挂载DB网段做为vRouter接口,请确认DB所对应的引流vRouter上,是否已经挂载了DB网段做为接口。如下图,可以登录VCFC 前台页面,进入【虚拟网络/虚拟路由器】路由,找到导流vRouter(示例为“wh_vrouter1”),点击接口一栏,可以查看该vRouter是否挂载了DB网段:
如果导流vRouter没有挂载DB网段,请先手工挂载。
如果导流vRouter已经挂载了DB网段,但APP Leaf仍未学到DB网段路由,则进行步骤四继续排查。
APP路由器需要通过路由器连接功能,与专属路由器打通,从而引入路由。请打开VCFC前台页面,进入【网络服务/第三方防火墙/虚拟路由器连接】一栏,确认APP路由器(示例为wh_vrouter2)与导流路由器(示例为wh_zsvRouter)是否配置了虚拟路由器连接,如下图红框处:
如果未配置正确的虚拟路由器连接,请手工增加配置。
如果已配置正确的虚拟路由器连接,但APP虚机仍旧无法访问DB,则进入步骤五继续排查。
当访问DB的报文通过APP Leaf发送至Service_Leaf后,Service_Leaf需要在专属VPN内查找路由表,通过专属子网将报文发送给第三方防火墙。如下图,可以使用命令“display ip routing-table vpn-instance xxVPN”来查看是否学到了DB网段路由。这里的xxVPN为专属路由器的VRF,示例以whzsVPN为例,可以看到这张路由表下有DB网段的静态路由:
如果已学到正确的路由,但APP虚机仍旧无法访问DB,则进入步骤七继续排查。
如果未学习到正确的路由,则请进入步骤六继续排查。
第三方防火墙的专属IP需要在VCFC上线,否则第五步的默认路由下一跳不会生效,从而DB网段的路由失效。请首先在VCFC前台页面的【虚拟网络/虚拟端口】 确认防火墙的专属IP是否上线,如下图红框处:
如发现专属IP未上线,请先确认第三方防火墙是否配置了专属IP。在已配置专属IP的情况下,如果该IP仍未上线,请参考网络overlay虚机无法上线故障排查云图进行排查。
如确认专属IP已经上线,APP虚机仍旧无法访问DB,则进入步骤七。
对于第三方防火墙而言,需要明确标识出DB业务所在的虚拟路由器,这个路由器被称之为到了虚拟路由器。
请在VCFC前台页面的【网络服务/第三方防火墙/第三方防火墙】中,找到对应的第三方防火墙,确认已经绑定了导流虚拟路由器,如下图红框处:
如果确认第三方防火墙已绑定正确的导流虚拟路由器,APP虚机仍旧无法访问DB,则进入步骤八。
当报文经由Service_Leaf发给第三方防火墙后,需要确保防火墙处理正确,并将报文通过导流子网发送回Service_Leaf。
此处可以协调第三方防火墙确认,也可以在Service_Leaf上通过流统、抓包等手段确认,不再赘述。
如果确认第三方防火墙处理正确,且已经将报文通过导流子网发送回Service_Leaf,APP虚机仍旧无法访问DB,则请进入步骤九继续排查。
Service_Leaf通过导流子网从第三方防火墙收到报文后,应该在导流VPN内查找DB虚机明细路由并转发。
同时,Service_Leaf应该直接下挂DB业务,故而DB业务的IP应该在VCFC上虚拟端口上线,并形成直连ARP。
如下图红框处,可以通过命令“display ip routing-table vpn-instance xxVPN”来确认导流VPN内是否存在DB网段路由(示例中以whVPN做为导流VPN),并找到其对应的interface vsi号(示例为vsi 8),更进一步,可以使用命令“display arp interface vsi xx”来确认是否存在DB虚机的直连ARP:
如果发现没有直连ARP,请确认DB虚机是否正确上线。
如果确认发现存在直连ARP,但APP虚机仍旧无法访问DB,则请进入步骤十继续排查。
如果Service_Leaf已经将报文发送给了DB,则下一步需要确认DB是否回包。有如下几种可能会造成DB不回包:
a.
b.DB虚机未在控制器上线,请参考网络Overlay虚拟端口无法正常上线问题排查云图进行排查。
c.
最后发现是DB未回包导致,协调DB侧工程师确认后,发现是DB服务器异常,导致DB业务不通,问题得以定位。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作