NAME

DADSendNS_DADPostSendNS - check if NUT performs DAD process


TARGET

Host and Router


SYNOPSIS

DADSendNS_DADPostSendNS.seq [-tooloption ...] -pkt <packetdef> [addrconf=<addrconfname>] [init=<initname>,<initname>...] [sd=<sdopt>]

  -tooloption   : v6eval tool option
  <packetdef>   : packet definition file (v6eval tool option)
  <addrconfname>: how to configure address on NUT; boot/manual+/ra
  <initname>    : how to initialize NUT; DADSuccess_boot/DADFail_boot/ra
  <sdopt>       : debug options
 detail of v6eval tool option: see perldoc V6evalTool.pm, perldoc V6evalRemote.pm
 detail of parameters: see Test sequence for IPv6 Stateless Address Autoconfiguration.


INITIALIZATION

 detail of Initialization: see Test sequence for IPv6 Stateless Address Autoconfiguration.


TEST PROCEDURE

Test for Unicast address configuration

The following tests are prepared in this test package. See INDEX file.

Test for a Host and Router

   DAD is performed on NUT by Stateless Link-local address autoconfiguration
   DAD is performed on NUT by Manual Link-local address configuration
   DAD is performed on NUT by Manual Global address configuration

Test for a Host

   DAD is performed on NUT by Stateless Global address autoconfiguration
   DAD is performed on NUT by Stateless Global address autoconfiguration after DAD Failed for Link-local address autoconfiguration

Test sequence

  TN(or X)                   NUT
  ------------------------------
  Initialize NUT (see ...)

  Configure address of NUT (boot or manual or ra, see ...)

  TN wait the DAD NS sends from NUT
  <=== Judgement #1: DAD NS ====
        name: dadns_from_NUT
Test for Anycast address configuration

The following test is prepared in this test package. See INDEX file.

Test for a Host and Router

 DAD is not performed on NUT by Manual Link-local Anycast address configuration
 DAD is not performed on NUT by Manual Global Anycast address configuration

Test sequence

  TN(or X)         NUT
  ----------------------
  Initialize NUT (see ...)

  Configure address of NUT (boot or manual or ra, see ...)

  TN wait the DAD NS sends from NUT
  <=== Judgement #1: DAD NS does not come====
        name: dadns_from_NUT

  Wait for NUT to finish DAD. (sleep $RetransTimerSec [sec])

  Check if NUT's address is configured
  ==== Action #1: DAD NS ====>
        name: chkconf_dadns_to_NUT

  <=== Judgement #2: DAD NA ====
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)


JUDGEMENT

Test for Unicast address configuration

Test for a Host and Router

 DAD is performed on NUT by Stateless Link-local address autoconfiguration
     -pkt LLOCAL.def      addrconf=boot init=none

   Judgement #1. DAD NS must come from NUT on Link-local address autoconfiguration.
        name: dadns_from_NUT
        src: ::0
        dst: solnode[NUT's tentative Link-local]
        TargetAddress: NUT's tentative Link-local

 DAD is performed on NUT by Manual Link-local address configuration
     -pkt LLOCAL0A0N.def  addrconf=manual+_LLOCAL0A0N_UCAST init=DADSuccess_boot

   Judgement #1. DAD NS must come from NUT on Manual Link-local address configuration.
        name: dadns_from_NUT
        src: ::0
        dst: solnode[NUT's tentative _LLOCAL0A0N_UCAST_ADDR]
        TargetAddress: NUT's tentative _LLOCAL0A0N_UCAST_ADDR

 DAD is performed on NUT by Manual Global address configuration
     -pkt GLOBAL0A0N.def  addrconf=manual+_GLOBAL0A0N_UCAST init=DADSuccess_boot

   Judgement #1. DAD NS must come from NUT on Manual Global address configuration.
        name: dadns_from_NUT
        src: ::0
        dst: solnode[NUT's tentative _GLOBAL0A0N_UCAST_ADDR]
        TargetAddress: NUT's tentative _GLOBAL0A0N_UCAST_ADDR

Test for a Host

 DAD is performed on NUT by Stateless Global address autoconfiguration
     -pkt GLOBAL0_valRA.def          addrconf=ra init=DADSuccess_boot

   Judgement #1. DAD NS should come from NUT on Global address autoconfiguration.
        name: dadns_from_NUT
        src: ::0
        dst: solnode[NUT's tentative _GLOBAL0_UCAST_PRFX + interface-id]
        TargetAddress: NUT's tentative _GLOBAL0_UCAST_PRFX + interface-id

 DAD is performed on NUT by Stateless Global address autoconfiguration after DAD Failed for
     Link-local address autoconfiguration
     -pkt GLOBAL0_valRA_NoLLOCAL.def addrconf=ra init=DADFail_boot

   Judgement #1. DAD NS must come from NUT on Global address autoconfiguration  after
                 DAD Failed for Link-local address autoconfiguration
        name: dadns_from_NUT
        src: ::0
        dst: solnode[NUT's tentative _GLOBAL0_UCAST_PRFX + interface-id]
        TargetAddress: NUT's tentative _GLOBAL0_UCAST_PRFX + interface-id
Test for Anycast address configuration

Test for a Host and Router

 DAD is not performed on NUT by Manual Link-local Anycast address configuration
     -pkt LLOCAL0A0N_ACAST.def  addrconf=manual+_LLOCAL0A0N_ACAST init=DADSuccess_boot

   Judgement #1. DAD NS must not come from NUT on Anycast address configuration
        name: dadns_from_NUT
        src: ::0
        dst: solnode[NUT's tentative _LLOCAL0A0N_ACAST_ADDR]
        TargetAddress: NUT's tentative _LLOCAL0A0N_ACAST_ADDR

   Action #2. Send DAD NS to check if NUT's address is configured
        name: chkconf_dadns_to_NUT
        src: ::0
        dst: solnode[NUT's _LLOCAL0A0N_ACAST_ADDR]
        TargetAddress: NUT's _LLOCAL0A0N_ACAST_ADDR

   Judgement #2. DAD NA must come from NUT for Anycast address
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        src: NUT's Link-local address
        dst: allnodes multicast
        TargetAddress: NUT's _LLOCAL0A0N_ACAST_ADDR
        OFlag: 0 ( it should be 0 in NA of TargetAddress is an Anycast address )
        RFlag: 0 ( if NUT is a Router then 1)

 DAD is not performed on NUT by Manual Global Anycast address configuration
     -pkt GLOBAL0A0N_ACAST.def  addrconf=manual+_GLOBAL0A0N_ACAST init=DADSuccess_boot

   Judgement #1. DAD NS must not come from NUT on Anycast address configuration
        name: dadns_from_NUT
        src: ::0
        dst: solnode[NUT's tentative _GLOBAL0A0N_ACAST_ADDR]
        TargetAddress: NUT's tentative _GLOBAL0A0N_ACAST_ADDR

   Action #2. Send DAD NS to check if NUT's address is configured
        name: chkconf_dadns_to_NUT
        src: ::0
        dst: solnode[NUT's _GLOBAL0A0N_ACAST_ADDR]
        TargetAddress: NUT's _GLOBAL0A0N_ACAST_ADDR

   Judgement #2. DAD NA must come from NUT for Anycast address
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        src: NUT's Link-local address
        dst: allnodes multicast
        TargetAddress: NUT's _GLOBAL0A0N_ACAST_ADDR
        OFlag: 0 ( it should be 0 in NA of TargetAddress is an Anycast address )
        RFlag: 0 ( if NUT is a Router then 1)


SEE ALSO

 detail of v6eval tool option: see perldoc V6evalTool.pm, perldoc V6evalRemote.pm
 detail of parameters: see Test sequence for IPv6 Stateless Address Autoconfiguration.