RRAdvertisedPreference.seq - Requesting Router chooses PE based on preference value of Preference option
Router for DHCP client
RRAdvertisedPreference.seq [-tooloption ...] -pkt RRAdvertisedPreference.def -tooloption : v6eval tool option
TN TN1 TN2
| | | ISP site
--+----+---+---+------- Link0
|
NUT Host
| | Customer site
-------+-------+------- Link1 3ffe:501:fffd:XXXX::/64
TN (Preference 1) |
Link-local |
fe80::200:ff:fe00:a2a2 |
Ether |
00:00:00:00:a2:a2 |
Delegate Prefix |
3ffe:501:fffd:: |
Prefix Length |
48 |
TN1 (Preference 200) |
Link-local |
fe80::200:ff:fe00:a0a0 |
Ether |
00:00:00:00:a0:a0 |
Delegate Prefix |
3ffe:501:fffd:: |
Prefix Length |
48 |
TN2 (Preference 100) |
Link-local |
fe80::200:ff:fe00:a1a1 |
Ether |
00:00:00:00:a1:a1 |
Delegate Prefix |
3ffe:501:fffd:: |
Prefix Length |
48 |
Host |
Link-local |
fe80::200:ff:fe00:101 |
ether |
00:00:00:00:01:01 |
- NUT sets up Prefix Delegation.
Tester as Server Target as Client Tester as Host
| | |
|<--------------------------| |
| DHCP Solicit message | |
| | |
1. Wait DHCP Solicit message
Addresse
Solicit messages
Src |
NUT link-local address |
Dst |
All_DHCP_Relay_Agents_and_Servers |
All_DHCP_Relay_Agents_and_Servers FF02::1:2
UDP Ports
Clients listen for DHCP messages on UDP port 546
Server listen for DHCP messages on UDP port 547
DHCP Message
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) |
Tester as Server Target as Client Tester as Host
| | |
|-------------------------->| |
| DHCP Advertise messages | |
| with Preference option | |
| containing preference | |
| value: 1 | |
| | |
|-------------------------->| |
| DHCP Advertise messages | |
| with Preference option | |
| containing preference | |
| value: 200 | |
| | |
|-------------------------->| |
| DHCP Advertise messages | |
| with Preference option | |
| containing preference | |
| value: 100 | |
| | |
|<--------------------------| |
| Judgment #1 | |
| DHCP Request message | |
| using SID with preference| |
| value: 200 | |
| | |
|-------------------------->| |
| DHCP Reply message | |
| | |
| | |
v v v
1. Send DHCP Advertise messages with preference value 1
2. Send DHCP Advertise messages with preference value 200
3. Send DHCP Advertise messages with preference value 100
4. Wait DHCP Request message using SID of the server which has transmitted the preference value 200.
5. Send DHCP Reply message
Addresses
Request messages
Src |
NUT link-local address |
Dst |
All_DHCP_Relay_Agents_and_Servers |
All_DHCP_Relay_Agents_and_Servers FF02::1:2
Advertise message 1
Src |
fe80::200:ff:fe00:a2a2 |
Dst |
NUT link-local address |
Advertise message 2, Reply message
Src |
fe80::200:ff:fe00:a0a0 |
Dst |
NUT link-local address |
Advertise message 3
Src |
fe80::200:ff:fe00:a1a1 |
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 Advertise message 1, 2 and 3 include preference option.
As for the message, Server Identifier Option differ.
DHCP Advertise message 1 with Preference option including pref-value 1
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:a2:a2 |
Preference Option |
|
pref-value |
1 |
IA_PD Option |
|
Code |
33 (TBD) |
|
IAID |
Unique identifier which client specified |
|
T1 |
300 |
|
T2 |
480 |
|
IA_PD Prefix Option |
|
|
Code |
34 (TBD) |
|
|
preferred-lifetime |
600 |
|
|
valid-lifetime |
1200 |
|
|
prefix-length |
48 |
|
|
IPv6 prefix |
3ffe:501:fffd:: |
DHCP Advertise message 2 with Preference option including pref-value 200
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 |
Preference Option |
|
pref-value |
200 |
IA_PD Option |
|
Code |
33 (TBD) |
|
IAID |
Unique identifier which client specified |
|
T1 |
300 |
|
T2 |
480 |
|
IA_PD Prefix Option |
|
|
Code |
34 (TBD) |
|
|
preferred-lifetime |
600 |
|
|
valid-lifetime |
1200 |
|
|
prefix-length |
48 |
|
|
IPv6 prefix |
3ffe:501:fffd:: |
DHCP Advertise message 3 with Preference option including pref-value 100
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:a1:a1 |
Preference Option |
|
pref-value |
100 |
IA_PD Option |
|
Code |
33 (TBD) |
|
IAID |
Unique identifier which client specified |
|
T1 |
300 |
|
T2 |
480 |
|
IA_PD Prefix Option |
|
|
Code |
34 (TBD) |
|
|
preferred-lifetime |
600 |
|
|
valid-lifetime |
1200 |
|
|
prefix-length |
48 |
|
|
IPv6 prefix |
3ffe:501:fffd:: |
DHCP Request message with IA_PD option including TN1s DUID
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:fffd:: |
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 |
300 |
|
T2 |
480 |
|
IA_PD Prefix Option |
|
|
Code |
34 (TBD) |
|
|
preferred-lifetime |
600 |
|
|
valid-lifetime |
1200 |
|
|
prefix-length |
48 |
|
|
IPv6 prefix |
3ffe:501:fffd:: |
1. Requesting Router chooses SID of the server which has transmitted the preference value 200.
N/A
draft-ietf-dhc-dhcpv6-opt-prefix-delegation-01.txt
10. Delegating Router Solicitation
The requesting router locates and selects a delegating router in the
same way as described in section "DHCP Server Solicitation" of the
DHCP specification [6]. The details of the solicitation process are
described in this section.
10.1 Requesting router behaviour
The requesting router creates and transmits a Solicit message as
described in sections "Creation of Solicit Messages" and
"Transmission of Solicit Messages" of the DHCP specification [6].
The requesting router creates an IA_PD and assigns it an IAID. The
requesting router MUST include the IA_PD option in the Solicit
message.
The requesting router processes any received Advertise messages as
described in section "Receipt of Advertise Messages" in the DHCP
specification [6]. The requesting router MAY choose to consider the
presence of advertised prefixes in its decision about which
delegating router to respond to.
draft-ietf-dhc-dhcpv6-28.txt
17. DHCP Server Solicitation
17.1. Client Behavior
17.1.3. Receipt of Advertise Messages
The client MUST ignore any Advertise message that includes a Status
Code option containing the value NoAddrsAvail, with the exception
that the client MAY display the associated status message to the
user.
Upon receipt of one or more valid Advertise messages, the client
selects one or more Advertise messages based upon the following
criteria.
- Those Advertise messages with the highest server preference value
are preferred over all other Advertise messages.
- Within a group of Advertise messages with the same server
preference value, a client MAY select those servers whose
Advertise messages advertise information of interest to the
client. For example, the client may choose a server that
returned an advertisement with configuration options of interest
to the client.
- The client MAY choose a less-preferred server if that server has
a better set of advertised parameters, such as the available
addresses advertised in IAs.
Once a client has selected Advertise message(s), the client will
typically store information about each server, such as server
preference value, addresses advertised, when the advertisement was
received, and so on.
If the client needs to select an alternate server in the case that a
chosen server does not respond, the client chooses the next server
according to the criteria given above.
perldoc V6evalTool