IPV6技術筆記(剖析IPv4toIPv6)

IPV6技術筆記

IPv6地址入門概念

什麼是IPv6?

IPv6,全稱Internet Protocol version 6,即網際協議版本6,也叫互聯網通訊協議第六版。是互聯網工程任務組(IETF)設計的用於替代IPv4的下一代IP協議,其地址數量號稱能夠爲全世界的每一粒沙子編上一個地址。因爲IPv4最大的問題在於網絡地址資源有限,嚴重製約了互聯網的應用和發展。IPv6的使用,不只能解決網絡地址資源數量的問題,並且也解決了多種接入設備連入互聯網的障礙。node

IPv4地址困境解決方案:

  1. nat(靜態一對一,動態地址池多對多,pat),可是nat很是消耗資源建議使用在防火牆上面
  2. 子網劃分
  3. 動態dhcp地址分配
  4. cidr(無類地址地址劃分)無類域間路由
  5. enfroced better address managerment(增強地址管理)

IPv6地址的優勢

  1. ipv6 支持更大的地址空間, 2^128次方數量
  2. 多宿主(Multihoming),一個ip能夠配置在多個接口上面
  3. 自動配置,無狀態的,網絡設備(路由器)自動配置IP地址
  4. 即插即用
  5. end to end without nat(不須要nat技術) 實現了端到端傳輸
  6. ipv6中取消了廣播地址而代之的以任意播地址
  7. 路由更加的快捷,轉發更加快速
  8. 沒有廣播也沒有arp,也沒有了2層的網絡病毒和網絡風暴
  9. 沒有校驗和,由於2層幀和上層TCP/IP 已經有校驗了
  10. 擴展頭部
  11. ipv6強制使用ipsec安全技術
  12. ipv6支持雙棧技術兼容(ipv4和ipv6),支持ipv6和ipv4之間數據轉換

IPv6地址的格式

IPv6地址的長度爲128位,相比IPv4地址長度32位變的更長,所以IPv6地址採用每4位組合起來轉換成16進制的方式,每4個16進制數再以冒號分隔成8段,例如:2001:0000:0001:00a2:0000:0000:0000:0ec3。每一節中起始的0能夠省略,全是0的使用一個0表示。
省略前:2001:0000:0001:00a0:0000:0000:0000:0ec3
省略後:2001:0:1:a2:0:0:0:ec3
而後,用雙冒號替代一組聯續出現的0,只能取代一組,因此選最長的一組。
取代前:2001:0:1:a2:0:0:0:ec3
取代後:2001:0:1:a2::ec3
最終,2001:0000:0001:00a2:0000:0000:0000:0ec3 = 2001:0:1:a2::ec3

ipv6 地址的表示方法分爲三種,分別是:安全

  1. 首選格式
    1. 首選格式的表示方法就是講ipv6中的128位
  2. 壓縮表示
    1. 一個完整的ipv6地址中,常常性的出現許多個0,將不影響地址結構的0給省略不寫表示方法,稱爲壓縮格式。
      1. 第一種狀況:
        • 一個完整的ipv6地址若是連續多個段都爲0,那麼將多個段都使用雙冒號來表示,在壓縮IPv6的地址時,一個地址只能出現一個::。
      2. 第二種狀況:
        • 表示ipv6地址時,容許將一個段中前導部分的0省略不寫,由於不影響結構。
      3. 第三種狀況:
        結合前兩種方法,即將整段的4個字符全爲0的部分寫成::,也將無心義的0省略不寫,結構就能夠出現最方便的表示方法。
  3. ipv4是內嵌在ipv6中
    在網絡尚未所有從ipv4過渡到ipv6時,就可能出現某些設備即鏈接了ipv4網絡,又鏈接了ipv6網絡,對於這樣的狀況,就須要一個地址既能夠表示ipv4地址,又能夠表示ipv6地址。在表示是,定義了兩類攜帶ipv4地址的ipv6地址,他們是「ipv4兼容的ipv6地址」和「ipv4映射的ipv6地址」。
    1. ipv4兼容的ipv6地址
      在「ipv4兼容的ipv6地址」中使用的ipv4地址必須是全球爲一個ipv4單播地址。
    2. ipv4映射 的ipv6地址
      定義了第二類含內嵌的ipv4地址的ipv6地址。這個地址類型用於將ipv6的節點表示ipv6地址。

ipv6協議基本包頭

參考:https://ccie.lol/knowledge-base/ipv4-and-ipv6-packet-header/服務器

ipv6擴展頭網絡

  1. IPv6基礎頭
  2. 逐跳選項頭
  3. 目的地選項頭(應用於ipv6目的地址字段的第一個目的地和選路頭中所列的附加目的地中)
  4. 選路頭
  5. 分段頭
  6. 身份驗證頭
  7. ESP頭
  8. 目的地選項頭
  9. 上層頭
    使用IPv6擴展頭,必須按照上面的順序來進行排序,從以上順序可知,再同一個IP包中只有目的地選項擴展頭能夠出現屢次,而且僅限於保重包含選路擴展頭的狀況。

ipv6定義了六大選項擴展:less

  1. 逐跳選項頭
  2. 選路頭
  3. 分段頭
  4. 目的地選項頭
  5. 身份驗證頭
  6. 封裝安全性

IPv6地址分配狀況

ipv6前綴 地址分配狀況 所佔地址比例 備註
::0/8 Reserved by IETF 1/256 [1]
0200::/7 Reserved by IETF 1/128 [2]
2000::.3 Global unicast 1/8
FE80::/10 Link-local unicast 1/1024 [3]
FEC0::/10 Ressrved by IETF(formely Site-local unicast)
FC00::/7 Unique local ipv6 address 1/128
FF00::/8 Multicast 1/256
Others Reserved by IETF

IPv6三種地址類型

IPv6主要有三種類型的地址:單播地址、組播地址和任播地址oop

單播地址:用來惟一標識一個接口,相似於IPv4的單播地址。發送到單播地址的數據報文將被傳送給此地址所標識的接口。測試

在單播尋址模式下,IPv6接口(host)在網段中惟一標識。 IPv6數據包包含源IP地址和目標IP地址。 主機接口配備有在該網絡段中惟一的IP地址。當網絡交換機或路由器接收到註定到單個主機的單播IP分組時,它發出其鏈接到該特定主機的輸出接口之一 。ui

多播(組播)地址:用來標識一組接口(一般這組接口屬於不一樣的節點),相似於IPv4的組播地址。發送到組播地址的數據報文被傳送給此地址所標識的全部接口。ssr

IPv6組播模式與IPv4相同。 目的地爲多個主機的數據包在特殊的多播地址上發送。 全部對該組播信息感興趣的主機須要首先加入該組播組。 加入組的全部接口接收組播數據包並對其進行處理,而對組播數據不感興趣的其餘主機則忽略組播信息。設計

任播地址:用來標識一組接口(一般這組接口屬於不一樣的節點)。發送到任播地址的數據報文被傳送給此地址所標識的一組接口中距離源節點最近(根據使用的路由協議進行度量)的一個接口。

IPv6引入了一種新型的尋址,稱爲Anycast尋址。 在此尋址模式下,多個接口(host)被分配相同的任播IP地址。 當主機但願與配備有任播IP地址的主機通訊時,它發送單播消息。 在複雜的路由機制的幫助下,在路由成本方面,該單播消息被遞送到最接近發送方的主機。

IPv6不使用廣播地址,廣播地址的功能由多播地址代替。

IPv6的Prefix:
在IPv6網絡,路由器使用Prefix來判斷IPv6地址是否位於同一個網絡,比較廣泛的方式是將128位的IPv6
地址切割成64位的Prefix和64位的Interface ID,IPv6 Prefix長度的表示方法是在地址後面加上/xx,
例如上圖中的::1/128,表示Prefix爲128位。假設全部IPv6地址都使用64位Prefix,就能夠擁有2^64個
網絡,每一個網絡能夠容納2^64個IP地址,2的64次方:18446744073709551616,這是個天文數字。因此在
IPv6網絡裏,已經不須要再把網絡分紅Subnet。

EUI-64地址:

基於IEEE EUI-64格式。該格式基於已存在的MAC地址來做爲64位接口標識符,這樣的標識符在本地和全球都是惟一的。IPv6單播地址中的接口標識符用來標識鏈路上的一個惟一的接口。目前IPv6單播地址基本上都要求接口標
識符爲64位。IEEE EUI-64格式的接口標識符是從接口的鏈路層地址(MAC地址)變化而來的。IPv6地址中
的接口標識符是64位,而MAC地址是48位,所以須要在MAC地址的中間位置(從高位開始的第24位後)插入
十六進制數FFFE(1111111111111110)。爲了確保這個從MAC地址獲得的接口標識符是惟一的,還要將Uni
versal/Local (U/L)位(從高位開始的第7位)設置爲「1」。最後獲得的這組數就做爲EUI-64格式的接口標
識符。IPv6地址太長,若是要逐個端口配置IPv6地址是件很痛苦的事情,使用EUI-64就能夠只設定Prefix
部份,而後接口就會用MAC地址自動生成Interface ID,大大減小工做量。

舉例,MAC地址:0012-3400-ABCD
中間插入FFFE使其成爲EUI-64 Interface ID: 0012:34FF:FE00:ABCD
最後把第7位改爲1:0212:34FF:FE00:ABCD

IPv6 Unicast Addressing(單播)

IPv6大體由前綴,子網ID,接口ID組成

前綴:至關於v4地址中的網絡ID
接口ID:至關於v4地址中的主機ID

IPv6有三種不一樣類型的單播地址方案:

單播中有全局單播地址(公網地址)、鏈路本地地址(同一鏈路上通訊)、環回地址、未指定地址、惟一本地地址(私有地址)、內嵌Ipv4的地址。

Global Aggregatable Address (2000::/4—3fff::/4),一個接口可配置多個Global地址。(一個端口能夠配置多個全球可聚合單播地址,可是一個端口只能配置一個FE80::/10 FE80鏈路本地地址),能夠理解爲IPv4公網地址。提供給網絡服務提供商。這種地址類型容許路由前綴的聚合,從而限制了全球路由表項的數量。

  1. 2001::/4,ipv6的第一個商業網
  2. 2002::/4,6to4 tunnel
  3. 2003::/16 用於實驗用的地址

通常從運營商處申請到的IPv6地址空間爲/48,三個最高有效位始終設置爲001,再由本身根據須要進一步規劃:

link-local (FE80::/10) 也稱爲鏈路本地地址,本鏈路惟一的,用在ipv6的路由協議裏面,做爲通訊地址,每一個網卡只能配置一個。能夠理解爲標識符或者定位符。鏈路本地地址的前10位爲1111111010。此地址用於鄰居發現協議,也用於無狀態自動配置中本地鏈路上節點之間的通訊。使用鏈路本地地址做爲源或目的地址的數據報文不會被轉發到其餘鏈路上。一般使用FE80::/10表示。

Stateless Address Autoconfiguration(SLAAC)無狀態地址自動配置。在IPv4網絡中,咱們能夠通
過DHCP讓端口自動獲取到IP地址,而在IPv6網絡裏,則經過Auto-configuration來獲取IP地址。前面咱們
說過EUI-64能夠自動產生Interface ID,因此如今要解決的就是如何自動得到Prefix。IPv6使用的是Stat
eless Address Autoconfiguration,Interface向Link-Local發出RS(Router Solicitation)多播
請求來獲取配置參數,IPv6 Router迴應RA(Router Advertisement)包含Internet層配置參數的路由器
宣告報文進行迴應。

site local (FEC0::/10) 用於站點的,存在必定的爭議,如今已經被收回了。

特殊地址

地址0:0:0:0:0:0:0:0/128不指定任何內容,稱爲未指定地址。 簡化後,全部的0被壓縮爲:: / 128。

在IPv4中,地址0.0.0.0與網絡掩碼0.0.0.0表示默認路由。 相同的概念也適用於IPv6,地址0:0:0:0:0:0:0:0,網絡掩碼全0表示默認路由。 應用IPv6規則後,此地址壓縮爲:: / 0。

IPv4中的環回地址由127.0.0.1到127.255.255.255系列表示。 但在IPv6中,只有0:0:0:0:0:0:0:1/128表示環回地址。 環回地址後,能夠表示爲:: 1/128。

任意播地址(Anycast Address)

任播地址設計用來在多個主機或者節點提供相同的服務時提供冗餘和負載分擔功能。任播地址九遊這樣的性質:發送到任播地址的分組,被按照路由協議的側臉距離,路由到該任播地址的「最近的」接口。任意播又稱爲泛播。

泛播對於提供某些類型的服務特別有用,尤爲是對於客戶機和服務器之間不須要有特定關係的一些服務,錄入域名服務器和時間服務器,DNS等。MSDP的AnycastRP就是這樣的一種典型應用。

任播地址時根據單播地址空間分配的,所以任播地址在句法上不能與單播地址相互。當單播地址分配給與多於一個接口時,該單播地址轉化爲任播地址。分得該地址的節點必須被顯示配置,以便知道該地址是任播地址。這個地址是由路由協議定義的,不能手工配置,任意播地址只能出如今路由器上,而且不能做爲數據包的原地址來使用。

任播地址是根據單播地址空間分配的,使用任何已定義的單播地址格式。

節點和路由器必須具有的IPV6地址

組播地址

IPv6 多播(組播)地址是一組接口的標識符(典型在不一樣節點上)。一個接口能夠屬於任何數目的多播組。

組播地址最高位前8位固定爲全1,也就是「FFXX::/8」

img

永久分配的多播地址的「含義」獨立於範圍值。

例如,若是給「NTP服務器組」分配一個組ID 爲101(16進制)的永久多播地址,那麼

FF01:0:0:0:0:0:0:101意味着在相同接口(即,相同節點)上的全部NTP服務器(做爲發送者)。
FF02:0:0:0:0:0:0:101意味着在相同鏈路上的全部NTP服務器(做爲發送者)。
FF05:0:0:0:0:0:0:101意味着在相同站點內的全部NTP服務器(做爲發送者)。
FF0E:0:0:0:0:0:0:101意味着在互聯網中的全部NTP服務器。

常見的組播地址

全部節點地址:
FF01:0:0:0:0:0:0:1     FF01::1
FF02:0:0:0:0:0:0:1     FF02::1
上述多播地址標識範圍1(接口本地)或範圍2(鏈路本地)內的全部IPv6節點組。
全部路由器地址:

FF01:0:0:0:0:0:0:2     FF01::2
FF02:0:0:0:0:0:0:2     FF02::2
FF05:0:0:0:0:0:0:2     FF05::2
上述多播地址標識範圍1(接口本地)、範圍2(鏈路本地)或範圍5(站點本地)內的全部IPv6路由器組。

IPv6組播地址的MAC地址映射

img

被請求節點組播地址Solicited-node

在IPv6組播地址中,有一種特別的組播地址,叫作Solicited-node地址(被請求節點組播地址)。
Solicited-node地址是一種特殊用途的地址.主要用於重複地址檢測(DAD)和替代IPv4中的ARP。
Solicited-node地址由前綴FF02::1:FF00:0 / 104和ipv6單播地址的最後24位組成。
一個IPv6單播地址對應一個Solicited-node地址。Solicited-node地址有效範圍爲本地鏈路範圍。
地址格式: FF02:0:0:0:0:1:FFXX:XXXX,具體的對應關係以下:

img

IPv6 Tunneling

將互聯網徹底從IPv4轉換到IPv6將會是一個及其漫長的過程,目前IPv4仍然佔據重要地位。因此在這個轉
換的過程當中,將會有至關長的一個時期IPv4與IPv6會共同存在於互聯網當中。若是兩張網徹底各自獨立是
不現實的,因此就須要一種技術實現IPv4能夠與IPv6網絡互通。IPv6 Tunneling可讓IPv6報文包裹在
IPv4之中進行傳輸,IPv6 Tunneling有兩種技術,分別是ISATAP6to4 Tunnel

ISATAP

ISATAP(Intra-Site Automatic Tunnel Addressing Protocol)是一種IPv6轉換傳送機制,容許IPv6
數據包經過IPv4網絡上雙棧節點傳輸。它將IPv4地址夾入IPv6地址中,當兩臺 ISATAP 主機通信時,可自
動抽取出IPv4地址創建Tunnel便可通信,且並不需透過其它特殊網絡設備,只要彼此間IPv4網絡通暢便可。
ISATAP分爲Server與Client兩個角色,Client向Server請求IPv6地址並創建IPv6 Tunnel。這樣Client
即可以透過ISATAP Server與IPv6網絡通信。

咱們如下面的場景來演示一下ISATAP如何工做。

● R1和R2位於IPv4網絡中,R1(ISATAP Client)的default Route指向R2,沒法與IPv6網絡進行通訊。
● R2與R3跑EIGRP,讓R1能夠與R3(ISATAP Server)經過IPv4進行通訊。
● R3是ISATAP Server,充當中介的角色,鏈接IPv4和IPv6網絡。
● R3與R4跑OSPFv3。
● R4和R5位於IPv6網絡中,只有IPv6地址,沒有IPv4地址。

示例參考1:https://www.kclouder.cn/network-basic-ivp6/

6to4 Tunnel
ISATAP比較適合單機鏈接到IPv6網絡,而且如今大部分OS都支持ISATAP,好比Windows、Linux系統。若是
但願把兩個IPv6網絡經過IPv4鏈接起來,即點對點鏈接,則使用6to4比較合適。咱們如下圖爲例,這是一個
全路由網絡的示例 ,來演示一下如何配置6to4 Tunnel將兩個獨立的IPv6網絡經過IPv4網絡打通。
● R2和R3位於IPv4網絡中,配置6to4 tunnel。
● R1和R5位於IPv6網絡A中,經過R1鏈接到R2。
● R4和R6位於IPv6網絡B中,經過R4鏈接到R3。

示例參考2:https://www.kclouder.cn/network-basic-ivp6/

ICMPv6協議

ICMPv6由ipv6節點使用,用於報告在分組處理過程當中出現的錯誤,以及執行其餘網絡互連層功能。icmpv6是ipv6的總體部分,是基礎協議,在ipv6的next header取值爲58.

消息通用格式:

類型: 指出消息類型。他的值決定其他數據格式。消息類型分爲兩類:出錯消息和指示消息。

出錯消息由在它們的消息type字段的二進制值的高階位取0標識。因而,出錯消息的消息類型從0到127;指示消息的消息類型值從128到255.

代碼: 依賴於消息類型。它用於生產消息粒度的附加層。

校驗和:用戶檢測ICMPv6消息和ipv6首部部分中的數據錯誤。

ipv6數據報文

上圖顯示了icmpv6報文中的通用消息格式、差錯報文、通告報文

示例:

ping包時能夠查看到回顯請求和應答請求。

Type:Echo(ping) reply (129)


Type: Echo(ping) request (128)

==========

ICMPv6與ICMPv4報文類型的比較

瞭解更多報文類型能夠有助於理解原理。

NDP(neighbor discovery protocal) 功能

  1. DAD重複複製檢測
  2. 代替ARP
  3. 無狀態自動配置
  4. MTU發送
  5. ICMPv6重定向
  6. 發現臨近的,幫助轉發分組的路由器
  7. 跟蹤鄰居可達性,偵聽鄰居鏈路層地址。

ipv6地址組播

DHCPv6協議

DHCPv6使用組播,全部的DHCP服務器和中繼代理監聽多播地址(鏈路範圍的FF02::1:2),用於客戶端和相鄰的服務器及中繼代理的通訊之用,站點內的全部DHCP服務器偵聽多播地址(站點範圍的FF05::1:3),用於中繼代理和服務器之間的通訊。

DHCPv6使用UDP,DHCPv6客戶端監聽UDP端口546,而DHCPv6服務器和中繼代理監聽UDP端口547.

IPv6地址獲取原理

IPv6地址分配原理有2種,一種是快速分配DHCP地址,另外一種是請求多個IPv6地址。

  1. 2個數據包交互狀況

當客戶端並不須要服務器爲其分配IP地址,而是須要獲取諸如DNS Server、NTP Server這樣的其餘配置信息的時候,他只須要與服務器進行一個簡單的只包含兩個消息的交換便可。客戶端發送一個DHCP配置SOLICIT消息到一個特定多播地址,請求地址和其餘配置信息,該信息提示服務器:客戶端能夠接受一個當即的迴應消息。而服務器以一個攜帶了被請求的配置信息的DHCP迴應消息應答。全部配置給客戶端使用的地址都包括一個有效生存期和首選生存期,爲了在生存期到期後繼續使用這些地址,客戶端向服務器發送DHCP更新消息,服務器經過DHCP迴應消息通告新的生存期。

  1. 4個數據包交互狀況

要請求一個或者多個IPv6地址,客戶端首先須要肯定服務器的位置,而後再進行地址和配置新的請求。客戶端首先發送一個DHCP Solicit消息到一個特定多播地址,來查找可用的DHCP服務器。全部符合客戶單要求的服務器以DHCP Request消息來獲取地址和其餘配置。

OSPFv3路由協議

OSPFv3證書標準是RFC2740.

OSPFv3使用的協議號與OSPFv2同樣,都是89.

OSPFv3協議報文的源IPv6除了虛鏈接外,依賴使用本地鏈路地址;目的IPv5地址則是選擇ALLSPFRouters、ALLDRouters以及鄰接路由器的本地鏈路地址(虛鏈路除外),ALLSPFRouters爲組播IPv6地址FF02::5,ALLDRouters爲組播IPv6地址FF02::6.

OSPFv3單area和DHCPv6配置示例

參考:https://www.kclouder.cn/huawei-ipv6/

實驗拓撲:

這裏咱們將主機演示一下在華爲交換機或路由器上配置IPv6地址進行通訊、配置DHCPv六、經過配置OSPFv3演示IPv6路由基礎、配置IPv6 over IPv4隧道以及配置IPv4 over IPv6隧道的方法。經過本篇文章,咱們將掌握基本IPv6地址的配置方法、掌握OSPFv3路由協議的配置方法、掌握DHCPv6服務器功能的配置方法以及一些常見的IPv6命令的使用方法。

配置IPv6
一、咱們如下圖中的拓撲爲例,R一、R二、R3經過一臺交換機互聯,咱們須要在這三臺路由器上配置IPv6地址,而後再啓用OSPFv3以及DHCPv6。
二、首先在三臺服務器的環回接口上配置IPv6全球單播地址,在全部路由器的g0/0/0接口上配置鏈路本地地址(Link-local)。如下命令以R1爲例,以相同的方式配置R2和R3。
# R1
ipv6
int loopback 0
 ipv6 enable
 ipv6 address 2001:1::a 64
int g0/0/0
 ipv6 enable
 ipv6 address fe80::1 link-local

# R2
ipv6
int loopback 0
 ipv6 enable
 ipv6 address 2001:1::b 64
int g0/0/0
 ipv6 enable
 ipv6 address fe80::2 link-local
 
 # R3
ipv6
int loopback 0
 ipv6 enable
 ipv6 address 2001:1::c 64
int g0/0/0
 ipv6 enable
 ipv6 address fe80::3 link-local
 
三、配置完成後,查看並確認接口地址配置正確,而且是UP狀態。
display ipv6 int g0/0/0
display ipv6 int loo0

img

四、配置OSPFv3,在路由器上開啓OSPFv3進程,並指定三臺路由器的router-id。而後在接口下使能OSPFv3進程並指定所屬區域。如下命令以R1爲例,以相同的方式配置R2和R3。
# R1
ospfv3 1
 router-id 1.1.1.1
int g0/0/0
 ospfv3 1 area 0
int loo0
 ospfv3 1 area 0

# R1
ospfv3 1
 router-id 2.2.2.2
int g0/0/0
 ospfv3 1 area 0
int loo0
 ospfv3 1 area 0
 
 # R1
ospfv3 1
 router-id 3.3.3.3
int g0/0/0
 ospfv3 1 area 0
int loo0
 ospfv3 1 area 0
 
五、配置完成後,在路由器上查看OSPFv3的鄰居關係。能夠看到OSPF鄰接關係已經造成,R1爲DR,R2爲BDR,R3爲DROther。
display ospfv3 peer

img

img

img

六、使用Ping ipv6命令檢測鏈路本地地址和Loopback0接口的全球單地址是否可達。好比在R1上執行如下命令,以下圖能夠看到網絡是可達的。
ping ipv6 fe80::2 -i g0/0/0
ping ipv6 2001:3::c

img

七、經過抓包能夠看到ICMPv6類型的報文。

img

八、下面咱們來配置DHCPv6,在R2上開啓DHCPv6服務器功能,而後建立IPv6地址池並指定地址池中IPv6地址的前綴長度,再配置IPv6地址池中不參與自動分配的IPv6地址(一般爲須要保留的網關地址)以及DNS服務器的IPv6地址。
dhcp enable
dhcpv6 duid ll
dhcpv6 pool pool1
 address prefix 2001:face::/64
 dns-server 2001:444e:5300::1
 excluded-address 2001:face::1

九、在g0/0/0接口配置IPv6地址爲地址池中的網關地址,並配置DHCPv6服務器功能以及指定的地址池的名稱。
int g0/0/0
ipv6 address 2001:face::1 64
dhcpv6 server pool1

img

十、在R1和R3上配置DHCPv6客戶端功能,並在相應的接口下配置經過DHCPv6自動獲取IPv6地址功能。同時,咱們再配置一臺PC自動獲取IPv6地址。
dhcp enable
dhcpv6 duid ll
int g0/0/0
 ipv6 address auto dhcp

十一、在R2上查看DHCPv6地址池的信息,能夠看到有三個地址經過DHCPv6分配了出去。

img

十二、在R1和R3上查看經過DHCPv6獲取到的IPv6地址。

img

1三、在PC上查看經過DHCPv6自動獲取到的IPv6地址,注意自動配置的網關爲R2的G0/0/0的鏈路本地地址。

img

1四、測試一下DHCPv6地址的連通性。PC ping R2, R1 ping PC,R3 ping R1。

img

img

img

1五、在R2上查看IPv6的路由表,能夠看到loopback0的地址經過OSPFv3進行路由。

img

鏈路聚合LACP配置示例

一、如下圖拓撲爲例,兩臺交換機經過LACP鏈路相連,同時在兩臺交換機配置有兩個VLAN(VLAN 100和VLAN200)並對應有各自的主機相鏈接,兩臺交換機再與R1相連用來訪問外網。

二、首先在兩臺交換機上啓用IPv6,而後建立VLAN100和VLAN200,而後配置LACP。
# 兩臺交換機一樣的配置方法
ipv6
vlan batch 100 200
int eth-trunk 1
 mode lacp-static
 port link-type trunk
 port trunk-allow-pass vlan 200 300
int g0/0/1
 eth-trunk 1
 priority 100
int g0/0/2
 eth-trunk 1
 priority 100 
lacp priority 100

三、上述基本配置完成之後,建立VLANIF 100和VLANIF 200,並配置IPv6地址。以SW1爲例。
# LSW1 配置
int vlanif 100
 ipv6 enable
 ipv6 address fc00:1::1/64
int vlanif 200
 ipv6 enable 
 ipv6 address fc00:2::1/64

# LSW2 配置
int vlanif 100
 ipv6 enable
 ipv6 address fc00:1::2/64
int vlanif 200
 ipv6 enable 
 ipv6 address fc00:2::2/64


四、配置鏈接主機的接口,以SW1爲例(SW2使用一樣的配置)。
int g0/0/3
 port link-type access
 port default vlan 100
int g0/0/4
 port link-type access
 port default vlan 100

五、配置鏈接路由器的接口,以SW1爲例。
# SW1
interface g0/0/5
  port link-type hybird
  port hybrid pvid vlan 100
  port hybrid untagged vlan 100
 
# SW2
interface g0/0/5
  port link-type hybird
  port hybrid pvid vlan 100
  port hybrid untagged vlan 100

img

六、兩臺交換機配置完成之後,爲4臺PC配置好對應的IPv6地址。

七、配置路由器,啓用IPv6並給兩個接口配置好IPv6地址。

img

八、配置完成,在PC1上分別ping PC2和路由器的接口地址。

img

九、在PC3上分別ping PC4和路由器的接口地址。

img

IPv4toIPv6隧道配置示例

配置IPv6 over IPv4
一、以下圖拓撲,R2與R3屬於邊界路由器,須要啓動IPv4/IPv6雙協議棧,並配置IPv6 over IPv4隧道。邊界路由器收到從IPv6網絡側發出來的報文後,若是報文目的地地址不是自身且下一跳接口爲Tunnel接口,就把收到的IPv6報文的數據部分加上IPv4報頭,封裝成IPv4報文轉發到對端的邊界路由器上,對端路由器執行報文解封裝,去掉IPv4報頭,而後將解封后的IPv6報文發送到IPv6網絡中。

img

二、首先配置路由器使能IPv6,並配置IPv6地址。
R1:
ipv6
int g0/0/0
 ipv6 enable
 ipv6 address 2001::1/64
R2:
ipv6
int g0/0/0
 ipv6 enable
 ipv6 address 2001::2/64
int g0/0/1
 ip address 119.1.1.2 24
R3:
ipv6
int g0/0/0
 ipv6 enable
 ipv6 address 2002::3/64
int g0/0/1
 ip address 119.1.1.3 24
R4:
ipv6
int g0/0/0
 ipv6 enable
 ipv6 address 2002::4/64

三、在R2和R3上配置IPv6 over IPv4隧道。
R2:
int tunnel 0/0/1
 ipv6 enable
 ipv6 address 2020::2 /64
 tunnel-protocol ipv6-ipv4
 source 119.1.1.2
 destination 119.1.1.3

R3:
int tunnel 0/0/1
 ipv6 enable
 ipv6 address 2020::3 /64
 tunnel-protocol ipv6-ipv4
 source 119.1.1.3
 destination 119.1.1.2

img

四、隧道創建完成,爲R1和R4上配置IPv6默認路由。
R1:
ipv6 route-static :: 0 2001::2
R4:
ipv6 route-static :: 0 2002::3

五、爲R2和R3配置靜態路由,下一跳須要指向隧道對端IPv6地址。
R2:
ipv6 route-static 2002:: 64 2020::3
R3:
ipv6 route-static 2001:: 64 2020::2

六、在R1上PR4的IPv6地址,能夠Ping通說明IPv6 over IPv4隧道創建成功。

img

相關文章
相關標籤/搜索