NAME

  SrcSelectRule7.seq - Source Address Selection
                       check Rule 7(Prefer public addresses)

  Rule 7: Prefer public addresses. 
    If SA is a public address and SB is a temporary address, then prefer SA.

  Source addresses used for this test are "temporary address" and "public address".


TARGET

  Host


SYNOPSIS

  SrcSelectRule7.seq [-tooloption ...] -pkt ADDR_SELECT.def
    -tooloption : v6eval tool option


INITIALIZATION

  None


TEST PROCEDURE

  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 privacy extention setting in NUT
     1.3. Add Candidate Source Addresses (temporary / public ) in NUT
          * temporary address is added by RA (TN->NUT)
     1.4. Check Candidate Source Addresses by Ping6 (TN->NUT)
  2. Send Ping6 from NUT to Destination
     2.1. 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 privacy extention setting in NUT

        NUT    TN  Default Router  Destination
         |      |      |           |
         ======(INITIALIZE)=========
         |      |      |           |
         |<-<-<-+      |           | Set IPv6 Default Route
         |<-<-<-+      |           | Set privacy extention setting
         |<-<-<-+      |           | Add Candidate Source Addresses
         |      |      |           |
         |<------------+           | RA
         |      |      |           |
         |<------------+           | Echo Request to Candidate Source Addresses 1
         +------------>|           | Echo Reply
         |      |      |           |
         |<------------+           | Echo Request to Candidate Source Addresses 2
         +------------>|           | Echo Reply
         |      |      |           |
         |<------------+           | Echo Request to Candidate Source Addresses 3
         +------------>|           | Echo Reply
         |      |      |           |
         ======(INITIALIZE)=========
         |      |      |           |
         |<-<-<-+      |           | Excute ping6 command
         |      |      |           |
         +------------------------>| Echo Request
         |      |      |           |

  LLA(Link Local Address)

  *Following address grouup does not match Rule 1-6

  Check 01:
    Destination: 3fff::2
    Candidate Source Addresses: 3ffe::1 or 3fff::random(temporary) or fec0::1 or LLA
    Result: 3ffe::1

  Check 02:
    Destination: ff0e::2
    Candidate Source Addresses: 3ffe::1 or 3fff::random(temporary) or fec0::1 or LLA
    Result: 3ffe::1

  Check 03:
    Destination: 3fff::2
    Candidate Source Addresses: fec0::1 or fec0::random(temporary) or LLA
    Result: 3ffe::1

  Check 04:
    Destination: ff0e::2
    Candidate Source Addresses: fec0::1 or fec0::random(temporary) or LLA
    Result: 3ffe::1

  Check 05:
    Destination: ff08::2
    Candidate Source Addresses: 3ffe::1 or 3fff::random(temporary) or fec0::1 or LLA
    Result: 3ffe::1

  Check 06:
    Destination: ff08::2
    Candidate Source Addresses: fec0::1 or fec0::random(temporary) or LLA
    Result: 3ffe::1

  Check 07:
    Destination: fec0::2
    Candidate Source Addresses: 3ffe::1 or 3fff::random(temporary) or LLA
    Result: 3ffe::1

  Check 08:
    Destination: ff05::2
    Candidate Source Addresses: 3ffe::1 or 3fff::random(temporary) or LLA
    Result: 3ffe::1

  Check 09:
    Destination: fec0::2
    Candidate Source Addresses: fec0::1 or fec0::random(temporary) or 3ffe::1 or LLA
    Result: 3ffe::1

  Check 10:
    Destination: ff05::2
    Candidate Source Addresses: fec0::1 or fec0::random(temporary) or 3ffe::1 or LLA
    Result: 3ffe::1


JUDGEMENT

  Check 01:
    PASS: Receive Echo Request & source address = 3ffe::1

  Check 02:
    PASS: Receive Echo Request & source address = 3ffe::1

  Check 03:
    PASS: Receive Echo Request & source address = fec0::1

  Check 04:
    PASS: Receive Echo Request & source address = fec0::1

  Check 05:
    PASS: Receive Echo Request & source address = 3ffe::1

  Check 06:
    PASS: Receive Echo Request & source address = fec0::1

  Check 07:
    PASS: Receive Echo Request & source address = 3ffe::1

  Check 08:
    PASS: Receive Echo Request & source address = 3ffe::1

  Check 09:
    PASS: Receive Echo Request & source address = fec0::1

  Check 10:
    PASS: Receive Echo Request & source address = fec0::1

  TEST
    PASS: All Check = PASS


SEE ALSO

  perldoc V6evalTool
ADDR_SELECT.html "Default Address Selection for IPv6" Test Common Utility
das_rules.html "Default Address Selection for IPv6" Rules