实验拓扑:
第一步:配置IP地址(注意ASBR之间不需要创建VPN实例,而两个PE的实例的RT值需要相同)
PE1上:
PE2上:
第二步:区域中IGP邻居关系的建立,MPLS的配置(略,需要注意的是,两个ASBR之间的接口需要配置MPLS,但不需要开启MPLS LDP)。
第三步:配置BGP对等体(以PE1、CE1和ASBR1为例)。
CE1:
PE1:
ASBR:注意关闭VPN-Target检测,并且开启利用下一跳进行标签分配。
流量分析:CE1pingCE2:
CE1发送报文(目的地址8.8.8.8/32)到达PE1,利用RD值找到对应的VRF,并拆包查看对应的FIB表,封装好内层标签1026,并知道隧道ID为0x3:
于是查看LFIB表:
查看下一跳信息,封装好1025作为外层标签,从出接口G0/0/1发送出去。
P1接收到以后,查看LFIB表:出标签为隐式标签3,于是剥离外层标签从g0/0/1接口发送出去。
ASBR1接收到以后,查看LFIB表,因为只有内层标签,匹配到入标签1027,交换到出标签到1027。
详细信息:
虽然这个表中没有出接口,但是可以通过BGP Key对应找到relay token,以此relay tunnel out-interface,使用命令dis bgp vpnv4 all routing-table 8.8.8.8(目的地地址)即可找到,这里出接口是g0/0/1,发送给ASBR2。
ASBR收到后,查看LFIB表:
进行标签的交换,查看详细的信息:
根据outgoing token 0x4对应token找到外层封装的标签为1024,并发送给P2:
P2接收到以后,查看LFIB表:发现出标签为3(隐式标签),出接口为g0/0/0。
剥离外层标签后发送,PE2接收到以后,发现只有内层的1026标签,出标签为NULL:
于是剥离标签从查看to65002的vrf转发表发送到CE1完成数据的传输。