Chinaunix首页 | 论坛 | 博客
  • 博客访问: 206135
  • 博文数量: 47
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1259
  • 用 户 组: 普通用户
  • 注册时间: 2013-07-24 10:20
文章分类
文章存档

2014年(21)

2013年(26)

分类: 网络与安全

2013-09-16 11:56:03

一:MPLS IN BGP的理论


   no mpls ip propagate-ttl [forwarded|local]

注:这条命令只需要在入口PE上配置即可!


 如果想隐藏公网中P路由器、及出口PE路由器(入口PE除外)不被私网中的traceroute跟踪发现可使用该命令。

 默认情况下当IP数据包到达入口PE时,IP包头中的TTL值在减1后被复制到新插入的标签TTL中。如果使用该命令则不再复制IP包头中的TTL值,而是将标签中的TTL值设置为255. 这样公网的P和出PE就隐藏起来了。


命令:no mpls ip propagate-ttl forwarded  只对流进PE的流量生效

     no mpls ip propagate-ttl local      只对本PE生成的流量生效

     no mpls ip propagate-ttl            对所有流量生效。



No MPLS IP Propagate-TTL的原理图:

[未命名图片.jpg]


二:MPLS IN BGP的理论的实验验证

1.在PE1上配置no mpld ippropagate-ttl之前后对比:

[未命名图片.png]

[未命名图片1.png]

可以得出结论:在实际的工作过程中,配置该条命令仅仅只会隐藏公网中的IP路由器,并不会隐藏出口的PE,这一点与理论是有不同的。


2.对出接口进行抓包说明:


说明:针对TRACEROUTE  和 PING

1.Traceroute 发包使用UDP,收包使用时ICMP

2.在MPLS环境中,默认的Traceroute值为1



在R1上,traceroute 10.1.2.1(CE2环回口)

1.在CE1 S0/0口抓包:

[未命名图片2.jpg]

结论:

1.UDP由于是不可靠的传输,所以每个包都发送了3次;

2.traceroute 的UDP包,仅仅作为一种探查使用,探查的是到达目标网段需要的TTL值是多少。显然,由于配置了隐藏命令,所以经过PE1,PE2,CE2就可以到达10.1.2.1/32的网段,共3跳;

3.UDP的起始TTL值是1,通过ICMP的回包不可达,累加TTL值,直到累加至可以到达目标网段的TTL值。



2.在PE1口的S0/0抓包:

[未命名图片3.jpg]

3.在R1的s0/0口抓包:

[未命名图片4.jpg]

4.在R2的s0/0口抓包:

[未命名图片5.jpg]

5.在PE2的s0/0口抓包:

[未命名图片6.jpg]

结论:

1.公网ip路由器(不包括出口PE)上,由MPLS的TTL值从255递减,IP TTL值不变;

2.在出口PE上,MPLS的TTL值消失,IP TTL不会变化;

3.在入口PE上,IP TTL值会变化,减一。
阅读(4704) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~