文本版|topic 高级搜索
   名人堂 帮助 论坛制度 意见反馈 | 首页 博客 周新贴 招聘 专题 新闻
RSS 底部
 
社区导航: 专家门诊   网络技术   操作系统   数据库   程序设计   系统应用   考试认证   CIO及信息化   站长交流   综合交流   下载基地  51CTO产品服务 设为首页 | 收藏本站
51CTO技术论坛» 原创网络技术视频 » 视频讨论专区 » 由/32位主机路由引起的MPLS标签分发问题       [ 打印]  [ 订阅]  [ 收藏]  [ 推荐给朋友]   [ 本帖文本页]

论坛跳转:
     
标题: [原创] 由/32位主机路由引起的MPLS标签分发问题  ( 查看:287  回复:1 )   
 
IT傻博士
主版主  点击可查看详细


帖子 496
精华 1
无忧币 13041
积分 4508
阅读权限 150
来自 (保密)
注册日期 2006-7-4
最后登录 2008-7-19 离线

[查看资料]  [发短消息]  [Blog
[个人主页]    QQ       
发表于:2008-5-7 11:46   标题:由/32位主机路由引起的MPLS标签分发问题
上一帖 |
本试验文档由ITAA实验室gotolab原创,精华试验文档,大家看着好,学到东西后,别忘了回帖哦!好东东要学会共享哦!

由/32位主机路由引起的MPLS标签分发问题



本实验服务商网络R1/R2/R3/R4均匀行OSPF,环回口地址为x.x.x.x/32,如果不慎配置为x.x.x.x/24,则OSPF仍会以/32形式通告环回口网络,因此引发的标签分发问题如下:

1、路由器收不到自身FIB表的下游标签

以R4为例,标签表LIB:

R4#show mpls ip binding
  1.1.1.0/24    收到/24位的路由标签,该标签来自R1(R1自身按照直连接口安装路由)
    out label:    imp-null  lsr: 1.1.1.1:0      
  1.1.1.1/32  收到/32位路由的标签,因为R2/R3FIB表均为/32位路由
    in label:     16        
    out label:    19        lsr: 3.3.3.3:0      
    out label:    19        lsr: 2.2.2.2:0      

!这里R1自然不会通告1.1.1.1/32的标签。

  4.4.4.0/24
    in label:     imp-null  
  4.4.4.4/32 (no route) 在R4上并没有自身的/32位路由
    in label:     imp-null  
    out label:    20        lsr: 3.3.3.3:0      
    out label:    20        lsr: 2.2.2.2:0      
    out label:    22        lsr: 1.1.1.1:0      

(后面省略)


R4的FIB表:

R4#show ip route ospf
  1.0.0.0/32 is subnetted, 1 subnets
O  1.1.1.1 [110/11] via 14.1.1.1, 00:03:57, Ethernet0/0.14
  2.0.0.0/32 is subnetted, 1 subnets
O  2.2.2.2 [110/11] via 24.1.1.2, 00:03:57, Ethernet0/0.24
  3.0.0.0/32 is subnetted, 1 subnets
O  3.3.3.3 [110/11] via 34.1.1.3, 00:03:57, Ethernet0/0.34
  23.0.0.0/24 is subnetted, 1 subnets
O  23.1.1.0 [110/20] via 24.1.1.2, 00:03:57, Ethernet0/0.24
   [110/20] via 34.1.1.3, 00:03:57, Ethernet0/0.34

结合FIB+LIB表,形成的LFIB表如下:

R4#show mpls forwarding-table
Local  Outgoing    Prefix            Bytes tag  Outgoing   Next Hop   
tag    tag or VC   or Tunnel Id      switched   interface              
16     Untagged    1.1.1.1/32        0          Et0/0.14   14.1.1.1     
17     Untagged    2.2.2.2/32        0          Et0/0.24   24.1.1.2     
18     Untagged    3.3.3.3/32        0          Et0/0.34   34.1.1.3     
19     Pop tag     23.1.1.0/24       0          Et0/0.24   24.1.1.2     
    Pop tag     23.1.1.0/24       0          Et0/0.34   34.1.1.3   

R4并没有收到1.1.1.1/32,2.2.2.2/32,3.3.3.3/32的下游标签,因此形成的LFIB表,对于这几个条目,均表示为Untagged,这代表收到对应数据包之后,要将MPLS外层标签剥掉。这个剥掉和PHP不同,PHP剥掉标签之后,往最后1跳转,在标签转发表里显示为Pop tag,而Untagged则会进一步读该数据报。

2、MPLS外层剥掉之后,读到内层VPN标签,对于中间P路由器来说,是无法正确识别的,因此丢包。从客户站点R5 ping R6,在P路由器可见:

R4#debug mpls drops
MPLS drops debugging is on
*Apr 26 16:51:48.135: tagsw_replace_header: Pkt drop -- EoS conflict, incg label 17 hwinput Et0/0

解决办法:A、将接口IP子网掩码设置为/32

  或者:B、在环回口下配置ip ospf network point-to-point

该问题具备很强的隐蔽性,特别在路由较多的时候,不易直接发现。因此不要认为消除主机路由是可有可无的,也不要认为将环回口全部配置为/32位子网掩码,仅仅是为了节省一点点地址空间这么简单,在实际的应用中,类似的问题会层出不穷,训练严谨的配置习惯,少用省略法。



网络工程师到底该不该去考CCIE认证?
2008-5-7 11:461楼
[ 顶部 ]
 
zhaofan820315
新新人类  点击可查看详细



帖子 35
精华 0
无忧币 5
积分 32
阅读权限 20
注册日期 2007-9-30
最后登录 2008-7-21 离线

[查看资料]  [发短消息]  [Blog
       
发表于:2008-5-14 00:54 
最近正在研究这个问题~



网络工程师到底该不该去考CCIE认证?
2008-5-14 00:542楼
[ 顶部 ]
     
论坛跳转:  

| | |

| | |

标记已读 · 删除论坛Cookies · 文本版 · WAP
 
| 诚征版主 | 版主堂 | 意见建议 | 大史记 | 论坛地图
Copyright©2005-2008 51CTO.COM  Powered by Discuz!
本论坛言论纯属发布者个人意见,不代表51CTO网站立场!如有疑义,请与管理员联系。
京ICP备05051492号