RRRelease.seq - Requesting Router has released delegated prefix
Router for DHCP client
RRRelease.seq [-tooloption ...] -pkt RRRelease.def -tooloption : v6eval tool option
TN
| ISP site
--+----+--------------- Link0
|
NUT Host
| | Customer site
-------+-------+------- Link1 3ffe:501:fff3:XXXX::/64
TN |
Link-local |
fe80::200:ff:fe00:a0a0 |
Ether |
00:00:00:00:a0:a0 |
Delegate Prefix |
3ffe:501:fff3:: |
Prefix Length |
48 |
Host |
Link-local |
fe80::200:ff:fe00:101 |
ether |
00:00:00:00:01:01 |
- NUT sets up Prefix Delegation.
- NUT sets up Router Advertisement to the interface by the side of downstream.
Tester as Server Target as Client Tester as Host
| | |
|<--------------------------| |
| DHCP Solicit message | |
| | |
|-------------------------->| |
| DHCP Advertise message | |
| | |
|<--------------------------| |
| DHCP Request message | |
| | |
|-------------------------->| |
| DHCP Reply message | |
| | |
1. Wait DHCP Solicit message
2. Send DHCP Advertise message
3. Wait DHCP Request message
4. Send DHCP Reply message
Addresses
Solicit, Request messages
Src |
NUT link-local address |
Dst |
All_DHCP_Relay_Agents_and_Servers |
All_DHCP_Relay_Agents_and_Servers FF02::1:2
Advertise, Reply message
Src |
fe80::200:ff:fe00:a0a0 |
Dst |
NUT link-local address |
UDP Ports
Clients listen for DHCP messages on UDP port 546
Server listen for DHCP messages on UDP port 547
DHCP Messages
DHCP Solicit message
msg-type |
SOLICIT(1) |
transaction-id |
The transaction ID for this message exchange |
options |
Client Identifier Option (MUST) |
IA_PD Option (MUST) |
|
Code |
33 (TBD) |
|
IAID |
The unique identifier which client specified |
|
T1 |
ANY |
|
T2 |
ANY |
Elapsed Time Option (MUST) |
|
elapsed-time |
ANY |
Option Request Option (Optional) |
DHCP Advertise message
msg-type |
ADVERTISE(2) |
transaction-id |
The same transaction ID previous message |
options |
Client Identifier Option |
Server Identifier Option |
|
DUID Contents type |
1 Link-layer address plus time |
|
hardware type |
1 Ether |
|
time |
Time which the server included |
|
link-layer address |
00:00:00:00:a0:a0 |
IA_PD Option |
|
Code |
33 (TBD) |
|
IAID |
Unique identifier which client specified |
|
T1 |
40 |
|
T2 |
64 |
|
IA_PD Prefix Option |
|
|
Code |
34 (TBD) |
|
|
preferred-lifetime |
80 |
|
|
valid-lifetime |
120 |
|
|
prefix-length |
48 |
|
|
IPv6 prefix |
3ffe:501:fff3:: |
DHCP Request message with IA_PD option
msg-type |
REQUEST(3) |
transaction-id |
The transaction ID for this message exchange |
options |
Client Identifier Option (MUST) |
Server Identifier Option (MUST) |
|
DUID Contents type |
1 Link-layer address plus time |
|
hardware type |
1 Ether |
|
time |
Time which the server included |
|
link-layer address |
00:00:00:00:a0:a0 |
IA_PD Option (MUST) |
|
Code |
33 (TBD) |
|
IAID |
Unique identifier which client specified |
|
T1 |
ANY |
|
T2 |
ANY |
|
IA_PD Prefix Option (Optional) |
|
|
Code |
34 (TBD) |
|
|
preferred-lifetime |
ANY |
|
|
valid-lifetime |
ANY |
|
|
prefix-length |
48 |
|
|
IPv6 prefix |
3ffe:501:fff3:: |
Elapsed Time Option (MUST) |
|
elapsed-time |
ANY |
Option Request Option (Optional) |
DHCP Reply message with IA_PD option including IA_Prefix option
msg-type |
REPLY(7) |
transaction-id |
The same transaction ID previous message |
options |
Client Identifier Option |
Server Identifier Option |
|
DUID Contents type |
1 Link-layer address plus time |
|
hardware type |
1 Ether |
|
time |
Time which the server included |
|
link-layer address |
00:00:00:00:a0:a0 |
IA_PD Option |
|
Code |
33 (TBD) |
|
IAID |
Unique identifier which client specified |
|
T1 |
40 |
|
T2 |
64 |
|
|
Code |
34 (TBD) |
|
|
preferred-lifetime |
80 |
|
|
valid-lifetime |
120 |
|
|
prefix-length |
48 |
|
|
IPv6 prefix |
3ffe:501:fff3:: |
Tester as PE Target as CPE Tester as client
| | |
| Stop dhcp process to | |
| release delegated prefix | |
| | |
|<--------------------------| |
| Judgment #1 | |
| DHCP Release message | |
| | |
|-------------------------->| |
| DHCP Reply message | |
| w/ Status Code: Success | |
| | |
| : | |
| Wait REL_TIMEOUT passed | |
| : | |
| | |
|<--------------------------| |
| Judgment #2 | |
| No DHCP Release message | |
| | |
| | |
| |<--------------------------|
| | Router Solicitation |
| | |
| |(------------------------> |
| | Judgment #3 |
| | No Router Advertisement |
| | or |
| | Router Advertisement |
| | with ValidLifetime 0 |
| | |
v v
1. Wait DHCP Release message
2. Send DHCP Reply message with Status Code option including status sode Success
3. No DHCP Release message
5. Send Router Solicitation
6. No Router Advertisement or wait Router Advertisement with ValidLifetime zero
Addresses
Release message
Src |
NUT link-local address |
Dst |
All_DHCP_Relay_Agents_and_Servers |
All_DHCP_Relay_Agents_and_Servers FF02::1:2
Reply message
Src |
fe80::200:ff:fe00:a0a0 |
Dst |
NUT link-local address |
UDP Ports
Clients listen for DHCP messages on UDP port 546
Server listen for DHCP messages on UDP port 547
DHCP Messages
DHCP Release message with IA_PD option including IA_PD Prefix option
msg-type |
RELEASE(8) |
transaction-id |
The transaction ID for this message exchange |
options |
Client Identifier Option (MUST) |
Server Identifier Option (MUST) |
|
DUID Contents type |
1 Link-layer address plus time |
|
hardware type |
1 Ether |
|
time |
Time which the server included |
|
link-layer address |
00:00:00:00:a0:a0 |
IA_PD Option (MUST) |
|
Code |
33 (TBD) |
|
IAID |
Unique identifier which client specified |
|
T1 |
ANY |
|
T2 |
ANY |
|
IA_PD Prefix Option (MUST) |
|
|
Code |
34 (TBD) |
|
|
Code |
34 (TBD) |
|
|
preferred-lifetime |
ANY |
|
|
valid-lifetime |
ANY |
|
|
prefix-length |
48 |
|
|
IPv6 prefix |
3ffe:501:fff3:: |
Elapsed Time Option (MUST) |
|
elapsed-time |
ANY |
DHCP Reply message with Status Code option including status code Success
msg-type |
REPLY(7) |
transaction-id |
The same transaction ID previous message |
options |
Client Identifier Option |
Server Identifier Option |
|
DUID Contents type |
1 Link-layer address plus time |
|
hardware type |
1 Ether |
|
time |
Time which the server included |
|
link-layer address |
00:00:00:00:a0:a0 |
IA_PD Option |
|
Code |
33 (TBD) |
|
IAID |
Unique identifier which client specified |
|
T1 |
0 |
|
T2 |
0 |
|
|
Code |
34 (TBD) |
|
|
preferred-lifetime |
0 |
|
|
valid-lifetime |
0 |
|
|
prefix-length |
48 |
|
|
IPv6 prefix |
3ffe:501:fff3:: |
Status Code Option |
|
status-code |
0 Success |
|
status-message |
0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56 |
1. DHCP Release message is recieved
2. DHCP Release message is not recieved once again.
3. Router Advertisement is not recieved, or Router Advertisement is recieved with ValidLifetime zero
N/A
draft-ietf-dhc-dhcpv6-opt-prefix-delegation-01.txt
11. Requesting router initiated prefix delegation
A requesting router uses the same message exchanges as described in
section "DHCP Client-Initiated Configuration Exchange" of the DHCP
specification [6] to obtain or update prefix(es) from a delegating
router. The requesting router and the delegating router use the
IA_PD Prefix option to exchange information about prefix(es) in much
the same way IA Address options are used for assigned addresses.
11.1 Requesting router behaviour
The requesting router uses a Release message to return a delegated
prefix to a delegating router. The prefixes to be released MUST be
included in the IA_PDs.
draft-ietf-dhc-dhcpv6-28.txt
14. Reliability of Client Initiated Message Exchanges
see the retransmission mechanism
15. Message Validation
15.9. Release Message
Clients MUST discard any received Release messages.
Servers MUST discard any received Release message that fails to meet
any of the following conditions:
- the message MUST include a Server Identifier option
- the contents of the Server Identifier option MUST match the
server's identifier
- the message MUST include a Client Identifier option
18. DHCP Client-Initiated Configuration Exchange
18.1. Client Behavior
A client uses Request, Renew, Rebind, Release and Decline messages
during the normal life cycle of addresses. It uses Confirm to
validate addresses when it may have moved to a new link. It uses
Information-Request messages when it needs configuration information
but no addresses.
If the client has a source address of sufficient scope that can be
used by the server as a return address and the client has received
a Server Unicast option (section 22.12) from the server, the client
SHOULD unicast any Request, Renew, Release and Decline messages to
the server.
DISCUSSION:
Use of unicast may avoid delays due to relaying of messages
by relay agents as well as avoid overhead and duplicate
responses by servers due to delivery of client messages to
multiple servers. Requiring the client to relay all DHCP
messages through a relay agent enables the inclusion of
relay agent options in all messages sent by the client. The
server should enable the use of unicast only when relay
agent options will not be used.
18.1.6. Creation and Transmission of Release Messages
To release one or more addresses, a client sends a Release message to
the server.
The client sets the "msg-type" field to RELEASE. The client generates
a transaction ID and places this value in the "transaction-id" field.
The client places the identifier of the server that allocated the
address(es) in a Server Identifier option.
The client MUST include a Client Identifier option to identify itself
to the server. The client includes options containing the IAs for
the addresses it is releasing in the "options" field. The addresses
to be released MUST be included in the IAs. Any addresses for the
IAs the client wishes to continue to use MUST NOT be in added to the
IAs.
The client MUST NOT use any of the addresses it is releasing as
the source address in the Release message or in any subsequently
transmitted message.
Because Release messages may be lost, the client should retransmit
the Release if no Reply is received. However, there are scenarios
where the client may not wish to wait for the normal retransmission
timeout before giving up (e.g., on power down). Implementations
SHOULD retransmit one or more times, but MAY choose to terminate the
retransmission procedure early.
The client transmits the message according to section 14, using the
following parameters:
IRT REL_TIMEOUT
MRT 0
MRC REL_MAX_MRC
MRD 0
The client MUST stop using all of the addresses being released as
soon as the client begins the Release message exchange process. If
addresses are released but the Reply from a DHCP server is lost,
the client will retransmit the Release message, and the server may
respond with a Reply indicating a status of NoBinding. Therefore,
the client does not treat a Reply message with a status of NoBinding
in a Release message exchange as if it indicates an error.
Note that if the client fails to release the addresses, each address
assigned to the IA will be reclaimed by the server when the valid
lifetime of that address expires.
18.1.8. Receipt of Reply Messages
When the client receives a valid Reply message in response to a
Release message, the client considers the Release event completed,
regardless of the Status Code option(s) returned by the server.
5.5. Transmission and Retransmission Parameters
This section presents a table of values used to describe the message
transmission behavior of clients and servers.
Parameter Default Description
-------------------------------------
REL_TIMEOUT 1 sec Initial Release timeout
REL_MAX_RC 5 MAX Release attempts
24.2. DHCP Message Types
IANA is requested to record the following message types (defined
in section 5.3). IANA is requested to maintain a registry of DHCP
message types.
RELEASE 8
A. Appearance of Options in Message Types
The following table indicates with a "*" the options are allowed in
each DHCP message type:
Status Rap. User Vendor Vendor Inter. Recon. Recon.
Code Comm. Class Class Spec. ID Msg. Accept
Release * * *
perldoc V6evalTool