华为NE40E交换机调测BGP/MPLS IP VPN
本节介绍了BGP/MPLS IP VPN的调测方法。
操作步骤
-
在设备上使用命令display ip vpn-instance verbose,查看VPN实例的配置信息是否正确。
-
在设备上使用命令display bgp peer ,查看BGP对等体信息。
检查BGP对等体和VPN数量是否正确。如上述加粗部分所示,State达到Established状态,表示PE与PE之间的BGP对等体关系已建立。
-
在设备上使用命令display bgp vpnv4 routing-table ,查看BGP VPNv4的路由信息。
查看设备接收和发送的BGP路由是否正确。首先,检查PE发布的路由是否正确,有没有多发或少发路由。其次,检查是否从对等体正确地收到路由。
-
在设备上使用命令display ip routing-table vpn-instance ,查看VPN实例路由表的信息。
本命令用来检查收到的BGP路由,是否写到私网路由表中。如果BGP收到了,却没有写到私网路由表中,常见的原因可能是公网隧道没建好或路由策略给过滤掉了。如上述加粗部分所示,可以看到去往对端CE上的路由。
-
在CE1使用命令ping,测试CE1与CE2的连通性。
上述显示信息显示同一VPN内部的两台CE能够连通。
常见故障处理
如果私网流量中断,可按以下步骤处理。
-
检查路由下一跳是否可达。
在路由的发送端(本端PE)执行display bgp vpnv4 vpn-instance vpn-instance-name routing-table ipv4-address [ mask | mask-length ]命令查看目标路由(ipv4-address表示目标路由前缀),确认路由是否存在。
-
如果路由不存在,请确认CE路由是否发布到PE。
-
如果路由存在,请按照下面示例确认路由是否活跃。
以1.1.1.1/32这条路由举例,下面命令显示此路由是活跃的(valid)优选的(best),此路由的BGP下一跳为3.3.3.3(Original nexthop),经过迭代后的下一跳为10.10.20.2(Relay IP Nexthop)。
display bgp vpnv4 vpn-instance vpna routing-table 1.1.1.1BGP local router ID : 10.20.1.2 Local AS number : 100 VPN-Instance vpna, router ID 10.20.1.2: Paths: 1 available, 1 best, 1 select BGP routing table entry information of 1.1.1.1/32: Imported route. From: 10.20.1.1 (1.1.1.1) Route Duration: 00h00m03sRelay IP Nexthop: 10.20.1.2Relay IP Out-Interface: GigabitEthernet1/0/0Original nexthop: 3.3.3.3 Qos information : 0x0 AS-path Nil, origin incomplete, MED 0, localpref 100, pref-val 0,valid, internal,best, select, active, pre 255 Not advertised to any peer yet-
如果目标路由不活跃,请确认IP路由表中是否存在到BGP下一跳(Original nexthop)的路由,如果不存在说明BGP路由不发布是由于路由下一跳不可达导致,请确认为何没有到BGP下一跳(Original nexthop)的路由(一般属于IGP或静态路由问题)。
-
如果目标路由活跃,却没有被优选(没有best),请确认IP路由表中是否有其他协议优先级(preference)更高的路由存在。如果有,请确认是否需要将此路由引入到BGP中或调整协议优先级。 如果没有请联系华为技术支持工程师。
说明:在BGP路由表中同一前缀可能有多条路由,其中最多只有1条路由会被优选(best),并且只有被优选的路由才会被添加到IP路由表中并发送给其他邻居。BGP路由与其他协议路由进行比较时是靠协议优先级(preference)来决定哪个更优的。
-
如果目标路由活跃,却没有优选,请联系华为技术支持工程师。
说明:只要有BGP路由活跃,则必然有一条路由会被优选。
-
如果目标路由活跃且被优选,但没有显示发送给路由接收端,请执行步骤2(重点检查路由发送端的出口策略)。
在路由接收端执行display bgp vpnv4 all routing-table network { mask | mask-length }查看是否收到目标路由。
-
如果收到目标路由,请重复执行步骤1判断路由下一跳是否可达并且是否被优选。
-
如果没有收到目标路由,请执行步骤2(重点检查路由接收端的入口策略)。
-
-
-
检查路由策略是否正确。
在路由的发送端/接收端执行display current-configuration configuration bgp命令查看BGP配置,确认是否配置邻居的出口/入口策略。
说明:display current-configuration configuration bgp# bgp 100 peer 1.1.1.1 as-number 200 peer 2.2.2.1 connect-interface LoopBack0 # ipv4-family unicast undo synchronization peer 1.1.1.1 enable # ipv4-family vpnv4 policy vpn-target peer 1.1.1.1 enable peer 1.1.1.1filter-policy acl-name acl-name importpeer 1.1.1.1filter-policy acl-name acl-name exportpeer 1.1.1.1as-path-filter 1 importpeer 1.1.1.1as-path-filter 1 exportpeer 1.1.1.1ip-prefix prefix-name importpeer 1.1.1.1ip-prefix prefix-name exportpeer 1.1.1.1route-policy policy-name importpeer 1.1.1.1route-policy policy-name export# ipv4-family vpn-instance vpna import-route direct peer 10.1.1.1 as-number 300 peer 10.1.1.1filter-policy acl-name acl-name importpeer 10.1.1.1filter-policy acl-name acl-name exportpeer 10.1.1.1as-path-filter 1 importpeer 10.1.1.1as-path-filter 1 exportpeer 10.1.1.1ip-prefix prefix-name importpeer 10.1.1.1ip-prefix prefix-name exportpeer 10.1.1.1route-policy policy-name importpeer 10.1.1.1route-policy policy-name export# return由于是私网流量中断,只需要关注BGP-VPNv4地址族或BGP-VPN实例地址族下的邻居。
-
如果两端配置了出口/入口策略,则需要确认这些策略是否会把目标路由过滤掉,导致该路由无法正常收发。路由策略的具体配置请参见《HUAWEI NetEngine40E/80E 路由器 配置指南-IP路由》。
-
如果两端没有配置相应的出口/入口策略,请直接执行步骤3。
-
-
检查是否迭代不到隧道导致路由不活跃。
在路由的接收端(远端PE)执行display bgp vpnv4 all routing-table ipv4-address [ mask | mask-length ]命令查看目标路由,确认VPNv4路由是否可以迭代到隧道。
以路由50.1.1.2/32为例,显示信息中Relay Tunnel Out-Interface和Relay token字段不为空表示该路由可以迭代到隧道。
display bgp vpnv4 all routing-table 50.1.1.2BGP local router ID : 2.2.2.2 Local AS number : 100 Total routes of Route Distinguisher(1:2): 1 BGP routing table entry information of 50.1.1.2/32: Imported route. Label information (Received/Applied): 13316/NULL From: 1.1.1.1 (1.1.1.1) Route Duration: 00h00m08s Relay IP Nexthop: 10.20.1.1 Relay IP Out-Interface: GigabitEthernet1/0/0Relay Tunnel Out-Interface: GigabitEthernet1/0/0Relay token: 0x1002 Original nexthop: 1.1.1.1 Qos information : 0x0 Ext-Community:RTAS-path Nil, origin incomplete, MED 0, localpref 100, pref-val 0, valid, internal, best, select, pre 255 Not advertised to any peer yet VPN-Instance vpna, router ID 2.2.2.2: Total Number of Routes: 1 BGP routing table entry information of 50.1.1.2/32: Imported route. Label information (Received/Applied): 13316/NULL From: 1.1.1.1 (1.1.1.1) Route Duration: 00h00m07sRelay Tunnel Out-Interface: GigabitEthernet1/0/0Relay token: 0x1002 Original nexthop: 1.1.1.1 Qos information : 0x0 Ext-Community:RTAS-path Nil, origin incomplete, MED 0, localpref 100, pref-val 0, valid, internal, best, select, active, pre 255 Not advertised to any peer yet-
如果迭代不到隧道,请确认相应的隧道是否存在或者隧道配置是否正确。具体请参考《HUAWEI NetEngine40E/80E 路由器 故障处理》的“MPLS”一章。
-
如果迭代到隧道,请直接执行步骤4。
-
-
检查是否ERT/IRT不匹配导致路由无法交叉到私网路由表中。
在路由的发送端(本端PE)/接收端(远端PE)执行display current-configuration configuration vpn-instance命令查看是否本端VPN实例的ERT与远端VPN实例的IRT不匹配,导致路由发送到远端PE后无法交叉到远端VPN实例中。
export-extcommunity表示ERT, import-extcommunity表示IRT。
display current-configuration configuration vpn-instance# ip vpn-instance vpna ipv4-family route-distinguisher 1:1 vpn-target 111:1 export-extcommunity vpn-target 111:1 import-extcommunity apply-label per-instancevpn-target 1:1 export-extcommunity vpn-target 1:1 import-extcommunityip vpn-instance vpnb ipv4-family route-distinguisher 1:2 vpn-target 1:1 export-extcommunity vpn-target 1:1 import-extcommunity # return-
如果ERT和IRT不匹配,请在VPN实例下配置匹配的vpn-target。
-
如果ERT和IRT匹配,请执行步骤5。
-
-
检查是否标签超限。
首先在路由发送端(本端PE)确认是否使能了mpls。然后,使用display bgp vpnv4 all routing-table ipv4-address [ mask | mask-length ]查看目标路由,确定该目标路由是否分到私网标签。
如果显示信息中没有Label information字段,则可能是标签资源不足,导致无法为该路由申请到标签而不会给其它对等体。
display bgp vpnv4 all routing-table 10.1.1.1BGP local router ID : 10.1.1.2 Local AS number : 100 Total routes of Route Distinguisher(1:1): 1 BGP routing table entry information of 10.1.1.0/24: Imported route.Label information(Received/Applied): NULL/13312 From: 0.0.0.0 (0.0.0.0) Route Duration: 00h21m24s Direct Out-interface: NULL0 Original nexthop: 10.1.1.1 Qos information : 0x0 Ext-Community:RTAS-path Nil, origin incomplete, MED 0, pref-val 0, valid, local, best, select, pre 255 Advertised to such 1 peers: 1.1.1.1 VPN-Instance vpna, router ID 10.1.1.2: Total Number of Routes: 1 BGP routing table entry information of 10.1.1.0/24: Imported route. From: 0.0.0.0 (0.0.0.0) Route Duration: 00h21m24s Direct Out-interface: NULL0 Original nexthop: 10.1.1.1 Qos information : 0x0 AS-path Nil, origin incomplete, MED 0, pref-val 0, valid, local, best, select, pre 60 Not advertised to any peer yet-
如果是标签不足,可在VPN实例视图下通过命令apply-label per-instance配置每实例每标签,来减少标签的使用量。也可以通过路由聚合来减少路由数量。
-
如果标签没有超限,请执行步骤6。
-
-
检查路由是否超限。
在路由接收端执行display current-configuration configuration bgp | include peer destination-address和display current-configuration configuration bgp | include peer group-name(如果Peer被加入到对等体组中)命令查看BGP配置,确认是否配置邻居路由限制。
例如,限制只能从邻居1.1.1.1收5条路由,超限之后将丢弃路由并记录日志。
display current-configuration configuration bgp | include peer 1.1.1.1peer 1.1.1.1 as-number 100 peer 1.1.1.1route-limit 5 alert-onlypeer 1.1.1.1 enable如果BGP邻居被加入到组中,显示信息中有可能没有route-limit的配置。
display current-configuration configuration bgp | include peer 1.1.1.1peer 1.1.1.1 as-number 100 peer 1.1.1.1group IBGPpeer 1.1.1.1 enable这种情况下,需要使用display current-configuration configuration bgp | include peer group-name来查看该对等体组的配置。
display current-configuration configuration bgp | include peer IBGPpeerIBGP route-limit 5 alert-onlypeer IBGP enable如果流量中断时,产生了路由超限日志,表示路由超限导致目标路由被丢弃,则需要扩大本端的路由限制数值。
说明:修改BGP邻居限制的最大路由数量时会中断邻居,建议在路由发送端通过路由聚合以减少路由数量来解决。
-
如果故障仍未排除,请收集如下信息,并联系华为技术支持工程师。
- 上述步骤的执行结果。
- 设备的配置文件、日志信息、告警信息。
- 上一篇:华为NE40E交换机调测VPWS 2018-5-30
- 下一篇:华为NE40E交换机调测MPLS LDP 2018-5-30