|
发表于 2013-8-2 16:13:52
|
显示全部楼层
本帖最后由 q0066421 于 2013-8-2 17:03 编辑
hepkl 发表于 2013-8-1 22:33 
我觉得您真是研究的很透,在HH你是第一个仔细对应我每个问题回答的人
现在问题还有一点模糊,
1您说LFI ...
“lfib中也没有vrf标签条目”我这么说也不严谨,应该分情况。
对于P,它没有vrf,也不需要知道vrf的路由或标签,所以都是全局标签。
对于PE,起了mpls后,全局forwarding-table会包括从vrf学到的前缀条目,以类似channel V的符号表示。
还是整个走一遍流程更容易理解。见图,规定R1标签范围100-199,R2标签范围200-299,R3标签范围300-399。
R4以192.168.4.4为源ping 192.168.5.5(R5)
PE路由器R2的F0/1 vrf接口收到icmp包,这个接口并没有起mpls,所以查vrf的cef表,这已经不是原来的cef表,而是包含了标签信息的。
R2#sh ip cef vrf a 192.168.5.5
192.168.5.5/32, version 8, epoch 0, cached adjacency 12.1.1.1
0 packets, 0 bytes
tag information set
local tag: VPN-route-head
fast tag rewrite with Fa0/0, 12.1.1.1, tags imposed: {101 303}
via 3.3.3.3, 0 dependencies, recursive
next hop 12.1.1.1, FastEthernet0/0 via 3.3.3.3/32
可知会为这个icmp包打上两层标签(内层303的vpnv4标签,外层101的ldp标签)并从F0/0口丢出。
P路由器R1的F0/1口收到,
R1#show mpls forwarding-table
Local Outgoing Prefix Bytes tag Outgoing Next Hop
tag tag or VC or Tunnel Id switched interface
100 Pop tag 2.2.2.2/32 1770 Fa0/1 12.1.1.2
101 Pop tag 3.3.3.3/32 2950 Fa0/0 13.1.1.3
只关注外层标签,101切为Pop(弹出)后从F0/0丢出。此时内层303成为唯一标签。
对端PE路由器R3的F0/1口收到,
R3#show mpls forwarding-table
Local Outgoing Prefix Bytes tag Outgoing Next Hop
tag tag or VC or Tunnel Id switched interface
300 100 2.2.2.2/32 0 Fa0/1 13.1.1.1
301 Pop tag 1.1.1.1/32 0 Fa0/1 13.1.1.1
302 Pop tag 12.1.1.0/24 0 Fa0/1 13.1.1.1
303 Untagged 192.168.5.5/32[V] 2850 Fa0/0 192.168.35.5
304 Aggregate 192.168.35.0/24[V] \
0
303被剥去并从F0/0丢出。最后被对端R5的F0/1收到。
从整个过程可以看出:
1.本端PE上打的内层vpnv4标签,只有对端PE认得,所以在中间P路由器上传递时,需要隐藏在外层的ldp标签之下。303也就是必须到达R3才可被识别。
2.本端PE上打的外层ldp标签,用来在整个核心内部运送数据包,直到对端PE前一跳被弹出,保证数据包被送到R3并露出vpnv4标签,完成使命。
对于你的问题:
1.lfib也分全局和vrf。
#show mpls forwarding-table
#show mpls forwarding-table vrf xxx
2.标签分层,给我的感觉就像GRE tunnel一样,形成一个隧道。
3.双层标签通过上面的例子应该就能看出了。
PE上有VPN具体路由(P上可以show出,但其实它不管你是什么东西,只是按照特定规则来传递路由),内层标签也就是vpnv4的标签,对应具体的vpn路由。 |
16#
2013-8-2 16:13:52
回复(0)
收起回复
|