# NAME

LLA_DAD_NSPostDAD_DstAll - check the process when NUT receives invalid DAD `NS(Destination==Allnode)` with same Target address after sending DAD NS.

# TARGET

All Node

# SYNOPSIS

LLA_DAD_NSPostDAD_DstAll.seq [-tooloption ...] -pkt <packetdef> [addrconf=<addrconfname>]

      -tooloption   : v6eval tool option
      <packetdef>   : packet definition file (v6eval tool option)
      <addrconfname>: how to configure address on NUT; boot/reboot

     detail of v6eval tool option: see perldoc V6evalTool.pm, perldoc V6evalRemote.pm

# INITIALIZATION

     Reboot NUT or Initialize interface of NUT or Initialize IPv6 stack of NUT.

# TEST PROCEDURE

Test for Unicast address configuration

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

  Test for all node

         NUT assignes autoconfigured address, even though NUT receives invalid
         (Destination==Allnode) DAD NS for same target address as NUT, while DAD
         Process (after transmitting DAD NS).

  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

        ==== Action #1: DAD NS =========>
              name: DADNS_from_TN_DstAll

        Wait for DupAddrDetectTransmits*RetransTimer

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

        <=== Judgement #2: DAD NA =======
              name: NA_from_NUT, NA_from_NUT_woTLL

# JUDGEMENT

Test for Link-local Unicast address autoconfiguration

  Test for all NODE

  NUT performs Stateless Address Autoconfiguration(Link-local) 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

         Action #1. TN transmits invalid DAD NS which destined for allnode
              name: DADNS_from_TN_DstAll
              src: ::0
              dst: allnode
              TargetAddress: NUT's Link-local

         Action #2. TN transmits SOL NS to check if NUT's address is configured
              name: SOLNS_from_TN_SameTgt
              src: TN's Link-local
              dst: solnode[NUT's Link-local]
              TargetAddress: NUT's Link-local

         Judgement #2. NUT MUST transmit SOL NA for its autoconfigured  Link-local address.
              name: NA_from_NUT, NA_from_NUT_woTLL
              src: NUT's Link-local
              dst: TN's Link-local
              TargetAddress: NUT's Link-local
              RFlag: 0 ( if NUT is a Router then 1)
              SFlag: 1
              OFlag: 1
              TLLOPT: NUT's MAC address

# REFERENCE

    RFC2462

       (omit)

    5.4.1.  Message Validation

       A node MUST silently discard any Neighbor Solicitation or
       Advertisement message that does not pass the validity checks
       specified in [DISCOVERY]. A solicitation that passes these validity
       checks is called a valid solicitation or valid advertisement.

       (omit)

    RFC2461

       (omit)

    4.3.  Neighbor Solicitation Message Format

       Nodes send Neighbor Solicitations to request the link-layer address
       of a target node while also providing their own link-layer address to
       the target.  Neighbor Solicitations are multicast when the node needs
       to resolve an address and unicast when the node seeks to verify the
       reachability of a neighbor.

             0                   1                   2                   3
             0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |     Type      |     Code      |          Checksum             |
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |                           Reserved                            |
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |                                                               |
            +                                                               +
            |                                                               |
            +                       Target Address                          +
            |                                                               |
            +                                                               +
            |                                                               |
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |   Options ...
            +-+-+-+-+-+-+-+-+-+-+-+-

       IP Fields:

          Source Address
                         Either an address assigned to the interface from
                         which this message is sent or (if Duplicate Address
                         Detection is in progress [ADDRCONF]) the
                         unspecified address.

          Destination Address
                         Either the solicited-node multicast address
                         corresponding to the target address, or the target
                         address.

          Hop Limit      255

       (omit)

# SEE ALSO

     detail of v6eval tool option: see perldoc V6evalTool.pm, perldoc V6evalRemote.pm