RA_GA_Success - check the process when NUT receives RA which contains one Global Prefix.(Assigning and Expiring Global address)
All Node
Reboot NUT or Initialize interface of NUT or Initialize IPv6 stack of NUT.
The following tests are prepared in this test package. See INDEX file.
Test for all node
When NUT receives RA which contains Global Prefix, NUT assignes autoconfigured address. NUT MAY perform DAD for its Global address prior to assigning it. Because received Prefix has Valid Life Time(VLT), the Global address MUST expire when VLT expired.
Test sequence
TN NUT --------------------------------- Initialize NUT
Configure address of NUT (reboot or interface initialization etc...)
TN wait the DAD NS sent from NUT
<=== Judgement #1: DAD NS =======
name: DADNS_from_NUT
<=== Judgement #2: RS ===========
name: RS_from_NUT, RS_from_NUT_wSLL
==== Action #1: RA =============>
name: RA_GA0
<=== Judgement #3: DAD NS =======
name: DADNS_from_NUT_GA0Tgt
Wait for 5+DupAddrDetectTransmits*(RetransTimer/1000)[sec]
Check if NUT's address is configured
==== Action #2: DAD NS =========>
name: DADNS_from_TN_GA0Tgt
<=== Judgement #4: DAD NA =======
name:
DADNA_from_NUT_GA0Tgt,
DADNA_from_NUT_GA0Tgt_woTLL,
DADNA_from_GA0NUT_GA0Tgt,
DADNA_from_GA0NUT_GA0Tgt_woTLL
Wait until 3[sec] before expiration of VLT
Check if NUT's address is available
==== Action #3: DAD NS =========>
name: DADNS_from_TN_GA0Tgt
<=== Judgement #5: DAD NA =======
name:
DADNA_from_NUT_GA0Tgt,
DADNA_from_NUT_GA0Tgt_woTLL,
DADNA_from_GA0NUT_GA0Tgt,
DADNA_from_GA0NUT_GA0Tgt_woTLL
Wait until 3[sec] after expiration of VLT
==== Action #4: DAD NS =========>
name: DADNS_from_TN_GA0Tgt
X <== Judgement #6: DAD NA =======
name:
DADNA_from_NUT_GA0Tgt,
DADNA_from_NUT_GA0Tgt_woTLL,
DADNA_from_GA0NUT_GA0Tgt,
DADNA_from_GA0NUT_GA0Tgt_woTLL
Test for all NODE
NUT performs Stateless Address Autoconfiguration(Global) on its interface
Judgement #1. NUT MUST transmit DAD NS for its autoconfigured Link-local address.
name: DADNS_from_NUT
src: ::0
dst: solnode[NUT's tentative Link-local]
TargetAddress: NUT's tentative Link-local
Judgement #2. NUT SHOULD transmit RS.
name: RS_from_NUT
src: NUT's Link-local
dst: allrouter
Action #1. TN transmits RA which contains Global Prefix.
name: RA_GA0
src: TN's Link-local
dst: allnode
PXOPT: Global0
Judgement #3. NUT MUST transmit DAD NS for its autoconfigured Global address.
(* If the address is consisits of EUI64, as same as Link-local
address, This DAD MAY be omitted.)
name: DADNS_from_NUT_GA0Tgt
src: ::0
dst: solnode[NUT's tentative Global0]
TargetAddress: NUT's tentative Global0
Action #2. TN transmits DAD NS to check if NUT's address is configured.
name: DADNS_from_TN_GA0Tgt
src: ::0
dst: solnode[NUT's Global0]
TargetAddress: NUT's Global0
Judgement #4. NUT MUST transmit DAD NA for its autoconfigured Global address.
name: DADNA_from_NUT_GA0Tgt, DADNA_from_NUT_GA0Tgt_woTLL
src: NUT's Link-local
dst: allnode
TargetAddress: NUT's Global0
RFlag: 0
SFlag: 0
OFlag: 1
TLLOPT: NUT's MAC address
(* TLLOPT may be omitted)
Action #3. TN transmits DAD NS to check if NUT's address is configured.
(3 [sec] before expiration)
name: DADNS_from_TN_GA0Tgt
src: ::0
dst: solnode[NUT's Global0]
TargetAddress: NUT's Global0
Judgement #5. NUT MUST transmit DAD NA for its autoconfigured Global address.
name: DADNA_from_NUT_GA0Tgt, DADNA_from_NUT_GA0Tgt_woTLL
src: NUT's Link-local
dst: allnode
TargetAddress: NUT's Global0
RFlag: 0
SFlag: 0
OFlag: 1
TLLOPT: NUT's MAC address
(* TLLOPT may be omitted)
Action #4. TN transmits DAD NS to check if NUT's address is configured.
(3 [sec] after expiration)
name: DADNS_from_TN_GA0Tgt
src: ::0
dst: solnode[NUT's Global0]
TargetAddress: NUT's Global0
Judgement #6. NUT MUST NOT transmit DAD NA for its autoconfigured Global address.
name: DADNA_from_NUT_GA0Tgt, DADNA_from_NUT_GA0Tgt_woTLL
src: NUT's Link-local
dst: allnode
TargetAddress: NUT's Global0
RFlag: 0
SFlag: 0
OFlag: 1
TLLOPT: NUT's MAC address
(* TLLOPT may be omitted)
RFC2462
(omit)
5.5. Creation of Global and Site-Local Addresses
Global and site-local addresses are formed by appending an interface identifier to a prefix of appropriate length. Prefixes are obtained from Prefix Information options contained in Router Advertisements. Creation of global and site-local addresses and configuration of other parameters as described in this section SHOULD be locally configurable. However, the processing described below MUST be enabled by default.
(omit)
5.5.3. Router Advertisement Processing
(omit)
For each Prefix-Information option in the Router Advertisement:
a) If the Autonomous flag is not set, silently ignore the Prefix Information option.
b) If the prefix is the link-local prefix, silently ignore the Prefix Information option.
c) If the preferred lifetime is greater than the valid lifetime, silently ignore the Prefix Information option. A node MAY wish to log a system management error in this case.
d) If the prefix advertised does not match the prefix of an address already in the list, and the Valid Lifetime is not 0, form an address (and add it to the list) by combining the advertised prefix with the link's interface identifier as follows:
| 128 - N bits | N bits | +---------------------------------------+------------------------+ | link prefix | interface identifier | +----------------------------------------------------------------+
If the sum of the prefix length and interface identifier length does not equal 128 bits, the Prefix Information option MUST be ignored. An implementation MAY wish to log a system management error in this case. It is the responsibility of the system administrator to insure that the lengths of prefixes contained in Router Advertisements are consistent with the length of interface identifiers for that link type. Note that interface identifiers will typically be 64-bits long and based on EUI-64 identifiers as described in [ADDR-ARCH].
If an address is formed successfully, the host adds it to the list of addresses assigned to the interface, initializing its preferred and valid lifetime values from the Prefix Information option.
(omit)
5.5.4. Address Lifetime Expiry
A preferred address becomes deprecated when its preferred lifetime expires. A deprecated address SHOULD continue to be used as a source address in existing communications, but SHOULD NOT be used in new communications if an alternate (non-deprecated) address is available and has sufficient scope. IP and higher layers (e.g., TCP, UDP) MUST continue to accept datagrams destined to a deprecated address since a deprecated address is still a valid address for the interface. An implementation MAY prevent any new communication from using a deprecated address, but system management MUST have the ability to disable such a facility, and the facility MUST be disabled by default.
An address (and its association with an interface) becomes invalid when its valid lifetime expires. An invalid address MUST NOT be used as a source address in outgoing communications and MUST NOT be recognized as a destination on a receiving interface.
RFC2461
(omit)
7.2.4. Sending Solicited Neighbor Advertisements
A node sends a Neighbor Advertisement in response to a valid Neighbor Solicitation targeting one of the node's assigned addresses. The Target Address of the advertisement is copied from the Target Address of the solicitation. If the solicitation's IP Destination Address is not a multicast address, the Target Link-Layer Address option MAY be omitted; the neighboring node's cached value must already be current in order for the solicitation to have been received. If the solicitation's IP Destination Address is a multicast address, the Target Link-Layer option MUST be included in the advertisement. Furthermore, if the node is a router, it MUST set the Router flag to one; otherwise it MUST set the flag to zero.
If the Target Address is either an anycast address or a unicast address for which the node is providing proxy service, or the Target Link-Layer Address option is not included, the Override flag SHOULD be set to zero. Otherwise, the Override flag SHOULD be set to one. Proper setting of the Override flag ensures that nodes give preference to non-proxy advertisements, even when received after proxy advertisements, and also ensures that the first advertisement for an anycast address "wins".
If the source of the solicitation is the unspecified address, the node MUST set the Solicited flag to zero and multicast the advertisement to the all-nodes address. Otherwise, the node MUST set the Solicited flag to one and unicast the advertisement to the Source Address of the solicitation.
If the Target Address is an anycast address the sender SHOULD delay sending a response for a random time between 0 and MAX_ANYCAST_DELAY_TIME seconds. Because unicast Neighbor Solicitations are not required to include a Source Link-Layer Address, it is possible that a node sending a solicited Neighbor Advertisement does not have a corresponding link- layer address for its neighbor in its Neighbor Cache. In such situations, a node will first have to use Neighbor Discovery to determine the link-layer address of its neighbor (i.e, send out a multicast Neighbor Solicitation).
(omit)
detail of v6eval tool option: see perldoc V6evalTool.pm, perldoc V6evalRemote.pm