數(shù)據(jù)通信網(wǎng)絡之IPv6基礎

文章及資源歸檔至【AIShareLab】,回復 通信系統(tǒng)與網(wǎng)絡 可獲取。

一、目的

  1. 掌握網(wǎng)絡設備靜態(tài)IPv6 地址配置的方法。
  2. 掌握IPv6 地址無狀態(tài)自動配置的應用。
  3. 掌握通過DHCPv6 部署IPv6 地址配置自動化。
  4. 掌握基本的IPv6 網(wǎng)絡連通性測試方法。
  5. 理解RA 報文及無狀態(tài)地址自動配置過程。
  6. 分析Ping 與Tracert 應用所使用的ICMPv6 報文及工作原理。

二、環(huán)境及網(wǎng)絡拓撲

如圖 1 所示,路由器 R1 通過兩個物理接口分別連接物聯(lián)網(wǎng)終端 R4(通過一臺路由器
模擬)及計算機 PC1。其中,路由器 R1 和 R4 推薦使用 AR2220 及以上設備。
[圖片上傳失敗...(image-cc019e-1694151112834)]

圖1 網(wǎng)絡拓撲圖

三、需求

  1. 完成 R1 的IPv6 基礎配置。
  2. 在R1 的GE0/0/2 接口上啟動RA 報文通告,使得物聯(lián)網(wǎng)終端R4 的GE0/0/0 接口能夠通
    過無狀態(tài)自動配置獲取IPv6 地址。
  3. 在R1 的GE0/0/1 接口上部署DHCPv6,使得PC1 能夠通過DHCPv6 協(xié)議自動獲取IPv6
    地址。
  4. 觀察各類常見的ICMPv6 報文在網(wǎng)絡中的功能與應用。

四、步驟及結果分析

1.完成 R1 的 IPv6 基礎配置。
在 R1 上完成如下配置, 配置結果如圖2所示:

<Huawei> system-view
[Huawei] sysname R1 
[R1] ipv6 
[R1] interface GigabitEthernet 0/0/1 
[R1-GigabitEthernet0/0/1] ipv6 enable 
[R1-GigabitEthernet0/0/1] ipv6 address FC00:1000::1 64 
[R1-GigabitEthernet0/0/1] quit 
[R1] interface GigabitEthernet 0/0/2 
[R1-GigabitEthernet0/0/2] ipv6 enable 
[R1-GigabitEthernet0/0/2] ipv6 address FC00:14::1 64 
[R1-GigabitEthernet0/0/2] quit

[圖片上傳失敗...(image-c12907-1694151112834)]
圖2 R1的IPv6基礎配置

備注:以上配置展示的是在華為路由器上通過手工方式配置靜態(tài)IPv6 地址的過程。在多數(shù)情況下,絡設備的IPv6 地址需要固定,因此大多采用手工配置的方式為設備配置靜態(tài)IPv6地址。

階段性驗證:在R1上查看IPv6接口信息并展示相應結果,驗證R1的GE0/0/1與GE0/0/2 接口是否正確獲得了相應的靜態(tài)IPv6地址。

備注:在設備系統(tǒng)視圖上執(zhí)行display ipv6 interface brief 命令可查看設備的IPv6 接口信息,其中包括接口IPv6 地址、接口物理狀態(tài)及協(xié)議狀態(tài)。

經(jīng)過驗證, R1的GE0/0/1與GE0/0/2 接口正確地獲得了相應的靜態(tài)IPv6地址,結果如圖3所示, 其相應的靜態(tài)IPv6地址分別為FC00:1000::1、FC00:14::1。

[圖片上傳失敗...(image-5e9fdc-1694151112834)]
圖3 在R1上查看IPv6接口信息

(2)完成 IPv6 地址無狀態(tài)自動配置

①在 R1 上完成如下配置:

[R1] interface GigabitEthernet 0/0/2 
[R1-GigabitEthernet0/0/2] undo ipv6 nd ra halt 

備注:在華為路由器上ipv6 nd ra halt 命令用來取消使能設備發(fā)布路由器通告(Router Advertisement,RA)報文功能,缺省情況下,設備發(fā)布RA 報文功能處于未使能狀態(tài),可以認為該命令缺省時已經(jīng)被配置在接口上了。在本實驗中,我們需要在R1 的GE0/0/2 接口上發(fā)布RA 報文,因為RA 報文中攜帶IPv6 地址前綴信息,通過RA 報文的通告,R4 可解析出報文中攜帶的IPv6 地址前綴,并且使用該前綴結合R4 本地生成的接口ID 構造一個IPv6地址,這個過程被稱為無狀態(tài)地址自動配置。為實現(xiàn)這個功能,需要在R1 的GE0/0/2 接口上使能發(fā)布RA 報文功能,即執(zhí)行undo ipv6 nd ra halt 命令。

[圖片上傳失敗...(image-d81b54-1694151112834)]

圖4 在R1上完成IPv6 地址無狀態(tài)自動配置
在R1 的GE0/0/2 接口上單擊鼠標右鍵,按圖 5 所示開始抓包,以試圖捕獲R1 的GE0/0/2 接口上的入向與出向數(shù)據(jù)包。
[圖片上傳失敗...(image-52efb5-1694151112834)]

圖5 在R1上完成IPv6 地址無狀態(tài)自動配置
②在物聯(lián)網(wǎng)終端 R4 上完成如下配置, 配置結果如圖6所示:

<Huawei> system-view 
[Huawei] sysname R4 
[R4] ipv6 
[R4] interface GigabitEthernet 0/0/0 
[R4-GigabitEthernet0/0/0] ipv6 enable 
[R4-GigabitEthernet0/0/0] ipv6 address auto global default 

[圖片上傳失敗...(image-f9f4be-1694151112834)]

圖6 配置物聯(lián)網(wǎng)終端 R4

備注:在以上配置中,ipv6 address auto global 命令用來使能無狀態(tài)自動生成IPv6 全局地址功能,命令末尾的default 關鍵字用于指定學習缺省路由,這樣一來R4 在收到RA 報文生
成IPv6 地址同時,還可以學習RA 報文中的源IPv6 地址,并且把它作為IPv6 缺省路由的
下一跳地址。
完成上述配置后,R4 便會通過IPv6 無狀態(tài)地址自動配置功能在GE0/0/0 接口上自動配
置一個IPv6 地址。在R4 上查看IPv6 接口地址信息:

[R4] display ipv6 interface brief
*down: administratively down
(l): loopback
(s): spoofing
Interface Physical Protocol
GigabitEthernet0/0/0 up up
[IPv6 Address] FC00:14::2E0:FCFF:FECB:6980

備注:以上面的結果為例,R1 通告給R4 的RA 報文中缺省時攜帶的IPv6 地址前綴是前者
GE0/0/2 接口的IPv6 地址前綴FC00:14::/64,R4 將該64bit 前綴與自己本地GE0/0/0 接口的
IPv6 接口ID(2E0:FCFF:FECB:6980)構成了一個IPv6 地址:FC00:14::2E0:FCFF:FECB:6980。
其中,接口ID 2E0:FCFF:FECB:6980 是R4 在GE0/0/0 接口上根據(jù)接口MAC 地址自動生成
的,采用的是EUI-64 規(guī)范,該規(guī)范可確保生成的接口ID 唯一。

階段性驗證
⑴ 在R4系統(tǒng)視圖下執(zhí)行display interface GigabitEthernet 0/0/0命令,查看R4的GE0/0/0接口的相關信息并展示相應結果,驗證接口MAC地址與上述接口ID是否符合EUI-64規(guī)范。
R4的GE0/0/0接口信息如圖6所示,可知接口MAC地址與上述接口ID符合EUI-64規(guī)范。
[圖片上傳失敗...(image-b69812-1694151112834)]

圖6 R4的GE0/0/0接口信息

⑵ 在R4上ping R1 GE0/0/2,具體命令格式為 ping ipv6 IPv6 地址,驗證R4是否可與 R1 成功通信。結果如圖7所示, R4與 R1 成功通信。
[圖片上傳失敗...(image-27bc4e-1694151112834)]

圖7 在R4上ping R1 GE0/0/2

(3)觀察RA 報文與無狀態(tài)地址自動配置過程
(1)捕獲數(shù)據(jù)包,查看協(xié)議棧。
在Wireshark 界面中,查看前面開啟抓包后所捕獲的信息, R1 和R2 接口配置完成后網(wǎng)絡中產(chǎn)生了多個ICMPv6 數(shù)據(jù)包交互,具體的包含Neighbor Solicitation、Router Solicitation 和Router Advertisement,其中,1 號Neighbor Solicitation 報文為R4 GE0/0/0 接口獲得IPv6 地址后為確保該地址在鏈路上的唯一性而啟動重復地址檢測(Duplicate Address Detection,DAD)機制所發(fā)出的鄰居請求報文,2 號ICMPv6 Router Solicitation 報文為R4 主動發(fā)送的路由器請求(Router Solicitation,RS)報文以請求R1 發(fā)送RA 路由器通告報文,3 號ICMPv6 Router Advertisement 報文即為R1 周期性發(fā)送的RA 報文。
[圖片上傳失敗...(image-c47b48-1694151112834)]

圖8 R1 和R2 接口配置完成后,R2 GE 0/0/0 所捕獲的數(shù)據(jù)包

回答下列問題:

結合捕獲信息,說明 ICMPv6 數(shù)據(jù)包自下而上的協(xié)議棧及封裝結構
答:ICMPv6是IPv6協(xié)議棧中的一個核心協(xié)議,它主要用于在IPv6網(wǎng)絡中傳遞控制信息和錯誤報告。ICMPv6數(shù)據(jù)包的協(xié)議棧和封裝結構如下所示:
數(shù)據(jù)鏈路層:ICMPv6數(shù)據(jù)包首先被封裝在數(shù)據(jù)鏈路層的幀中。這個幀包含了目標MAC地址、源MAC地址以及幀類型等信息。
IPv6層:ICMPv6數(shù)據(jù)包被封裝在IPv6數(shù)據(jù)報中。IPv6數(shù)據(jù)報包含了目標IP地址、源IP地址、下一個頭部字段等信息。
上層協(xié)議:ICMPv6數(shù)據(jù)包被封裝在IPv6數(shù)據(jù)報的上層協(xié)議字段中。這個字段指定了封裝在IPv6數(shù)據(jù)報中的上層協(xié)議類型,其中包括ICMPv6協(xié)議。
ICMPv6頭部:ICMPv6數(shù)據(jù)包的頭部包含了類型、代碼、校驗和等字段。這些字段指定了ICMPv6數(shù)據(jù)包的類型和用途。
數(shù)據(jù)部分:ICMPv6數(shù)據(jù)包的數(shù)據(jù)部分取決于ICMPv6數(shù)據(jù)包的類型和代碼。例如,當ICMPv6數(shù)據(jù)包的類型為Echo Request(類型值為128)時,數(shù)據(jù)部分包含了發(fā)送方發(fā)送的數(shù)據(jù)。如果ICMPv6數(shù)據(jù)包的類型為Router Advertisement(類型值為134),則數(shù)據(jù)部分包含了路由器的信息。

⑵分析單一數(shù)據(jù)包格式。
①RA 報文:
以實際捕獲數(shù)據(jù)為準,選中一個 RA 報文,回答下列問題:
a. 包含 RA 報文的以太網(wǎng)幀的源地址和目的地址的十六進制值是多少?
答:包含 RA 報文的以太網(wǎng)幀的源地址為00:e0:fc:1c:7d:1b 目的地址為33:33:00:00:00:01
b. 包含 RA 報文的 IPv6 數(shù)據(jù)報源地址和目的地址的十六進制值是多少?
答:包含 RA 報文的 IPv6 數(shù)據(jù)報源地址和目的地址的十六進制值分別是fe80::2e0:fcff:fe1c:7d1b 和ff02::1
c. 給出 ICMPv6 中類型字段的十進制值。
答:134
d. RA 報文中是否包含發(fā)送者的 IPv6 地址?
答:RA 報文中包含發(fā)送者的 IPv6 地址

②RS 報文:以實際捕獲數(shù)據(jù)為準,選中一個與上面 RA 對應并由 R4 主動發(fā)送的 RS 報文,
然后展開該數(shù)據(jù)包的詳細信息。
回答下列問題:
a. 包含 RS 報文的以太網(wǎng)幀的源地址和目的地址的十六進制值是多少?
答:包含 RS 報文的以太網(wǎng)幀的源地址和目的地址的十六進制值分別是: Source:00:e0:fc:ca:38:20 Destination:33:33:00:00:00:01
b. 包含 RS 報文的 IPv6 數(shù)據(jù)報源地址和目的地址的十六進制值是多少?
答:包含 RS 報文的 IPv6 數(shù)據(jù)報源地址和目的地址的十六進制值分別是Source:fe80::2e0:fcff:feca:3820 Destination:ff02::1
c. 給出 ICMPv6 中類型字段的十進制值。
答:133
d. RS 報文中是否包含發(fā)送者的 IPv6 地址?
答:RS 報文中不包含發(fā)送者的 IPv6 地址

[圖片上傳失敗...(image-2cab2d-1694151112834)]
圖9 RS報文捕捉

(4)完成 DHCPv6 部署
①在 R1 上完成如下配置, 配置結果如圖10所示。

[R1] dhcp enable 
[R1] dhcpv6 pool pool1 
[R1-dhcpv6-pool-pool1] address prefix fc00:1000::/64 
[R1-dhcpv6-pool-pool1] excluded-address fc00:1000::1 
[R1-dhcpv6-pool-pool1] quit 
[R1] interface GigabitEthernet 0/0/1 
[R1-GigabitEthernet0/0/1] dhcpv6 server pool1 #在接口上綁定地址池 
[R1-GigabitEthernet0/0/1] quit

[圖片上傳失敗...(image-45d27-1694151112834)]

圖10 R1上完成DHCPv6 部署
②配置 PC1 的以太網(wǎng)卡,開啟 DHCPv6 客戶端功能,如圖11所示:
[圖片上傳失敗...(image-ac4559-1694151112834)]

圖11 開啟PC1的DHCPv6客戶端功能
階段性驗證:在 PC1 的配置界面上選擇“命令行”選項卡,然后執(zhí)行 ipconfig 查看網(wǎng)卡信息并展示相應結果,驗證 PC1 是否通過 DHCPv6 獲取到了正確地址,如圖12所示。

[圖片上傳失敗...(image-715acd-1694151112834)]

圖12 PC1查看網(wǎng)卡信息
(5)聯(lián)通性測試。

R4 ping PC1:以 PC1 獲取的動態(tài)地址為 fc00:1000::2 為例,在 R4 上執(zhí)行如下命令,測試到達PC1的連通性,可以發(fā)現(xiàn)二者已經(jīng)可以正常通信, 如圖13所示。

<R4> ping ipv6 fc00:1000::2 
PING fc00:1000::2 : 56 data bytes, press CTRL_C to break 
Request time out 
Reply from FC00:1000::2 
bytes=56 Sequence=2 hop limit=254 time = 30 ms 
Reply from FC00:1000::2 
bytes=56 Sequence=3 hop limit=254 time = 30 ms 
Reply from FC00:1000::2 
bytes=56 Sequence=4 hop limit=254 time = 20 ms 
Reply from FC00:1000::2 
bytes=56 Sequence=5 hop limit=254 time = 30 ms 
--- fc00:1000::2 ping statistics --- 5 packet(s) transmitted 
4 packet(s) received 
20.00% packet loss 
round-trip min/avg/max = 20/27/30 ms 

[圖片上傳失敗...(image-23af89-1694151112834)]

圖13 R4 ping PC1
(6)抓包分析。
①啟動抓包。本實驗中,可保持之前在 R1 的 GE0/0/2 接口上持續(xù)抓包,期間各種階段性測試命令及設備間狀態(tài)更新均會觸發(fā)多個數(shù)據(jù)包的產(chǎn)生和交互。另外,也可在前期階段性抓包分析后停止抓包,此處重新啟動抓包。
②運行命令。
在 R4 上依次執(zhí)行以下命令:ping ipv6 fc00:1000::2;tracert ipv6 fc00:1000::2,分別完
成測試與 fc00:1000::2(以 PC1 獲取的動態(tài)地址為fc00:1000::2為例)的聯(lián)通性,以及跟蹤到fc00:1000::2 的路由信息。結果如圖14所示:
[圖片上傳失敗...(image-ac9f47-1694151112834)]

圖14 在R4中執(zhí)行命令
備注: 在網(wǎng)絡日常運維和管理過程中,Tracert 是被廣泛使用的應用程序,該應用使用ICMPv6的相關報文來實現(xiàn)其功能。Tracert 可以幫助網(wǎng)絡管理員檢測從源節(jié)點到目的節(jié)點之間所經(jīng)過的逐跳設備。由圖6 中執(zhí)行tracert ipv6 fc00:1000::2 命令結果可見,從R4 到PC1 經(jīng)過了FC00:14::1,最終到達FC00:1000::2。當源與目的節(jié)點之間存在多跳設備時,Tracert 執(zhí)行的結果更加直觀。因此面對一個復雜的網(wǎng)絡時,這個工具可以方便地幫助網(wǎng)絡管理員識別流量的轉發(fā)路徑。以圖7 為例,Tracert 的實現(xiàn)原理及過程如下:
①R1 首先構造第一個發(fā)往目標地址FC00:23::3 的UDP(UDP 目的端口為特殊的33434,該
端口不會被具體的應用所使用)報文,這個報文的內(nèi)容是隨機填充的,沒有實際意義,但是
在該報文的IPv6 頭部中,R1 將Hop Limit 字段設置為1,這意味著報文在發(fā)出去之后,只
能傳遞一跳。R1 可能一次會發(fā)出多個相同的UDP 報文。
②R2 收到該UDP 報文后將Hop Limit 字段值減1 后發(fā)現(xiàn)值已為0,因此立即向R1 發(fā)送
ICMPv6 錯誤消息,告知報文的生存時間截止,這個錯誤消息的源地址為R2 的接口地址;
R1 收到這個報錯消息后,獲得了第一跳設備R2 的接口地址,然后將該地址打印在回顯中;
③接著R2 以Hop Limit=2 繼續(xù)發(fā)送UDP 報文,如此反復;
④直到報文到達目的地R3,由于R1 在Tracert 中所使用的UDP 端口在R3 處并未偵聽,因
此R3 回應ICMPv6 差錯報文,告知R1 目的端口不可達。R1 收到該差錯報文后即知曉最后
一跳已到達。

③分析報文
Ⅰ 分析 ping 報文
在 ICMPv6 報文中,Echo Request 和 Echo Reply 報文是非?;A且重要的報文,被用于 Ping應用程序等,當我們在一個 IPv6 節(jié)點上執(zhí)行 Ping 操作探測到某個目的地址的可達性時,實際上該應用將觸發(fā)一個 ICMPv6 Echo Request 報文發(fā)往目的地址,如果收到了對方回應的Echo Reply,則認為網(wǎng)絡是可達的。當 R4 ping PC1 時(即執(zhí)行相應的命令 ping ipv6
fc00:1000::2)捕獲到多對 Echo Request 和 Echo Reply 報文,如圖15所示。
[圖片上傳失敗...(image-f94354-1694151112834)]
[圖片上傳失敗...(image-3b78d4-1694151112834)]

圖15 捕獲Echo Request報文

[圖片上傳失敗...(image-6f3483-1694151112834)]

圖16 捕獲Echo Reply 報文

回答下列問題:
a. 此處分別出現(xiàn)多少個 ICMPv6 Echo Request 和 Echo Reply 報文?與測試命令顯示的結果是否一致?
答:如圖15所示, 一共有5個ICMPv6 Echo Request報文 和5個Echo Reply 報文,并且與測試命令顯示的結果一致。
b. 查看 Echo Request 報文,ICMPv6 類型和代碼號取值為多少?包含該報文的 IPv6 數(shù)據(jù)報源地址和目的地址分別是多少?包含該報文的以太網(wǎng)幀源地址和目的地址分別是多少?
答:如圖15所示, ICMPv6 類型和代碼號取值為128. 包含該報文的 IPv6 數(shù)據(jù)報源地址和目的地址分別是 Source:fc00:14::2e0:fcff:feca:3820, Destination:fc00:1000::2,包含該報文的以太網(wǎng)幀源地址和目的地址分別是Source:00:e0:fc:ca:38:20, Destination:00:e0:fc:1c:7d:1b
c. 查看 Echo Reply 報文,ICMPv6 類型和代碼號取值為多少?包含該報文的 IPv6 數(shù)據(jù)報源地址和目的地址分別是多少?包含該報文的以太網(wǎng)幀源地址和目的地址分別是多少?
答:如圖16所示, ICMPv6 類型和代碼號取值為129,包含該報文的 IPv6 數(shù)據(jù)報源地址和目的地址分別是Source:fc00:1000::2, Destination:fc00:14::2e0:fcff:feca:3820,包含該報文的以太網(wǎng)幀源地址和目的地址分別是 Source:00:e0:fc:1c:7d:1b, Destination:00:e0:fc:ca:38:20.
Ⅱ 分析 Tracert 報文
當 R4 tracert PC1 時(即執(zhí)行相應的命令 tracert ipv6 fc00:1000::2)捕獲到多個 UDP 和
ICMPv6 報文,如圖 17 所示。
[圖片上傳失敗...(image-5af78c-1694151112834)]

圖17 捕獲的Tracert 報文
[圖片上傳失敗...(image-c85e5b-1694151112834)]

圖18 捕獲的 ICMPv6 Time Exceeded 報文
[圖片上傳失敗...(image-89be0a-1694151112834)]

圖19 捕獲的ICMPv6 Destination Unreachable 報文

以實際捕獲數(shù)據(jù)為準,回答下列問題:
a.實際捕獲結果中分別出現(xiàn)多少個 UDP、ICMPv6 Time Exceeded 和 ICMPv6 Destination Unreachable 報文?與測試命令顯示的結果是否一致?
答:如圖17所示,一共有6個 UDP、3個ICMPv6 Time Exceeded 和 3個ICMPv6 Destination Unreachable 報文,與測試命令顯示的結果一致。
b.查看 UDP 報文,源端口號和目的端口號分別是多少?不同 UDP 報文所采用的源端口號 是否相同?不同 UDP 報文所采用的目的端口號是否相同?包含該報文的 IPv6 數(shù)據(jù)報源地址和目的地址分別是多少?包含該報文的 IPv6 數(shù)據(jù)報中 Hop Limit 取值分別是多少?
答:如圖18所示,源端口號是:30037,目的端口號是:33434.不同 UDP 報文所采用的目的端口號不同,包含該報文的 IPv6 數(shù)據(jù)報Source:fc00:14::2e0:fcff:feca:3820,Destination:fc00:1000::2.包含該報文的 IPv6 數(shù)據(jù)報中 Hop Limit 取值是1.
c.查看 ICMPv6 Time Exceeded 報文,ICMPv6 類型和代碼號取值為多少?包含該報文的IPv6 數(shù)據(jù)報源址和目的地址分別是多少?包含該報文的以太網(wǎng)幀源地址和目的地址分別是 多少?
答:ICMPv6 類型和代碼號取值為3,包含該報文的IPv6 數(shù)據(jù)報源址和目的地址分別是Source:fc00:14::1,Destination:fc00:14::2e0:fcff:feca:3820,包含該報文的以太網(wǎng)幀Source:00:e0:fc:1c:7d:1b,Destination:00:e0:fc:ca:38:20
d.查看 ICMPv6 Destination Unreachable 報文,ICMPv6 類型和代碼號取值為多少?包含該 報文的 IPv6 數(shù)據(jù)報源址和目的地址分別是多少?包含該報文的以太網(wǎng)幀源地址和目的地址分別是多少?
答:如圖19所示,ICMPv6 類型和代碼號取值為1,包含該報文的IPv6 數(shù)據(jù)報Source:fc00:1000::2,Destination:fc00:14::2e0:fcff:feca:3820,包含該報文的以太網(wǎng)Source:00:e0:fc:1c:7d:1b,Destination:00:e0:fc:ca:38:20.

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容