12
Spirent TestCenter DHCPv6 AppNote Application Note Executive summary 2 Overview of DHCPv6 2 Using Spirent TestCenter with DHCPv6 2 Test case– DHCPv6 Relay Agent Interface-ID and Remote-ID support 3 Overview 3 Objective 3 Test setup 3 Configuring the test 4 Executing the test 9 Analyzing the results 10 Troubleshooting 11 Acronyms 12

Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

  • Upload
    lybao

  • View
    238

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

Spirent TestCenterDHCPv6 AppNote

Application Note

Executive summary� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �2

Overview of DHCPv6 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �2

Using Spirent TestCenter with DHCPv6 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �2

Test case– DHCPv6 Relay Agent Interface-ID and Remote-ID support � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �3

Overview� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �3

Objective� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �3

Test setup � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �3

Configuring the test� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �4

Executing the test � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 9

Analyzing the results � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 10

Troubleshooting� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 11

Acronyms � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 12

Page 2: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

2 | spirent�com

Application Note

Executive summaryThis document provides an overview of Dynamic Host Configuration Protocol for IPv6 (DHCPv6) and describes what use cases can be validated and

how can be validated by Spirent TestCenter, helps you be familiar with DHCPv6 and major testing methodologies�

The target audience of this document is system test, integration test and product development engineers who need to use Spirent TestCenter�

Overview of DHCPv6The Dynamic Host Configuration Protocol for IPv6 (DHCPv6) enables DHCPv6 servers to pass configuration parameters such as IPv6 network

addresses to IPv6 nodes� It offers the capability of automatic allocation of reusable network addresses and additional configuration flexibility� This

protocol can be used separately or concurrently with the latter to obtain configuration parameters� DHCPv6 Relay Agent is an Internet host or router

that passes DHCPv6 message between DHCPv6 client and DHCPv6 Server�

The above diagram displays a basic DHCPv6 process:

� DHCPv6 client sends a DHCPv6SOLICIT multicast message to locate a DHCPv6 server�

� A DHCPv6 server on the local subnet offers configuration parameters, including an IPv6 address to the client in a DHCPv6ADVERTISE unicast

message�

� The DHCPv6 client returns a formal request for the offered IPv6 address to the server in DHCPv6REQUEST multicast message�

� The DHCPv6 server confirms that the IPv6 address has actually been located for use by the client by returning the final DHCPv6REPLY unicast

message�

Relevant Standards

RFC3315 Dynamic Host Configuration Protocol for IPv6 (DHCPv6)

RFC4649 Dynamic Host Configuration Protocol for IPv6 (DHCPv6) Relay Agent Remote-ID Option

Using Spirent TestCenter with DHCPv6Spirent TestCenter provides solution to test DHCPv6 based on following test point:

� DHCPv6 message and state machine� Spirent TestCenter can simulate DHCPv6 client, DHCPv6 relay agent and DHCPv6 server, which sends

and receives DHCPv6 messages� On receiving DHCPv6 messages, Spirent TestCenter DHCPv6 device switches state according to DHCPv6

standard�

� DHCPv6 options� DHCPv6 behavior can be extended by DHCPv6 options� Spirent TestCenter supports pre-defined DHCPv6 options and

DHCPv6 custom options, by which user can configure most DHCPv6 option on Spirent TestCenter DHCPv6 device�

� DHCPv6 address assignment� Spirent TestCenter DHCPv6 server provides multiple strategies on assigning IP addresses�

� DHCPv6 scalability test� DHCPv6 server usually provides DHCPv6 service to multiple DHCPv6 clients� The performance of DHCPv6 server needs

to be measured to ensure its service quality�

Page 3: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

spirent�com | 3

Test case– DHCPv6 Relay Agent Interface-ID and Remote-ID supportOverview

DHCPv6 Relay agents are used to forward request and reply between clients and servers when they are not on the same physical subnet� In all cases,

the DHCPv6 relay agent must be able to communicate directly with both the DHCPv6 server and DHCPv6 client� By using the relay agent information

option (Option 18 and 37), the DHCPv6 relay agent can include additional information about itself when forwarding client-originated DHCPv6 packets

to a DHCPv6 server�

� DHCPv6 Interface-ID (Option18):

The relay agent may send the Interface-id option to identify the interface on which the client message was received� If a relay agent receives a

Relay-reply message with an Interface-id option, the relay agent relays the message to the client through the interface identified by the option�

The server must copy the Interface-Id option from the Relay-Forward message into the Relay-Reply message the server sends to the relay agent

in response to the Relay-Forward message� This option must not appear in any message except a Relay-Forward or Relay-Reply message�

� DHCPv6 Remote-ID (Option37):

Relay agent processes within the network infrastructure receive multicast messages from clients and relay them to DHCPv6 servers� In some

network environments, it will be useful for the relay agent to add information to the DHCPv6 message before relaying it�

Objective

For this test case, DUT works as DHCPv6 server� Spirent TestCenter port simulates client & relay agent and send DHCPv6 message with pre-

configured DHCPv6 Interface-ID option and DHCPv6 Remote-ID option� DUT as DHCPv6 server is expected to process Interface-ID and Remote-ID

based on its local policy and assign address back to relay agent�

Test setup

The topology of this test case is pretty simple: a DHCPv6 relay agent directly connects to a DHCPv6 server� The DHCPv6 relay agent is simulated by

Spirent TestCenter devices� DHCPv6 server is a DUT to provide DHCPv6 service for DHCPv6 relay agent�

DUT

DHCPv6Relay Agent

DHCPv6Server

Spirent TestCenter

Page 4: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

4 | spirent�com

Application Note

Configuring the test

The following steps descript the procedure for performing the test�

1. Create DHCPv6 Relay Agent device on Spirent TestCenter port.

1�1 Launch “Create Device” wizard by click “Add” button on device configuration panel� After “Select Ports”, choose “Access” in “Protocol

Technologies”, enable “DHCPv6 Relay Agent” and finish the wizard�

Figure 1. Create DHCPv6 relay agent

Page 5: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

spirent�com | 5

1�2 Set VLAN count on your device in this page:

Figure 2. Set VLAN Count

Page 6: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

6 | spirent�com

Application Note

1�3 Set Relay Agent “IPv6 address” “IPv6 gateway” and “Link Local”, Agent and Server must set different Link Local address�

Figure 3. Set Relay Agent Basic Parameter

Page 7: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

spirent�com | 7

1�4 Enable Interface-ID Remote-ID and set value�

Figure 4. Set Interface-ID and Remote-ID in wizard

Page 8: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

8 | spirent�com

Application Note

1�5 Preview device configuration�

Figure 5. Preview device configuration

1�6 Relay Agent device create done�

Figure 6. Device Create Done

Page 9: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

spirent�com | 9

2. Configure Relay Agent device

2�1 Change “Device Count” of Host to 2 , now we have 2 DHCPv6 subscribers

Figure 7. Change Host Count

2�2 Configure DHCPv6 Interface-ID and Remote-ID on Relay Agent device, click “Enable Relay Agent Interface ID” set “Relay Agent Interface

ID” value is “SPIRENT@s” then click “Enable Relay Agent Remote ID” set “Relay Agent Remote ID Enterprise Number” value is “3456”

and set “Relay Agent Remote ID” value is “SPIRENT@s”� To do this , Spirent TestCenter would add option18 and option37 for two DHCPv6

subscribers are “SPIRENT0” and “SPIRENT1”

Figure 8. Change Interface-ID and Remote-ID Value on Device

Executing the test

Bind DHCPv6 Relay Agent

Figure 9. Start Relay Agent Device

Page 10: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

10 | spirent�com

Application Note

Analyzing the results

After DHCPv6 relay agent reaching “Bound” state, check session results� There are two DHCPv6 sessions go to “Bound” state and the IPv6 address is

got from relay agent pool:

Figure 10. DHCPv6 Result View

Figure 11. Session-info Result

Page 11: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

spirent�com | 11

Troubleshooting

1� Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t Bound , please

verify the Interface-ID or Remote-ID value on Relay Agent and DHCPv6 sever device , Interface-ID and Remote-ID MUST match�

2� How to choose prefix pool or address pool for Relay Agent Bound� You can add a “Additional Pool” in “DHCPv6 Server” label and add many

prefix pool or address pool set the Interface-ID or Remote-ID to different value�

Figure 12. Server Additional Pool

Page 12: Spirent TestCenter · spirent com | 11 Troubleshooting 1 Why DHCPv6 Relay Agent can’t BOUND when client or server device enable Interface-ID or Remote-ID ? If the client couldn’t

© 2016 Spirent. All Rights Reserved.

All of the company names and/or brand names and/or product names referred to in this document, in particular, the name “Spirent”

and its logo device, are either registered trademarks or trademarks of Spirent plc and its subsidiaries, pending registration in

accordance with relevant national laws. All other registered trademarks or trademarks are the property of their respective owners.

The information contained in this document is subject to change without notice and does not represent a commitment on the part

of Spirent. The information in this document is believed to be accurate and reliable; however, Spirent assumes no responsibility or

liability for any errors or inaccuracies that may appear in the document. Rev A | 06/16

Spirent TestCenterDHCPv6 AppNote

spirent.com

AMERICAS 1-800-SPIRENT +1-800-774-7368 | [email protected]

EUROPE AND THE MIDDLE EAST +44 (0) 1293 767979 | [email protected]

ASIA AND THE PACIFIC +86-10-8518-2539 | [email protected]

Application Note

Acronyms

BOOTP Bootstrap Protocol

DHCP Dynamic Host Configuration Protocol

DUT Device Under Test

MPLS Multiprotocol Label Switching

TCP/IP Transmission Control Protocol/Internet Protocol

VLAN Virtual Local Area Network