網絡協議分析(MPLS協議分析)

一、內容

 

1.配置拓撲中的網絡設備,Internet區域配置公網地址,LAN1和LAN2 爲兩個同一公司的兩個私網,LAN1中R4-R5的網段爲10.1.1.0/24,LAN2中R6-R7的網段爲192.168.1.0/24。拓撲中其餘網段IP地址採用課堂上常用IP地址分配方式分配。採用MPLS/VPN連通兩個分離的私網LAN1和LAN2,使其組成一個大私網。

2.說明MPLS/VPN的工作原理,抓包輔助說明。

3.在R5上ping通R7,結合MPLS/VPN工作原理說明數據包的傳輸過程,抓包說明。

二、實現方法

(1)  配置拓撲中的網絡設備,Internet區域配置公網地址,LAN1和LAN2 爲兩個同一公司的兩個私網,LAN1中R4-R5的網段爲10.1.1.0/24,LAN2中R6-R7的網段爲192.168.1.0/24。拓撲中其餘網段IP地址採用課堂上常用IP地址分配方式分配。採用MPLS/VPN連通兩個分離的私網LAN1和LAN2,使其組成一個大私網。

1)按照課堂常用地址分配規則,配置各路由器的接口ip地址,以及路由器的環回地址,其中R4-R5的網段爲10.1.1.0/24,R6-R7的網段爲192.168.1.0/24。

1、R1

R1#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R1(config)#int f0/0

R1(config-if)#ip add 12.12.12.1255.255.255.0

R1(config-if)#no shut

*Mar  1 00:03:52.551: %LINK-3-UPDOWN: InterfaceFastEthernet0/0, changed state to up

*Mar  1 00:03:53.551: %LINEPROTO-5-UPDOWN: Line protocolon Interface FastEthernet0/0, changed state to up

R1(config-if)#int f1/0

R1(config-if)#ip add 14.14.14.1255.255.255.0

R1(config-if)#no shut

*Mar  1 00:04:25.807: %LINK-3-UPDOWN: InterfaceFastEthernet1/0, changed state to up

*Mar  1 00:04:26.807: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet1/0, changed state to up

R1(config-if)#int loopback 0

*Mar  1 00:04:49.151: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface Loopback0, changed state to up

R1(config-if)#ip add 1.1.1.1 255.255.255.255

R1(config-if)#no shut

R1(config-if)#exit

 

2、R2

R2#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R2(config)#int f0/0

R2(config-if)#ip add 12.12.12.2255.255.255.0

R2(config-if)#no shut

*Mar  1 00:07:05.727: %LINK-3-UPDOWN: InterfaceFastEthernet0/0, changed state to up

*Mar  1 00:07:06.727: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet0/0, changed state to up

R2(config-if)#int f1/0

R2(config-if)#ip add 23.23.23.2255.255.255.0

R2(config-if)#no shut

*Mar  1 00:07:33.419: %LINK-3-UPDOWN: InterfaceFastEthernet1/0, changed state to up

*Mar  1 00:07:34.419: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet1/0, changed state to up

R2(config-if)#int loopback 0

*Mar  1 00:07:43.143: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface Loopback0, changed state to up

R2(config-if)#ip add 2.2.2.2255.255.255.255

R2(config-if)#no shut

R2(config-if)#exit

 

3、R3

R3#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R3(config)#int f1/0

R3(config-if)#ip add 23.23.23.3255.255.255.0

R3(config-if)#no shut

*Mar  1 00:09:35.339: %LINK-3-UPDOWN: InterfaceFastEthernet1/0, changed state to up

*Mar  1 00:09:36.339: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet1/0, changed state to up

R3(config-if)#int f0/0

R3(config-if)#ip add 36.36.36.3255.255.255.0

R3(config-if)#no shut

*Mar  1 00:10:39.443: %LINK-3-UPDOWN: InterfaceFastEthernet0/0, changed state to up

*Mar  1 00:10:40.443: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet0/0, changed state to up

R3(config-if)#int loopback 0

*Mar  1 00:11:02.407: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface Loopback0, changed state to up

R3(config-if)#ip add 3.3.3.3255.255.255.255

R3(config-if)#no shut

R3(config-if)#exit

 

4、R4

R4#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R4(config)#int f1/0

R4(config-if)#ip add 14.14.14.4255.255.255.0

R4(config-if)#no shut

*Mar  1 00:26:35.359: %LINK-3-UPDOWN: InterfaceFastEthernet1/0, changed state to up

*Mar  1 00:26:36.359: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet1/0, changed state to up

R4(config-if)#int f0/0

R4(config-if)#ip add 10.1.1.4 255.255.255.0

R4(config-if)# no shut

*Mar  1 00:27:01.127: %LINK-3-UPDOWN: InterfaceFastEthernet0/0, changed state to up

*Mar  1 00:27:02.127: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet0/0, changed state to up

R4(config-if)#int loopback 0

*Mar  1 00:27:11.419: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface Loopback0, changed state to up

R4(config-if)#ip add 4.4.4.4255.255.255.255

R4(config-if)#no shut

R4(config-if)#exit

 

5、R5

R5#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R5(config)#int f0/0

R5(config-if)#ip add 10.1.1.5 255.255.255.0

R5(config-if)#no shut

*Mar  1 00:29:21.459: %LINK-3-UPDOWN: InterfaceFastEthernet0/0, changed state to up

*Mar  1 00:29:22.459: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet0/0, changed state to up

R5(config-if)#int loopback 0

*Mar  1 00:28:50.803: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface Loopback0, changed state to up

R5(config-if)#ip add 5.5.5.5255.255.255.255

R5(config-if)#no shut

R5(config-if)#exit

 

6、R6

R6#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R6(config)#int f0/0

R6(config-if)#ip add 36.36.36.6255.255.255.0

R6(config-if)#no shut

*Mar  1 00:31:02.671: %LINK-3-UPDOWN: InterfaceFastEthernet0/0, changed state to up

*Mar  1 00:31:03.671: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet0/0, changed state to up

R6(config-if)#int f1/0

R6(config-if)#ip add 192.168.1.6255.255.255.0

R6(config-if)#no shut

*Mar  1 00:31:30.227: %LINK-3-UPDOWN: InterfaceFastEthernet1/0, changed state to up

*Mar  1 00:31:31.227: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet1/0, changed state to up

R6(config-if)#int loopback 0

*Mar  1 00:31:44.831: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface Loopback0, changed state to up

R6(config-if)#ip add 6.6.6.6255.255.255.255

R6(config-if)#no shut

R6(config-if)#exit

 

7、R7

R7#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R7(config)#int f0/0

R7(config-if)#ip add 192.168.1.7255.255.255.0

R7(config-if)#no shut

*Mar  1 00:33:36.443: %LINK-3-UPDOWN: InterfaceFastEthernet0/0, changed state to up

*Mar  1 00:33:37.443: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface FastEthernet0/0, changed state to up

R7(config-if)#int loopback 0

*Mar  1 00:33:47.483: %LINEPROTO-5-UPDOWN: Lineprotocol on Interface Loopback0, changed state to up

R7(config-if)#ip add 7.7.7.7255.255.255.255

R7(config-if)#no shut

R7(config-if)#exit

 

2)配置公網各路由器的動態路由協議(ospf)。

1、R1

R1(config)#router os 1

R1(config-router)#net 12.12.12.0 0.0.0.255a 0

R1(config-router)#net 1.1.1.1 0.0.0.0 a 0

R1(config-router)#router-id 1.1.1.1

 

2、R2

R2(config)#router os 1

R2(config-router)#net 0.0.0.0 0.0.0.0 a 0

*Mar  1 00:41:52.199: %OSPF-5-ADJCHG: Process 1,Nbr 1.1.1.1 on FastEthernet0/0 from LOADING to FULL, Loading Done

R2(config-router)#router-id 2.2.2.2

 

3、R3

R3(config)#router os 1

R3(config-router)#net 23.23.23.0 0.0.0.255a 0

*Mar  1 00:43:29.099: %OSPF-5-ADJCHG: Process 1,Nbr 2.2.2.2 on FastEthernet1/0 from LOADING to FULL, Loading Done

R3(config-router)#net 3.3.3.3 0.0.0.0 a 0

R3(config-router)#router-id 3.3.3.3

 

3)配置公網中路由器的mpls協議,標籤協議採用ldp協議。

1、R1

R1(config)#int f0/0

R1(config-if)#mpls label protocol ldp

R1(config-if)#mpls ip

R1(config-if)#exit

 

2、R2

R2(config)#mpls label protocol ldp

R2(config)#int f0/0

R2(config-if)#mpls ip

*Mar  1 01:22:24.155: %LDP-5-NBRCHG: LDP Neighbor1.1.1.1:0 (1) is UP

R2(config-if)#int f1/0

R2(config-if)#mpls ip

R2(config-if)#exit

 

3、R3

R3(config)#int f1/0

R3(config-if)#mpls label protocol ldp

R3(config-if)#mpls ip

R3(config-if)#exit

 

4)配置私網各路由器的動態路由協議(rip)。

1、R4

R4(config)#router rip

R4(config-router)#v 2

R4(config-router)#no au

R4(config-router)#net 10.1.1.0

R4(config-router)#net 4.4.4.4

R4(config-router)#exit

 

2、R5

R5(config)#router rip

R5(config-router)#v 2

R5(config-router)#no au

R5(config-router)#net 0.0.0.0

R5(config-router)#exit

 

3、R6

R6(config)#router rip

R6(config-router)#v 2

R6(config-router)#no au

R6(config-router)#net 0.0.0.0

R6(config-router)#exit

4、R7

R7(config)#router rip

R7(config-router)# v 2

R7(config-router)#no au

R7(config-router)#net 0.0.0.0

R7(config-router)#exit

 

5)創建VRF。

1、R1

R1(config)#ip vrf vpn1

R1(config-vrf)#rd 100:1

R1(config-vrf)#exit

R1(config)#int f1/0

R1(config-if)#ip vrf forwarding vpn1

% Interface FastEthernet1/0 IPaddress 14.14.14.1 removed due to enabling VRF vpn1

R1(config-if)#ip add 14.14.14.1255.255.255.0

R1(config-if)#no shut

R1(config-if)#exit

R1(config)#ip vrf vpn1

R1(config-vrf)#route-target both 100:1

R1(config-vrf)#exit

 

2、R3

R3(config)#ip vrf vpn1

R3(config-vrf)#rd 100:1

R3(config-vrf)#route-target both 100:1

R3(config-vrf)#exit

R3(config)#int f0/0

R3(config-if)#ip vrf forwarding vpn1

% Interface FastEthernet0/0 IPaddress 36.36.36.3 removed due to enabling VRF vpn1

R3(config-if)#ip add 36.36.36.3255.255.255.0

R3(config-if)#no shut

R3(config-if)#exit

 

6)PE和CE路由器之間配置動態路由協議(ospf、rip)。

1、R1

R1(config)#router os 2 vrf vpn1

R1(config-router)#net 14.14.14.0 0.0.0.255a 0

R1(config-router)#exit

 

2、R3

R3(config)#router rip

R3(config-router)#address-family ip vrfvpn1

R3(config-router-af)#version 2

R3(config-router-af)#no au

R3(config-router-af)#net 36.36.36.0

R3(config-router-af)#exit

 

7)配置BGP協議。

1、R1

R1(config)#router bgp 100

R1(config-router)#nei 3.3.3.3 remote-as 100

R1(config-router)#nei 3.3.3.3 update-sourceloopback 0

R1(config-router)#nei 3.3.3.3 next-hop-self

R1(config-router)#address-family vpnv4

R1(config-router-af)#nei 3.3.3.3 activate

R1(config-router-af)#nei 3.3.3.3send-community both

R1(config-router-af)#exit

 

2、R3

R3(config)#router bgp 100

R3(config-router)#nei 1.1.1.1 remote-as 100

R3(config-router)#nei 1.1.1.1 update-sourceloopback 0

*Mar 1 01:59:08.039: %BGP-5-ADJCHANGE: neighbor 1.1.1.1 Up

R3(config-router)#nei 1.1.1.1 next-hop-self

R3(config-router)#address-family vpnv4

R3(config-router-af)#nei 1.1.1.1 activate

*Mar  1 01:59:57.419: %BGP-5-ADJCHANGE: neighbor1.1.1.1 Down Address family activated

*Mar 1 01:59:59.583: %BGP-5-ADJCHANGE: neighbor 1.1.1.1 Up

R3(config-router-af)#nei 1.1.1.1send-community both

R3(config-router-af)#exit

 

8)私網路由條目重分佈進公網。

1、R4

R4(config)#router os 2

R4(config-router)#net 14.14.14.0 0.0.0.255a 0

*Mar  1 02:29:31.707: %OSPF-5-ADJCHG: Process 2,Nbr 14.14.14.1 on FastEthernet1/0 from LOADING to FULL, Loading Done

R4(config-router)#redistribute rip

% Only classful networks will beredistributed

R4(config-router)#redistribute rip subnets

R4(config-router)#exit

 

2、R1

R1#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R1(config)#router bgp 100

R1(config-router)#address-family ipv4 vrfvpn1

R1(config-router-af)#redistributeospf 2 vrf vpn1 match internal external 1 external 2

R1(config-router-af)#exit

 

3、R3

R3#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R3(config)#router bgp 100

R3(config-router)#address-family ipv4 vrfvpn1

R3(config-router-af)#redistribute rip

R3(config-router-af)#exit

 

9)公網路由條目重分佈進私網。

1、R1

R1(config)#router os 2

R1(config-router)#redistribute bgp 100subnets

R1(config-router)#exit

 

2、R3

R3#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R3(config)#router rip

R3(config-router)#address-family ipv4 vrfvpn1

R3(config-router-af)#redistribute bgp 100metric 10

R3(config-router-af)#exit

3、R4

R4#conf t

Enter configuration commands, one perline.  End with CNTL/Z.

R4(config)#router rip

R4(config-router)#redistribute ospf 2metric 10

R4(config-router)#exit

 

10)  查看路由表。

 

(2)  說明MPLS/VPN的工作原理,抓包輔助說明。

1)MPLS/VPN的工作原理。

MPLS/VPN是一種三層VPN,也是實施最爲廣泛的一種MPLS技術。MPLS/VPN是指採用MPLS(多協議標記轉換)技術在骨幹的寬帶IP網絡上構建企業IP專網,實現跨地域、安全、高速、可靠的數據、語音、圖像多業務通信,並結合差別服務、流量工程等相關技術,將公衆網可靠的性能、良好的擴展性、豐富的功能與專用網的安全 、靈活、高效結合在一起。

MPLS/VPN網絡主要由CE、PE和P等3部分組成:

CE(Customer Edge Router)用戶網絡邊緣路由器設備,直接與服務提供商網絡相連,它“感知”不到VPN的存在;

PE(Provider Edge Router)服務提供商邊緣路由器設備,與用戶的CE直接相連,負責VPN業務接入,處理VPN-IPv4路由,是MPLS三層VPN的主要實現者;

P(Provider Router)服務提供商核心路由器設備,負責快速轉發數據,不與CE直接相連。

在整個MPLS/VPN中,P、PE設備需要支持MPLS的基本功能,CE設備不必支持MPLS。

MPLS/VPN的網絡採用標籤交換,一個標籤對應一個用戶數據流,非常易於用戶間數據的隔離,利用區分服務體系可以輕易地解決困擾傳統IP網絡的QoS/CoS問題,MPLS自身提供流量工程的能力,可以最大限度地優化配置網絡資源,自動快速修復網絡故障,提供高可用性和高可靠性。

1、虛擬路由轉發VRF(virtual routing forwarding)

VRF是一種VPN路由和轉發的實例。包括三部分:與私網(用戶)相關的路由表、CE與PE相連的PE端口和CE與PE間的動態路由協議。每一個獨立的VRF都有一張獨立的路由表。因爲在PE路由器上的路由需要被相互隔離,以確保對每一個用戶VPN的私有性,這張私有路由表就被稱爲VRF路由表。在PE路由器上,存在有多個VRF表,這些VRF表是和PE路由器上的一個或多個子接口相對應的,用於存放這些子接口所屬VPN的路由信息。通常情況下,VRF表中只包含一個VPN的路由信息,但是當子接口屬於多個VPN時,其所對應的VRF表中就包含了子接口所屬的所有VPN的路由信息。VRF路由表和ciscoIOS的全局路由表是沒有什麼區別的,只不過這個路由表僅僅是對某一個VRF有效,並且和其他的路由表之間是完全隔離開的。不同的VRF就像把路由器從邏輯上劃分成了不同的子路由器一樣的概念,一個實際的物理路由器成爲了多個虛擬邏輯路由器。

對於每一個VRF,都具有路由區分符(Route Distinguisher:RD)和路由目標(Route Target:RT)兩大屬性。

2、路由區分符RD(route distinguish)

RD是VRF路由區分符,RD具有全局唯一性,解決地址衝突問題,VPNV4前綴=RD+IPv4前綴。RD是一個64比特的字段,用於在MP-BGP運載VRF前綴時,確保這些前綴的唯一性。VPN-IPv4地址對客戶端設備來說是不可見的,它只用於骨幹網絡上路由信息的分發。RD並不會說明該前綴屬於哪個VRF,RD的功能並不是VPN標示符,因爲在一些更爲複雜得環境中,可能一個VPN存在多個RD。在PE路由器上的每個VRF實例必須要分配一個RD,格式爲:ASN:nn或者IP address:NN,nn代表數字。

理論上可以爲每個VPN實例配置一個RD。通常建議爲每個VPN都配置相同的RD,不同的VPN配置不同的RD。但是實際上只要保證存在相同地址的兩個VPN實例的RD不同即可,不同的VPN可以配置相同的RD,相同的VPN也可以配置不同的RD。

如果兩個VPN實例中存在相同的地址,則一定要配置不同的RD,而且兩個VPN實例一定不能互訪,間接互訪也不成。

RD並不會影響不同VPN實例之間的路由選擇以及VPN的形成,這些事情由RT搞定。

PE從CE接收的標準的路由是IPv4路由,如果需要發佈給其他的PE路由器,此時需要爲這條路由附加一個RD。

3、路由目標RT(Route target)

對於VRF的唯一標識符是用的RD,而核心網PE到PE的路由傳輸則用的是Route Target。一個RT是一個BGP擴展團體,說明了哪些路由需要從MP-BGP中注入到VRF,它決定VPN路由的收發和過濾,PE依靠RT屬性區分不同VPN之間路由。RT分爲Routetarget export和Route target import。Route target export表示輸出的VPNv4路由收到了額外的BGP擴展團體,在一個VPN實例中,在發佈路由時應給路由條目帶上什麼RD;Route target import從MP-BGP那裏收到的Vpnv4路由覈查可以匹配的擴展團體。如果最終找到了匹配的RT,這個前綴會以IPv4路由的身份被添加到VRF路由表中,否則該前綴會被拒絕。

4、MPLS-BGP

對於使用了擴展屬性MP_REACH_NLRI和擴展團體屬性RT的BGP,我們稱之爲MP-BGP協議。

BGP-4僅僅支持IPv4,MP-BGP是爲了讓BGP可以用於傳輸更多協議(IPv6,IPX,...)的路由信息而進行的擴展。

爲了保持兼容性,MP-BGP僅僅添加了兩個BGP屬性:MP_REACH_NLRI( MP_UNREACH_NLRI )和擴展團體屬性。

MP_REACH_NLRI(MP_UNREACH_NLRI )可以用在BGP Update消息中用於通告或廢止網絡可達性信息。

5、MPLS/VPN的工作原理

前提是PE路由器的各個VPN實例上都配置了RT規則,在發佈路由時應給路由條目帶上什麼RD;帶有什麼RD的路由條目可以進到哪個VPN裏。

a)     標籤分配:

PE和P路由器通過骨幹網具有到bgp下一跳的可達性;通過運行IGP和LDP,分配標籤,建立LSP,獲得到BGP下一跳的LSP通道。PE知道自己的直連網段,將此網段視爲FEC,併爲此FEC分配了本地標籤,然後將本地標籤與FEC關聯起來,形成一個映射關係(本地標籤:FEC),此映射關係用來指導自己對此網段爲目的IP的數據包進行操作。PE將這個映射關係發送給自己的上游路由器。上游路由器收到消息後,將此網段視爲FEC,併爲此FEC分配了本地標籤,然後將本地標籤與FEC關聯起來,形成一個映射關係(本地標籤:FEC),此映射關係用來指導自己對此網段爲目的IP的數據包進行操作——將我的本地標籤交換爲下游路由器標籤。以此類推,建立LSP。

b)     傳遞路由條目:

PE和CE路由器交換路由信息,CE運行標準路由協議。PE維護獨立的路由表:公網路由表和VPN實例的私網路由表。PE知道路由條目是從哪個端口進來的,因爲這個端口對應某一個VPN,所以PE查詢對應VPN實例的路由表,將路由條目學習進去。PE要將此路由條目通過MPLS/VPN骨幹網發佈本地的VPN路由信息發送給MP-BGP鄰居,發送端 PE通過使用 MP-iBGP 將VPN實例路由利用export-target屬性,讓路由條目攜帶上RD和標籤,從本地發佈出去。接受PE 收到VPN-IPv4的MP-iBGPupdates 時,判斷收到的export是否與本地的VPN實例的import相等(帶有什麼RD的路由條目可以進到哪個VPN裏),相等就加入到相應的VPN實例路由表中,否則丟棄。VPN-v4 路由變爲IPV4路由。私網標籤保留,留做轉發時使用。再由本VPN實例的路由協議引入並轉發給相應的CE。

c)     發送數據包:

入口PE收到CE的普通IP報文後,PE根據入接口所屬的VPN實例查看相應的VPN轉發表,查找下一跳和標籤。爲報文打上外層標籤(用來指示如何到達BGP下一跳)和內層標籤(表示報文的出接口或者屬於哪個VPN實例(屬於哪個VPN)),形成標籤棧。倒數第二跳路由器彈出外層標籤,根據下一跳發送至出口PE,出口PE路由器根據內層標籤判斷報文是去向哪個CE,彈出內層標籤,用普通IP報文向目的CE進行轉發。

2)抓包輔助說明MPLS/VPN的工作原理。

1、RD和RT(截圖以R1發給R3的BGP update報文爲例,R3發給R1的BGP update報文同理)

BGP update報文的拓展屬性中可看到RD=100:1。

 

BGP update報文的拓展屬性中可看到RT爲100:1。

 

2 、MPLS-BGP(以R5 ping R7環回爲例)

R4將源IP爲10.1.1.5,目標IP爲7.7.7.7的ping(request)包轉發給R1,IP層TTL減一,request數據包從R1出去後,被添加了兩層標籤,有兩層MPLS層。頂層MPLS層標籤號爲17,是MPLS的標籤;底層MPLS層標籤號爲20,是BGP的標籤。(數據包過來後,R1查去LAN2中的7.7.7.7的標籤,查到出標籤是20,添加底層標籤,又查vrf路由表,發現去往7.7.7.7的下一跳爲3.3.3.3,查mpls轉發表,查到mpls域中去往3.3.3.3的數據包應打上編號爲17的標籤,添加頂層標籤。)兩個MPLS層的TTL直接與IP層的TTL相等,均爲253。

 

通過show ip bgp vpnv4 all labels命令,可以查看bgp標籤表,當目標地址爲7.7.7.7時,R1會給數據包打上編號爲20的底層標籤。

 

也可以通過R1在發ping(request)包前,R3發送給R1的BGP update數據包中得到去往7.7.7.7應該打上什麼底層標籤。

 

通過show ip route vrf vpn1命令,可以查看R1的vrf路由表,當目標地址爲7.7.7.7時,可知下一跳爲3.3.3.3。

 

也可以通過R1在發ping(request)包前,R3發送給R1的BGP update數據包中得到去往7.7.7.7的下一跳爲3.3.3.3。

 

通過show mpls forwarding-table命令,可以查看R1的mpls轉發表LFIB,當目標地址爲3.3.3.3時,R1會給數據包打上編號爲17的頂層標籤。

 

(3)  在R5上ping通R7,結合MPLS/VPN工作原理說明數據包的傳輸過程,抓包說明。(R5 ping通R7環回)

 

1)R5給R4發送源IP爲10.1.1.5,目標IP爲7.7.7.7的ping(request)包,且IP層TTL爲255。

 

2)R4將源IP爲10.1.1.5,目標IP爲7.7.7.7的ping(request)包轉發給R1,在進入MPLS域之前,request數據包只有IP層,沒有MPLS層,且IP層TTL爲254。

 

3)R4將源IP爲10.1.1.5,目標IP爲7.7.7.7的ping(request)包轉發給R1,IP層TTL減一,request數據包從R1出去後,被添加了兩層標籤,有兩層MPLS層。頂層MPLS層標籤號爲17,是MPLS的標籤;底層MPLS層標籤號爲20,是BGP的標籤。(數據包過來後,R1查去LAN2中的7.7.7.7的標籤,查到出標籤是20,添加底層標籤,又查vrf路由表,發現去往7.7.7.7的下一跳爲3.3.3.3,查mpls轉發表,查到mpls域中去往3.3.3.3的數據包應打上編號爲17的標籤,添加頂層標籤。)兩個MPLS層的TTL直接與IP層的TTL相等,均爲253。

 

通過show ip bgp vpnv4 all labels命令,可以查看bgp標籤表,當目標地址爲7.7.7.7時,R1會給數據包打上編號爲20的底層標籤。

 

也可以通過R1在發ping(request)包前,R3發送給R1的BGP update數據包中得到去往7.7.7.7應該打上什麼底層標籤。

 

通過show ip route vrf vpn1命令,可以查看R1的vrf路由表,當目標地址爲7.7.7.7時,可知下一跳爲3.3.3.3。

 

也可以通過R1在發ping(request)包前,R3發送給R1的BGP update數據包中得到去往7.7.7.7的下一跳爲3.3.3.3。

 

通過show mpls forwarding-table命令,可以查看R1的mpls轉發表LFIB,當目標地址爲3.3.3.3時,R1會給數據包打上編號爲17的頂層標籤。

 

4)R1將源IP爲10.1.1.5,目標IP爲7.7.7.7的ping(request)包轉發給R2,request數據包進入R2後,兩層MPLS層的TTL減一爲252,IP層的TTL不變,爲253。倒數第二跳彈出,去除標籤(因爲3.3.3.3是R3的環回,直連,R2爲倒數第二跳,倒數第一跳是R3)。數據包從R2出去,有一層MPLS層(原底層MPLS層),也有IP層。現頂層MPLS層(原底層MPLS層)標籤號爲20,是BGP的標籤,是爲去LAN2中的7.7.7.7打的標籤。

 

通過show mpls forwarding-table命令,可以查看R2的mpls轉發表LFIB,當目標地址爲3.3.3.3時,R2會倒數第二跳彈出,去除標籤。

 

5)R2將源IP爲10.1.1.5,目標IP爲7.7.7.7的ping(request)包轉發給R3, request數據包進入R3後,MPLS層的TTL減一爲251,賦給IP層的TTL,去除標籤號爲20的標籤。數據包從R3出去,沒有MPLS層,只有IP層,IP層的TTL爲251。

 

6)R6將源IP爲10.1.1.5,目標IP爲7.7.7.7的ping(request)包轉發給R7,且IP層TTL爲250。

 

7)R7將源IP爲7.7.7.7,目標IP爲10.1.1.5的ping(reply)包轉發給R6,且IP層TTL爲255。

 

8)R6將源IP爲7.7.7.7,目標IP爲10.1.1.5的ping(reply)包轉發給R3,在進入MPLS域之前,reply數據包只有IP層,沒有MPLS層,且IP層TTL爲254。

 

9)R6將源IP爲7.7.7.7,目標IP爲10.1.1.5的ping(rely)包轉發給R3,IP層TTL減一,reply數據包從R3出去後,被添加了兩層標籤,有兩層MPLS層。頂層MPLS層標籤號爲16,是MPLS的標籤;底層MPLS層標籤號爲21,是BGP的標籤。(數據包過來後,R3查去LAN1中的10.1.1.5的標籤,查到出標籤是21,添加底層標籤,又查vrf路由表,發現去往10.1.1.5的下一跳爲1.1.1.1,查mpls轉發表,查到mpls域中去往1.1.1.1的數據包應打上編號爲16的標籤,添加頂層標籤。)兩個MPLS層的TTL直接與IP層的TTL相等,均爲253。

 

通過show ip bgp vpnv4 all labels命令,可以查看bgp標籤表,當目標地址爲10.1.1.5時,R3會給數據包打上編號爲21的底層標籤。

 

也可以通過R3在發ping(reply)包前,R1發送給R3的BGP update數據包中得到去往10.1.1.5應該打上什麼底層標籤。

 

通過show ip route vrf vpn1命令,可以查看R3的vrf路由表,當目標地址爲10.1.1.5時,可知下一跳爲1.1.1.1。

 

也可以通過R3在發ping(reply)包前,R1發送給R3的BGP update數據包中得到去往10.1.1.5的下一跳爲1.1.1.1。

 

通過show mpls forwarding-table命令,可以查看R3的mpls轉發表LFIB,當目標地址爲1.1.1.1時,R3會給數據包打上編號爲16的頂層標籤。

 

10)  R3將源IP爲7.7.7.7,目標IP爲10.1.1.5的ping(reply)包轉發給R2,reply數據包進入R2後,兩層MPLS層的TTL減一爲252,IP層的TTL不變,爲253。倒數第二跳彈出,去除標籤(因爲1.1.1.1是R1的環回,直連,R2爲倒數第二跳,倒數第一跳是R1)。數據包從R2出去,有一層MPLS層(原底層MPLS層),也有IP層。現頂層MPLS層(原底層MPLS層)標籤號爲21,是BGP的標籤,是爲去LAN1中的10.1.1.5打的標籤。

 

通過show mpls forwarding-table命令,可以查看R2的mpls轉發表LFIB,當目標地址爲1.1.1.1時,R2會倒數第二跳彈出,去除標籤。

 

11)  R2將源IP爲7.7.7.7,目標IP爲10.1.1.5的ping(reply)包轉發給R1, reply數據包進入R1後,MPLS層的TTL減一爲251,賦給IP層的TTL,去除標籤號爲21的標籤。數據包從R1出去,沒有MPLS層,只有IP層,IP層的TTL爲251。

 

12)  R4將源IP爲7.7.7.7,目標IP爲10.1.1.5的ping(reply)包轉發給R5,且IP層TTL爲250。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章