天天看點

SRv6實驗(L3V-P-Nv4 over SRv6 BE)詳解(二)實驗場景:IPv4位址通過SRv6進行資料傳輸實驗描述及拓撲配置講解:

實驗場景:IPv4位址通過SRv6進行資料傳輸

       SRv6隧道既可以傳輸IPv6位址又可以傳輸IPv4位址,相容性非常強,使IPv4向IPv6轉換不在困難,下面以一個小實驗切實感受一下SRv6技術的作用,後續再根據實驗慢慢學習挖掘。

實驗描述及拓撲

兩個資料中心A和B,想通過骨幹網進行傳輸,骨幹網部署了SRv6,資料中心内部使用的IPv4位址,想實作A和B之間的私網IPv4之間互通。

SRv6實驗(L3V-P-Nv4 over SRv6 BE)詳解(二)實驗場景:IPv4位址通過SRv6進行資料傳輸實驗描述及拓撲配置講解:

 拓撲中CE1為資料中心A的内部裝置,私網位址1.1.1.1,想要通路資料中心B的私網裝置CE2的位址2.2.2.2,但是骨幹網PE1,P1、P2、PE2,之間都運作的IPv6位址,這時就需要通過SRv6隧道技術透傳IPv4位址。

做這個實驗,首先需要PE1、P1、P2、PE2之間underlay層需要運作ISIS協定,為什麼需要運作ISIS協定呢,由于ISIS協定對IPv6支援的更好,OSPF協定需要重新引進OSPFv3協定,比較麻煩,更推薦ISIS協定,ISIS鄰居建立好之後就可以收到PE1和PE2的lookback位址,然後通過lookback位址建立IBGP協定,通過IBGP協定的MP-BGP協定建立VPNv4鄰居,這樣就可以通過MP-BGP進行收發IPv4的私網路由,但是再IPv6網絡中還是無法傳輸IPv4位址,這是就需要SRv6技術将IPv4私網位址打上SID屬性,最後通過SID資料進行路由疊代。實作私網間的互通。畫一個圖來了解一下吧。

SRv6實驗(L3V-P-Nv4 over SRv6 BE)詳解(二)實驗場景:IPv4位址通過SRv6進行資料傳輸實驗描述及拓撲配置講解:

畫的比較難看,哈哈哈,簡單來說,A想要找B來玩,A和B需要做大巴通過大橋到達B,此時ISIS就是橋的鋼鐵架,MP-BGP就是橋上鋪裝的路,SRv6就是你買的票。需要通過檢票口才能通過。

配置講解:

ISIS配置:

首先需要再PE1、P1、P2、PE2之間配置ISIS協定:以PE1為例:

#

isis 1

 is-level level-1

 cost-style wide

 network-entity 10.0000.0000.0001.00

 #

 ipv6 enable topology ipv6

 segment-routing ipv6 locator pe1

 #

isis 1 #這裡是開啟isis程序。

isis-level level1 #isis有兩個區域,一個是level2為骨幹區域,一個是level1為邊緣區域。這裡我們選用level1區域。

cost-style wide #設定開銷類型,一般分為narrow 和wide兩種模式,narrow隻能發送和接收路由開銷在1~63範圍内的路由,wide開銷類型相容性更強,支援srv6,這裡面我們使用wide類型。

 network-entity 10.0000.0000.0001.00 # 配置網絡實體,網絡實體分為三部分,第一部分是區域ID,區域ID的長度可以是變化的(1~13個位元組)。第二部分是系統ID,長度為固定值6個位元組。第三部分是最後一個位元組SEL,其值必須為00。

注意。如果是level1區域,所有區域ID必須相同。level2可以不同。

 ipv6 enable topology ipv6 #isis程序下開啟ipv6功能。

segment-routing ipv6 locator pe1 # isis使能srv6的功能。

其餘P1、P2、PE2裝置配置類似,其中P1、P2可以不開啟SRv6功能。

BGP配置:

在PE1、P1、P2、PE2之間配置BGP協定:以PE1為例:

bgp 100

 router-id 11.11.11.11

 peer 2001:DB2:4::4 as-number 100

 peer 2001:DB2:4::4 connect-interface LoopBack0

 #

 ipv4-family unicast

  undo synchronization

 #

 ipv4-family vpnv4

  policy vpn-target

  peer 2001:DB2:4::4 enable

  peer 2001:DB2:4::4 prefix-sid

 #

 ipv4-family vpn-instance VPN1

  peer 10.1.1.2 as-number 65400

  segment-routing ipv6 locator pe1

  segment-routing ipv6 best-effort

bgp 100 #開啟bgp程序。

 router-id 11.11.11.11 #配置router-id這裡面每台裝置router-id要保障唯一性。

 peer 2001:DB2:4::4 as-number 100 #建立IBGP鄰居。

 peer 2001:DB2:4::4 connect-interface LoopBack0 #使用loopback位址建立BGP鄰居,增強鄰居的健壯性。

 ipv4-family vpnv4 #進入BGP-VPNv4位址族視圖。

  policy vpn-target #預設生成。

  peer 2001:DB2:4::4 enable #使能對等體交換VPN-IPv4路由資訊的能力。

  peer 2001:DB2:4::4 prefix-sid#使能與指定IPv6對等體之間交換IPv4 Prefix SID資訊。

 ipv4-family vpn-instance VPN1 #進入BGP-VPN執行個體IPv4位址族視圖。

  peer 10.1.1.2 as-number 65400 #與CE建立BGP鄰居

  segment-routing ipv6 locator pe1 #使能VPN私網路由攜帶SID屬性。如果沒有配置auto-sid-disable參數,表示支援動态SID配置設定。此時如果locator-name下存在靜态SID,則使用靜态SID,沒有靜态SID時則使用動态配置設定的SID。

segment-routing ipv6 best-effort #使能根據路由攜帶的SID屬性進行私網路由疊代。

SRv6配置:

在PE1、PE2上配置SRv6協定:以PE1為例:

#

segment-routing ipv6

 encapsulation source-address 2001:DB2:1::1

 locator pe1 ipv6-prefix 2001:DB8:100:: 64 static 32

#

 segment-routing ipv6 #使能IPv6轉發平面的Segment Routing功能,并且進入SRv6視圖。

 encapsulation source-address 2001:DB2:1::1 #配置SRv6 VPN封裝的源位址。

 locator pe1 ipv6-prefix 2001:DB8:100:: 64 static 32 #配置SRv6 Locator。

結果驗證:

實作了CE1與CE2之間的互通。

<CE1>ping -a 1.1.1.1 2.2.2.2

  PING 2.2.2.2: 56  data bytes, press CTRL_C to break

    Reply from 2.2.2.2: bytes=56 Sequence=1 ttl=253 time=50 ms

    Reply from 2.2.2.2: bytes=56 Sequence=2 ttl=253 time=40 ms

    Reply from 2.2.2.2: bytes=56 Sequence=3 ttl=253 time=40 ms

    Reply from 2.2.2.2: bytes=56 Sequence=4 ttl=253 time=50 ms

    Reply from 2.2.2.2: bytes=56 Sequence=5 ttl=253 time=40 ms

在PE1上抓包看一下資料封裝的過程。

SRv6實驗(L3V-P-Nv4 over SRv6 BE)詳解(二)實驗場景:IPv4位址通過SRv6進行資料傳輸實驗描述及拓撲配置講解:

 通過抓包可以看到進行了兩層封裝,顯示ipv4位址的封裝,然後是SRv6的位址封裝,其中ipv6封裝的源位址就是我們上文配置的SRv6封裝的源位址: encapsulation source-address 2001:DB2:1::1,目的位址就是PE2上自動生成Local-SID End.DT4的IP位址(這裡剛開始不太好了解,以後會講解),這樣P1,P2裝置查詢路由表會将該資料包傳送至PE2,PE2查詢該位址對應VPN執行個體VPN2,進行解封裝調ipv6層,将ipv4層資料包傳送至VPN2執行個體中,然後查詢ipv4路由表最總到達目的位址。反之也一樣。

SRv6實驗(L3V-P-Nv4 over SRv6 BE)詳解(二)實驗場景:IPv4位址通過SRv6進行資料傳輸實驗描述及拓撲配置講解:

 以上實驗讓大家簡單感受一下SRv6的功能,後續根據該實驗進行詳細的講解分析以及抓包擴充。

繼續閱讀