DstSelectRule2.seq - Destination Address Selection
Check Rule 2(Prefer matching scopee)
Rule 2: Prefer matching scope.
If Scope(DA) = Scope(Source(DA)) and Scope(DB) <> Scope(Source(DB)), then prefer DA.
Source addresses used for this test are "preferred address".
Host and Router
DstSelectRule2.seq [-tooloption ...] -pkt ADDR_SELECT.def
-tooloption : v6eval tool option
None
This TEST performs the following Check procedures for
every address group defined by Check 01 - *.
*Check procedure
1. Initialize :
1.1. Set IPv6 Default Route in NUT
(Default Router address = <TN-Link0-LinkLocalAddress>)
1.2. Set DNS setting in NUT
1.3. Add Candidate Source Addresses in NUT
1.4. Check Candidate Source Addresses by Ping6 (TN->NUT)
2. Send Ping6 from NUT to Destination(FQDN)
2.1. NUT send DNS query (question) (NUT->TN)
2.2. TN send DNS query (answer) (TN->NUT)
2.3. NUT send ICMPv6 echo request (NUT->TN)
3. Judgment :
if (recive packet's Destination & Source Addresses)
= (expected Destination & Source Addresses), Check pass
4. Cleanup :
4.1. Delete Candidate Source Addresses in NUT
4.2. Clear prefix list & NCE & default router list in NUT
4.3. Remove DNS setting in NUT
NUT TN Default DNS Destination
| | Router | |
| | | | |
======(INITIALIZE)=========
| | | | |
|<-<-<-+ | | | Set IPv6 Default Route
|<-<-<-+ | | | Set DNS setting
|<-<-<-+ | | | Add Candidate Source Addresses
| | | | |
|<------------+ | | Echo Request to Candidate Source Addresses 1
+------------>| | | Echo Reply
| | | | |
======(INITIALIZE)=========
| | | | |
|<-<-<-+ | | | Excute ping6 command
| | | | |
+------------------>| | DNS query question
<-------------------+ | DNS query answer
+------------------------>| Echo Request
| | | | |
GS(Global Scope), OS(Organization Scope), SS(Site local Scope), LS(Link local Scope)
LLA(Link Local Address)
Check 01:
DNS Address: 3ffe::9
Candidate Source Addresses: 3ffe::1(GS) or LLA(LS)
Destination Address List: fec0::2(SS) or 3fff::2(GS)
Result: 3fff::2 (src 3ffe::1) then fec0::2 (src 3ffe::1)
Scope(3fff::2) = Scope(3ffe::1) and Scope(fec0::2) <> Scope(3ffe::1), then prefer 3fff::2
Check 02:
DNS Address: fec0::9
Candidate Source Addresses: fec0::1(SS) or LLA(LS)
Destination Address List: 3fff::2(GS) or fec0::2(SS)
Result: fec0::2 (src fec0::1) then 3fff::2 (src fec0::1)
Scope(fec0::2) = Scope(fec0::1) and Scope(3fff::2) <> Scope(fec0::1), then prefer fec0::2
Check 03:
DNS Address: fec0::9
Candidate Source Addresses: fec0::1(SS) or LLA(LS)
Destination Address List: 3fff::2(GS) or fe80::2(LS)
Result: fe80::2 (src LLA) then 3fff::2 (src fec0::1)
Scope(fe80::2) = Scope(LLA) and Scope(3fff::2) <> Scope(fec0::1), then prefer fe80::2
Check 01:
PASS: Receive Echo Request & destination(source) = 3fff::2(3ffe::1)
Check 02:
PASS: Receive Echo Request & destination(source) = fec0::2(fec0::1)
Check 03:
PASS: Receive Echo Request & destination(source) = fe80::2(LLA)
TEST
PASS: All Check = PASS
perldoc V6evalTool
ADDR_SELECT.html "Default Address Selection for IPv6" Test Common Utility
das_rules.html "Default Address Selection for IPv6" Rules