22
附件二十七、DHCPv6 符合性測試平台建置報告 885 附件二十七 九十八年度「新一代網際網路協定互通認證計畫」 期末研究報告附件 DHCPv6 符合性測試平台 建置報告 產業發展分項 主持人涂元光 博士 中華民國 九十八年十月

DHCPv6 符合性測試平台 建置報告附件二十七、DHCPv6 符合性測試平台建置報告 885 附件二十七 九十八年度「新一代網際網路協定互通認證計畫」

  • Upload
    others

  • View
    27

  • Download
    0

Embed Size (px)

Citation preview

  • 附件二十七、DHCPv6符合性測試平台建置報告

    885

    附件二十七

    九十八年度「新一代網際網路協定互通認證計畫」 期末研究報告附件

    DHCPv6符合性測試平台

    建置報告

    產業發展分項

    主持人涂元光 博士

    中華民國 九十八年十月

  • 附件二十七、DHCPv6符合性測試平台建置報告

    886

  • 附件二十七、DHCPv6符合性測試平台建置報告

    887

    DHCPv6符合性測試平台建置報告

    目錄 1 簡介 ....................................................................................................................... 889 2 範圍 ....................................................................................................................... 889 3 參考文件 ............................................................................................................... 889 4 定義 ....................................................................................................................... 889 5 DHCPv6運作原理 ................................................................................................ 890 6 DHCPv6符合性測試套件安裝與測試 ................................................................ 894

    6.1 軟體需求 .................................................................................................... 895 6.2 V6eval核心套件安裝 ................................................................................. 895 6.3 TN端(FreeBSD 7.0)的設定 ........................................................................ 895 6.4 NUT端(DHCPv6待測物)的設定 .............................................................. 897 6.5 DHCPv6符合性測試套件DHCPv6_Self_Test_X-X-X的設定 ................ 897 6.6 DHCPv6符合性測試 ................................................................................. 900 6.7 DHCPv6符合性測試架構 ......................................................................... 900

    6.7.1 DHCPv6客戶端(Client)測試架構 .................................................. 900 6.7.2 DHCPv6伺服器端(Server)測試架構 ............................................. 900 6.7.3 DHCPv6 Relay Agent端測試架構 .................................................. 901

    6.8 DHCPv6符合性測試必測範圍 ................................................................. 902 6.9 如何執行DHCPv6符合性測試 ................................................................ 903 6.10 檢視測試結果報表 .................................................................................. 903

    7 結論 ....................................................................................................................... 905

  • 附件二十七、DHCPv6符合性測試平台建置報告

    888

    DHCPv6符合性測試平台建置報告

    圖目錄 圖 1 DHCPv6運作模式(一).................................................................................... 890 圖 2 DHCPv6運作模式(二).................................................................................... 891 圖 3 DHCPv6訊息交換模式(一)............................................................................ 891 圖 4 DHCPv6訊息交換模式(二)............................................................................ 892 圖 5 DHCPv6一般訊息格式 .................................................................................. 892 圖 6 Client/Server訊息格式..................................................................................... 892 圖 7 Relay Agent/Server訊息格式........................................................................... 893 圖 8 DHCPv6各類型態訊息(Message Type)......................................................... 893 圖 9 DHCPv6各種Option欄位 ............................................................................... 893 圖 10 DHCPv6 Server與Client端之間傳輸參數(Transmission Parameters) ......... 894 圖 11 DHCPv6符合性測試套件軟體架構圖 ........................................................ 894 圖 12 NUT和TN的實體線路連接圖 ...................................................................... 900 圖 13 DHCPv6 Client端的測試架構圖................................................................... 900 圖 14 DHCPv6伺服器端(Server)的測試架構圖 ................................................... 901 圖 15 DHCPv6 Relay Agent的測試架構圖 ............................................................ 901 圖 16 測試結果總報表 ........................................................................................... 904 圖 17 測試結果詳細報表 ....................................................................................... 904 圖 18 典型的測試流程以及收發封包內容 ........................................................... 905 圖 19測試程序說明 ................................................................................................ 905

    表目錄 表 1 DHCPv6符合性測試必測之各種DHCPv6訊息........................................... 902 表 2 DCHPv6符合性測試DHCPv6訊息中必測之各種Option類型.................... 902

  • 附件二十、DHCPv6符合性測試平台建置報告

    889

    1 簡介

    DHCPv6 符合性測試套件主要由日本 TAHI Project 發展,由 IPv6 Ready Logo Program 免費提供全世界下載使用。DHCPv6 符合性測試工具可驗證 DHCPv6 伺服器(Server)、Relay Agent及客戶端(Client)三種角色。本測試工具可於[6]下載,目前最新版本為 v1.0.17(2009/02/25)。

    2 範圍

    本測試工具可驗證 DHCPv6 伺服器(Server)、中繼代理者(Relay Agent)及客戶端(Client)三種角色。主要測試 RFC範圍如下:

    RFC3315 - Dynamic Host Configuration Protocol for IPv6(DHCPv6) RFC3646 - DNS Configuration options for Dynamic Host Configuration Protocol for

    IPv6(DHCPv6) RFC3736 - Stateless Dynamic Host Configuration Protocol(DHCP) Service for IPv6

    3 參考文件

    [1] http://www.ipv6ready.org/about_phase2_test.html [2] http://www.ipv6ready.org/docs/Phase2_DHCPv6_Conformance_Latest.pdf [3] http://www.ipv6ready.org/docs/Phase2_DHCPv6_Interoperability_Latest.pdf [4] http://www.tahi.org/logo/dhcpv6/ [5] http://www.tahi.org/release/ [6] http://www.tahi.org/logo/dhcpv6/script/DHCPv6_Self_Test_P2_1_0_17.tgz [7] RFC3315 - Dynamic Host Configuration Protocol for IPv6(DHCPv6) [8] RFC3646 - DNS Configuration options for Dynamic Host Configuration Protocol

    for IPv6(DHCPv6) [9] RFC3736 - Stateless Dynamic Host Configuration Protocol(DHCP) Service for

    IPv6

    4 定義

    Testing Node(TN):安裝本測試工具的電腦 FreeBSD。 Testing Router(TR):測試工具模擬的路由器。 Node Under Test(NUT):待測物。

  • 附件二十七、DHCPv6符合性測試平台建置報告

    890

    Dynamic Host Configuration Protocol (DHCP):動態主機組態協定。 Identity Association(IA):身分結合 Identifier(ID):識別符 DHCP Unique Identifier (DUID):DHCP唯一識別符。 Duplicate Address Detection (DAD):位址重覆偵測。 DHCP Client:DHCP客戶端,在一個網段上啟始要求一台或多台 DHCP伺服器之

    節點,以獲得組態資訊。 DHCP Relay Agent:DHCP中繼代理者,扮演在客戶端與伺服器之間遞送 DHCP

    訊息的一種節點,它與 DHCP客戶端在相同的鏈路上。 DHCP Server:DHCP伺服器,回應 DHCP客戶端的要求之一種節點,與客戶端可

    能在同鏈路上,也可能在不同鏈路上。

    5 DHCPv6運作原理

    動態主機組態協定(Dynamic Host Configuration Protocol,DHCP),為一種客戶端與伺服器通訊協定,提供裝置管理組態資訊。DHCP 通訊協定提供由 DHCP 伺服器所指定的位址(address)和其它組態資訊給一個裝置(客戶端),載送於選項(options)中。

    DHCPv6運作模式有兩種如圖 1、圖 2。

    圖 1 DHCPv6運作模式(一)

    Client DHCPv6 Server

    IP Network

    1

    2

    Link-Local Address + Well-known multicast address

    Client DHCPv6 Server

    IP NetworkIP Network

    1

    2

    Link-Local Address + Well-known multicast address

  • 附件二十七、DHCPv6符合性測試平台建置報告

    891

    圖 2 DHCPv6運作模式(二) DHCPv6訊息交換模式有兩種如圖 3、圖 4。DHCPv6訊息交換模式(一)可指派IPv6

    位址,DHCPv6訊息交換模式(二)則不可指派IPv6位址。

    圖 3 DHCPv6訊息交換模式(一)

    Client

    DHCP ServerIP Network

    DHCPv6 Relay Agent

    12

    3

    4

    DHCPv6 Relay Agent

    Client

    DHCP ServerIP NetworkIP Network

    DHCPv6 Relay Agent

    12

    3

    4

    DHCPv6 Relay Agent

    Client Server

    Solicit

    Advertise

    Request

    Reply

    All_DHCP_Relay_Agents_and Servers

    Choose one

    Client Server

    Solicit

    Advertise

    Request

    Reply

    All_DHCP_Relay_Agents_and Servers

    Choose one

  • 附件二十七、DHCPv6符合性測試平台建置報告

    892

    圖 4 DHCPv6訊息交換模式(二) 客戶端與伺服器使用UDP來交換DHCP訊息。DHCPv4客戶端使用UDP Port 68;伺

    服器以及Relay Agent使用UDP Port 67。DHCPv6客戶端使用UDP Port 546;伺服器以及Relay Agent使用UDP Port 547。DHCPv6一般訊息格式如圖 5。

    圖 5 DHCPv6一般訊息格式 DHCPv6訊息格式,如圖 6、圖 7。

    圖 6 Client/Server訊息格式

    Client Server

    Information-Request

    Reply

    Client Server

    Information-Request

    Reply

    Data :::DHCPv6 headerUDP headerIP headerMAC header Data :::DHCPv6 headerUDP headerIP headerMAC header

    Data :::Message

    31

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    09

    08

    07

    06

    05

    04

    03

    02

    01

    00

    Data :::Message

    31

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    09

    08

    07

    06

    05

    04

    03

    02

    01

    00

    Data :::Data :::

    Variable length

    Options(variable)

    Transaction-idMessage-type

    31

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    09

    08

    07

    06

    05

    04

    03

    02

    01

    00

    Options(variable)

    Transaction-idMessage-type

    31

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    09

    08

    07

    06

    05

    04

    03

    02

    01

    00

  • 附件二十七、DHCPv6符合性測試平台建置報告

    893

    圖 7 Relay Agent/Server訊息格式 DHCPv6各類型態訊息,如圖 8。

    圖 8 DHCPv6各類型態訊息(Message Type) DHCPv6各種Option欄位,如圖 9。

    圖 9 DHCPv6各種 Option 欄位

    Options (variable number and length)

    Peer-address

    Link-addressTransaction-idMessage-type

    31

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    09

    08

    07

    06

    05

    04

    03

    02

    01

    00

    Options (variable number and length)

    Peer-address

    Link-addressTransaction-idMessage-type

    31

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    09

    08

    07

    06

    05

    04

    03

    02

    01

    00

    RELAY-REPL.RELAY-FORW.INFORMATION-REQUEST.RECONFIGURE.DECLINE.RELEASE.REPLY.REBIND.RENEW.CONFIRM.REQUEST.ADVERTISE.SOLICIT.

    Description

    RFC 331513RFC 331512RFC 331511RFC 331510RFC 33159RFC 33158RFC 33157RFC 33156RFC 33155RFC 33154RFC 33153RFC 33152RFC 33151

    ReferencesMessage

    RELAY-REPL.RELAY-FORW.INFORMATION-REQUEST.RECONFIGURE.DECLINE.RELEASE.REPLY.REBIND.RENEW.CONFIRM.REQUEST.ADVERTISE.SOLICIT.

    Description

    RFC 331513RFC 331512RFC 331511RFC 331510RFC 33159RFC 33158RFC 33157RFC 33156RFC 33155RFC 33154RFC 33153RFC 33152RFC 33151

    ReferencesMessage

    OPTION_IAPREFIX.

    OPTION_IA_PD.

    OPTION_DOMAIN_LIST.

    OPTION_DNS_SERVERS.

    OPTION_SIP_SERVER_A.

    OPTION_SIP_SERVER_D.

    OPTION_RECONF_ACCEPT.

    OPTION_RECONF_MSG.

    OPTION_INTERFACE_ID.

    OPTION_VENDOR_OPTS.

    OPTION_VENDOR_CLASS.

    OPTION_USER_CLASS.

    OPTION_RAPID_COMMIT.

    Description

    OPTION_STATUS_CODE.

    OPTION_UNICAST.

    OPTION_AUTH.

    OPTION_RELAY_MSG.

    OPTION_ELAPSED_TIME.

    OPTION_PREFERENCE.

    OPTION_ORO.

    OPTION_IAADDR.

    OPTION_IA_TA.

    OPTION_IA_NA.

    OPTION_SERVERID.

    OPTION_CLIENTID.

    Description

    RFC 3633

    RFC 3633

    RFC 3646

    RFC 3646

    RFC 3319

    RFC 3319

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    References

    26

    25

    24

    23

    22

    21

    20

    19

    18

    17

    16

    15

    14

    Option

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    References

    13

    12

    11

    10

    9

    8

    7

    6

    5

    4

    3

    2

    1

    Option

    OPTION_IAPREFIX.

    OPTION_IA_PD.

    OPTION_DOMAIN_LIST.

    OPTION_DNS_SERVERS.

    OPTION_SIP_SERVER_A.

    OPTION_SIP_SERVER_D.

    OPTION_RECONF_ACCEPT.

    OPTION_RECONF_MSG.

    OPTION_INTERFACE_ID.

    OPTION_VENDOR_OPTS.

    OPTION_VENDOR_CLASS.

    OPTION_USER_CLASS.

    OPTION_RAPID_COMMIT.

    Description

    OPTION_STATUS_CODE.

    OPTION_UNICAST.

    OPTION_AUTH.

    OPTION_RELAY_MSG.

    OPTION_ELAPSED_TIME.

    OPTION_PREFERENCE.

    OPTION_ORO.

    OPTION_IAADDR.

    OPTION_IA_TA.

    OPTION_IA_NA.

    OPTION_SERVERID.

    OPTION_CLIENTID.

    Description

    RFC 3633

    RFC 3633

    RFC 3646

    RFC 3646

    RFC 3319

    RFC 3319

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    References

    26

    25

    24

    23

    22

    21

    20

    19

    18

    17

    16

    15

    14

    Option

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    RFC 3315

    References

    13

    12

    11

    10

    9

    8

    7

    6

    5

    4

    3

    2

    1

    Option

  • 附件二十七、DHCPv6符合性測試平台建置報告

    894

    DHCPv6 Server與Client端之間傳輸參數(Transmission Parameters),如圖 10。

    圖 10 DHCPv6 Server與 Client端之間傳輸參數(Transmission Parameters)

    6 DHCPv6符合性測試套件安裝與測試

    DHCPv6符合性測試套件軟體架構圖,如圖 11。

    圖 11 DHCPv6符合性測試套件軟體架構圖 V6eval為日本 TAHI計劃所開發的 IPv6符合性測試工具之核心元件,為一模擬網

    路第二層及第三層封包以及封包收送之測試工具。此 V6eval程式庫為 IPv6 Ready Logo Phase I/Phase II Core、IPSec、MIPv6、DHCPv6的核心程式庫,架構於 FreeBSD 7.0以上以及 Perl 5.8.8,下載網址為[5]。

    IPv6 Ready Logo Phase II DHCPv6測試套件下載網址為[4]。

    Conformance Test Specifications

    V6eval

    FreeBSD 5.x/6.x

    P1, P2 Core, IPSec, MIPv6, DHCPv6

    Self-Test

    C/Perl p5-Expect

    p5-Digest-MD5P5-Digest-HMAC

    測試流程控制網路組態設定執行結果記錄測試過程封包擷取

    Layer 2, Layer 3封包模擬IPv6, ICMPv6, Ping6, Fragmentation

    Conformance Test Specifications

    V6eval

    FreeBSD 5.x/6.x

    P1, P2 Core, IPSec, MIPv6, DHCPv6

    Self-Test

    C/Perl p5-Expect

    p5-Digest-MD5P5-Digest-HMAC

    測試流程控制網路組態設定執行結果記錄測試過程封包擷取

    Layer 2, Layer 3封包模擬IPv6, ICMPv6, Ping6, Fragmentation

    Max Reconfigure attempts

    8REC_MAX_RCInitial Renew timeout10 secsREN_TIMEOUT

    Initial Decline timeout1 secDEC_TIMEOUTInitial Confirm timeout1 secCNF_TIMEOUT

    Max Decline attempts5DEC_MAX_RCMax Confirm timeout4 secsCNF_MAX_RT

    Initial Reconfigure timeout

    2 secsREC_TIMEOUTMax Confirm duration10 secsCNF_MAX_RD

    MAX Release attempts5REL_MAX_RCMax delay of first Confirm1 secCNF_MAX_DELAY

    Initial Information-request timeout

    1 secINF_TIMEOUTInitial Request timeout1 secREQ_TIMEOUT

    Max Information-request timeout value

    120 secsINF_MAX_RTMax Request timeout value

    30 secsREQ_MAX_RT

    Initial Release timeout1 secREL_TIMEOUTMax Request retry attempts

    10REQ_MAX_RC

    Max hop count in a Relay-forward message

    32HOP_COUNT_LIMITMax Renew timeout value600 secsREN_MAX_RT

    Max delay of first Information-request

    1 secINF_MAX_DELAYMax Solicit timeout value120 secsSOL_MAX_RT

    Max Rebind timeout value

    600 secsREB_MAX_RTInitial Solicit timeout1 SecSOL_TIMEOUT

    Initial Rebind timeout10 secsREB_TIMEOUTMax delay of first Solicit1 secSOL_MAX_DELAY

    DescriptionDefaultParameterDescriptionDefaultParameter

    Max Reconfigure attempts

    8REC_MAX_RCInitial Renew timeout10 secsREN_TIMEOUT

    Initial Decline timeout1 secDEC_TIMEOUTInitial Confirm timeout1 secCNF_TIMEOUT

    Max Decline attempts5DEC_MAX_RCMax Confirm timeout4 secsCNF_MAX_RT

    Initial Reconfigure timeout

    2 secsREC_TIMEOUTMax Confirm duration10 secsCNF_MAX_RD

    MAX Release attempts5REL_MAX_RCMax delay of first Confirm1 secCNF_MAX_DELAY

    Initial Information-request timeout

    1 secINF_TIMEOUTInitial Request timeout1 secREQ_TIMEOUT

    Max Information-request timeout value

    120 secsINF_MAX_RTMax Request timeout value

    30 secsREQ_MAX_RT

    Initial Release timeout1 secREL_TIMEOUTMax Request retry attempts

    10REQ_MAX_RC

    Max hop count in a Relay-forward message

    32HOP_COUNT_LIMITMax Renew timeout value600 secsREN_MAX_RT

    Max delay of first Information-request

    1 secINF_MAX_DELAYMax Solicit timeout value120 secsSOL_MAX_RT

    Max Rebind timeout value

    600 secsREB_MAX_RTInitial Solicit timeout1 SecSOL_TIMEOUT

    Initial Rebind timeout10 secsREB_TIMEOUTMax delay of first Solicit1 secSOL_MAX_DELAY

    DescriptionDefaultParameterDescriptionDefaultParameter

  • 附件二十七、DHCPv6符合性測試平台建置報告

    895

    6.1 軟體需求

    DHCPv6符合性測試套件須需安裝於 FreeBSD 7.0以上以及 Perl 5.8.8以上。另須安裝 Perl5套件模組:Expect、IO-Stty、IO-Tty、Digest-MD5、Digest-HMAC,安裝前必須先連上 Internet,以便抓取 Perl 其他未安裝模組,安裝完後請移除 DNS 設定/etc/resolv.conf。

    Perl5套件模組安裝步驟如下: cd /usr/ports/lang/p5-Expect make make install cd /usr/ports/security/p5-Digest-MD5 make make install cd /usr/ports/security/p5-Digest-HMAC (DHCPv6 only) make make install

    6.2 V6eval核心套件安裝

    V6eval核心套件可於[5]下載,安裝步驟如下: % tar zxvf v6eval-3.1.0.tar.gz % cd v6eval-3.1.0 % make # make install

    V6eval核心套件安裝於/usr/local/v6eval目錄。

    6.3 TN端(FreeBSD 7.0)的設定

    測試 DHCPv6 Server/Client時,僅須啟動一張網路界面;測試 DHCPv6 Relay Agent則須啟動兩張網路界面。可安裝 IPv6功能,但測試時關閉 IPv6功能。移除 DNS設定,亦即移除/etc/resolv.conf。移除 IPv4 預設路由、IPv6預設路由以及 IPv6靜態路由。移除 IPv4位址、關閉 routing daemon以及關閉 RA daemon。

    編輯/etc/rc.conf

    ipv6_enable=“NO” ifconfig_rl0=“up” ifconfig_rl1=“up” (若 NUT為一 Relay Agent) devfs_system_ruleset=“devfsrules_unhide_bpf” (Make bpf special device)

  • 附件二十七、DHCPv6符合性測試平台建置報告

    896

    編輯/etc/devfs.rules (For FreeBSD 5.x/6.x/7.x release)

    [devfsrules_unhide_bpf=1025] add path ‘bpf0’ user root group wheel mode 0660 unhide add path ‘bpf1’ user root group wheel mode 0660 unhide add path ‘bpf2’ user root group wheel mode 0660 unhide add path ‘bpf3’ user root group wheel mode 0660 unhide add path ‘bpf4’ user root group wheel mode 0660 unhide add path ‘bpf5’ user root group wheel mode 0660 unhide add path ‘bpf6’ user root group wheel mode 0660 unhide add path ‘bpf7’ user root group wheel mode 0660 unhide

    編輯/etc/group,需有 wheel。

    wheel

    編輯/usr/local/v6eval/etc/tn.def RemoteDevice cuaa0

  • 附件二十七、DHCPv6符合性測試平台建置報告

    897

    6.4 NUT端(DHCPv6待測物)的設定

    測試 DHCPv6 Server/Client時,僅須啟動一張網路界面;測試 DHCPv6 Relay Agent則須啟動兩張網路界面,並啟動繞送 IPv6 封包功能。須具備 IPv6 功能,測試時啟動IPv6功能。移除 DNS設定,亦即移除/etc/resolv.conf。移除 IPv4 預設路由、IPv6預設路由以及 IPv6靜態路由。移除 IPv4位址、關閉 routing daemon以及關閉 RA daemon。

    編輯/etc/rc.conf for DHCPv6 Server/Client

    ipv6_enable="YES" ifconfig_fxp0="up" ipv6_network_interfaces="fxp0" ipv6_default_interface="fxp0"

    編輯/etc/rc.conf for DHCPv6 Relay Agent

    ipv6_enable="YES" ipv6_gateway_enable="YES" ifconfig_fxp0="up" ifconfig_fxp1="up" ipv6_network_interfaces="fxp0 fxp1" ipv6_default_interface="fxp0" ipv6_prefix_fxp0="3ffe:501:ffff:100" ipv6_prefix_fxp1="3ffe:501:ffff:101"

    6.5 DHCPv6符合性測試套件 DHCPv6_Self_Test_X-X-X的設定

    執行 DHCPv6符合性測試之前,需在 TN安裝 V6eval 3.1.0以上的版本。 在 TN 端 (FreeBSD 7.0)將下載的 DHCPv6_Self_Test_X-X-X.tgz 解壓縮於

    $YOURDIR。 cd $YOURDIR tar zxvf DHCPv6_Self_Test_X-X-X.tgz cd DHCPv6_Self_Test_X-X-X $cp remote/manual/* /usr/local/v6eval/bin/manual/

    編輯 DHCPv6_Self_Test_X-X-X/config.txt內容如下:

    #----------------------------------------------------------------------# # Configure the advanced functionalities support # #----------------------------------------------------------------------#

  • 附件二十七、DHCPv6符合性測試平台建置報告

    898

    #----------------------------------------------------------------------# # Following is 3 main Advanced functionalities of DHCPv6 Logo # #----------------------------------------------------------------------# # # support Addrss assignment by DHCPv6 # zero - NUT does not support # non-zero - NUT supports # $Address_assignment = 1; # # support DNS configuration in parallel with Address Assignment by DHCPv6 # zero - NUT does not support # non-zero - NUT supports # $DNS_configuration = 1; # # support Stateless DHCPv6 for DNS configuration by DHCPv6 # zero - NUT does not support # non-zero - NUT supports # $Stateless_DHCPv6 = 1; #----------------------------------------------------------------------# # Following is Advanced functionalities of DHCPv6 Logo # #----------------------------------------------------------------------# # # support Interface-ID option (for Server and Relay agent) # zero - NUT does not support # non-zero - NUT supports # $Support_InterfaceID = 1; #----------------------------------------------------------------------# # Following is necessary configuration of DHCPv6 Logo test # #----------------------------------------------------------------------#

  • 附件二十七、DHCPv6符合性測試平台建置報告

    899

    # # DUID configuration (for Clinet, Server and Relay agent) # It is required to select one DUID type from following. # zero - NUT does not support # non-zero - NUT supports # $Support_DUID_LLT = 1; $Support_DUID_EN = 0; $Support_DUID_LL = 0; # # Initial RA configuration (for Clinet and Server) # zero - TR doesn't send a RA # non-zero - TR sends a RA w/ or w/o M and/or O bit for initialization of NUT # $Send_Initial_RA =1; #----------------------------------------------------------------------# # Following is optional configuration of DHCPv6 Logo test # #----------------------------------------------------------------------# #You may want to config the transmission and retransmission parameters. #If you want to modify these parameters, #you could config in DHCPv6_common.pm("#RFC3315 recommanded constants" part ) file. #But we strongly recommend that you don't modify this part. #While in this test, you should use the default values in RFC3315. return 1;

  • 附件二十七、DHCPv6符合性測試平台建置報告

    900

    6.6 DHCPv6符合性測試

    TN(FreeBSD 7.0)和NUT(DHCPv6待測物)的實體線路連接圖,如圖 12。

    圖 12 NUT和 TN的實體線路連接圖

    6.7 DHCPv6符合性測試架構

    6.7.1 DHCPv6客戶端(Client)測試架構

    DHCPv6客戶端(Client)的測試架構如圖 13所示。

    圖 13 DHCPv6 Client端的測試架構圖

    6.7.2 DHCPv6伺服器端(Server)測試架構

    DHCPv6伺服器端(Server)的測試架構如圖 14所示。

    Link 0

    TN

    Link 1

    Ethernet0.0

    FastEthernet0.0MAC = 00:30:13:16:d8:a5IPv6 = 3ffe:501:ffff:101:0230:13ff:fe16:d8a5/64

    Prefix = 3ffe:501:ffff:100/64

    Prefix = 3ffe:501:ffff:101/64

    Don’t use switchbetween Tester and NUTfor ip spoofing avoidance

    Router test only

    NUTRS232

    Link 0

    TN

    Link 1

    Ethernet0.0

    FastEthernet0.0MAC = 00:30:13:16:d8:a5IPv6 = 3ffe:501:ffff:101:0230:13ff:fe16:d8a5/64

    Prefix = 3ffe:501:ffff:100/64

    Prefix = 3ffe:501:ffff:101/64

    Don’t use switchbetween Tester and NUTfor ip spoofing avoidance

    Router test only

    NUTRS232

  • 附件二十七、DHCPv6符合性測試平台建置報告

    901

    圖 14 DHCPv6伺服器端(Server)的測試架構圖

    6.7.3 DHCPv6 Relay Agent端測試架構

    DHCPv6 Relay Agent的測試架構如圖 15所示。

    圖 15 DHCPv6 Relay Agent的測試架構圖

  • 附件二十七、DHCPv6符合性測試平台建置報告

    902

    6.8 DHCPv6符合性測試必測範圍

    DHCPv6 符合性測試必測之各種DHCPv6 訊息,如 表 1。DCHPv6 符合性測試DHCPv6訊息中必測之各種Option類型,如表 2。其中Server表示DHCPv6伺服器必測之訊息,Client表示DHCPv6客戶端必測之訊息,Relay Agent表示DHCPv6 Relay Agent必測之訊息。

    表 1 DHCPv6符合性測試必測之各種 DHCPv6訊息

    Message Type Address Assignment

    DNS configuration in parallel with Address Assignment

    Stateless DHCPv6 for DNS configuration

    Solicit Server/Client Server/Client none Advertise Server/Client Server/Client none Request Server/Client Server/Client none Reply Server/Client Server/Client Server/Client Confirm Server/Client Server/Client none Renew Server/Client Server/Client none Rebind Server/Client Server/Client none Decline Server/Client Server/Client none Release Server/Client Server/Client none Reconfigure omit in first release omit in first release none Information-request none none Server/Client Relay-forward Server/Relay agent Server/Relay agent Server/Relay agent Relay-reply Server/Relay agent Server/Relay agent Server/Relay agent

    表 2 DCHPv6符合性測試 DHCPv6訊息中必測之各種 Option 類型

    Option Type Address assignmentDNS configuration in parallel with Address Assignment

    Stateless DHCPv6 for DNS configuration

    CLIENTID Server/Client Server/Client omit SERVERID Server/Client Server/Client Server/Client IA_NA Server/Client Server/Client none IA_TA omit omit none IAADDR Server/Client Server/Client none ORO none Server/Client Server/Client PREFERENCE omit omit none

  • 附件二十七、DHCPv6符合性測試平台建置報告

    903

    ELAPSED_TIME Server/Client Server/Client none

    RELAY_MSG Server/Relay agent Server/Relay agent Server/Relay agent

    AUTH omit in first release omit in first release none UNICAST omit omit none STATUS_CODE Server/Client Server/Client Server/Client RAPID_COMMIT omit omit none USER_CLASS Not tested Not tested Not tested VENDOR_CLASS Not tested Not tested Not tested VENDOR_OPTS Not tested Not tested Not tested INTERFACE_ID optional optional optional RECONF_MSG omit in first release omit in first release none RECONF_ACCEPT omit in first release omit in first release none DNS Recursive Name List

    none Server/Client Server/Client

    DNS Search List none Server/Client Server/Client

    6.9 如何執行 DHCPv6符合性測試

    執行步驟如下: cd $YOURDIR/DHCPv6_Self_Test_P2_1_0_17/ make clean make ipv6ready_p2_client (DHCPv6客戶端 Client) make ipv6ready_p2_server (DHCPv6伺服器端 Server) make ipv6ready_p2_relay (DHCPv6 Relay Agent)

    執行局部某幾項測試 make AROPT=”-s -e ” ipv6ready_p2_client (DHCPv6客戶端 Client) make AROPT=”-s -e ” ipv6ready_p2_server (DHCPv6伺服器端 Server) make AROPT=”-s -e ” ipv6ready_p2_relay (DHCPv6 Relay Agent) (:為測試起始編號,:為測試結束編號)

    6.10 檢視測試結果報表

    執 行 完 測 試 之 後 , 可 檢 視 測 試 結 果 總 報 表 :

    $YOURDIR/DHCPv6_Self_Test_P2_1_0_17/index.html,如圖 16所示。報告皆以HTML格式顯示,圖 17為測試結果詳細報表,左邊為測試統計結果,右邊為測試項目列表,並以黑色字體代表”PASS”,綠色字體代表”Not Yet Supported”,紅色字體代表”FAIL”。按下Log欄的”X”可顯示該項測試的詳細測試內容,包括TN和NUT在測試過程中所發出

  • 附件二十七、DHCPv6符合性測試平台建置報告

    904

    的封包解析,如圖 18。 按下每個測試項目的超連結,如 圖 19 所示,詳述在正常的情形之下,正確的測

    試程序、哪些封包應該被傳送以及封包的正確內容。測試者可比較測試時出現的錯誤

    封包或封包流程。網頁下方之”JUDGEMENT”會說明判斷的標準是根據哪一篇RFC的第幾章節。

    圖 16 測試結果總報表

    圖 17 測試結果詳細報表

  • 附件二十七、DHCPv6符合性測試平台建置報告

    905

    圖 18 典型的測試流程以及收發封包內容

    圖 19測試程序說明

    7 結論

    DHCP 為網路佈建重要的通訊協定。PPPoE 通訊協定僅能取得一 Link-Local IPv6位址,須另行搭配 Router Advertisement(RA)(Stateless 自動定址)或是 DHCPv6(Stateful自動定址)。DHCPv6通訊協定額外的優點是可以將 DNS位址帶給客戶端。

  • 附件二十七、DHCPv6符合性測試平台建置報告

    906

    1 簡介2 範圍3 參考文件4 定義5 DHCPv6運作原理6 DHCPv6符合性測試套件安裝與測試6.1 軟體需求6.2 V6eval核心套件安裝6.3 TN端(FreeBSD 7.0)的設定6.4 NUT端(DHCPv6待測物)的設定6.5 DHCPv6符合性測試套件DHCPv6_Self_Test_X-X-X的設定6.6 DHCPv6符合性測試6.7 DHCPv6符合性測試架構6.7.1 DHCPv6客戶端(Client)測試架構6.7.2 DHCPv6伺服器端(Server)測試架構6.7.3 DHCPv6 Relay Agent端測試架構

    6.8 DHCPv6符合性測試必測範圍6.9 如何執行DHCPv6符合性測試6.10 檢視測試結果報表

    7 結論