原創做品,容許轉載,轉載時請務必以超連接形式標明文章 原始出處 、做者信息和本聲明。不然將追究法律責任。http://nanjingzhonglei.blog.51cto.com/5890022/1294804ide
一:MPLS IN BGP的理論spa
no mpls ip propagate-ttl [forwarded|local]3d
注:這條命令只須要在入口PE上配置便可!xml
若是想隱藏公網中P路由器、及出口PE路由器(入口PE除外)不被私網中的traceroute跟蹤發現可以使用該命令。blog
默認狀況下當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生成的流量生效ip
no mpls ip propagate-ttl 對全部流量生效。路由
No MPLS IP Propagate-TTL的原理圖:get
二:MPLS IN BGP的理論的實驗驗證
1.在PE1上配置no mpld ippropagate-ttl以前後對比:
能夠得出結論:在實際的工做過程當中,配置該條命令僅僅只會隱藏公網中的IP路由器,並不會隱藏出口的PE,這一點與理論是有不一樣的。
2.對出接口進行抓包說明:
說明:針對TRACEROUTE 和 PING
1.Traceroute 發包使用UDP,收包使用時ICMP
2.在MPLS環境中,默認的Traceroute值爲1
在R1上,traceroute 10.1.2.1(CE2環回口)
1.在CE1 S0/0口抓包:
結論:
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.在R1的s0/0口抓包:
4.在R2的s0/0口抓包:
5.在PE2的s0/0口抓包:
結論:
1.公網ip路由器(不包括出口PE)上,由MPLS的TTL值從255遞減,IP TTL值不變;
2.在出口PE上,MPLS的TTL值消失,IP TTL不會變化;
3.在入口PE上,IP TTL值會變化,減一。