NAME

ADDRSTATE_pkt_receiving - check packet receiving and address lifetime expiry


TARGET

Host


SYNOPSIS

ADDRSTATE_pkt_receiving.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

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

Test for a Host Packet receiving and Global address lifetime expiry (valid preferred, valid deprecated, invalid) Packet receiving and Site-local address lifetime expiry (valid preferred, valid deprecated, invalid)

Test sequence

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

  Send Unsolicited RA to configure address of NUT (sequence parameter addrconf=ra)
  ==== Action #1: Unsolicited RA ===>
        name: usolra
        src: TN's Link-local address
        dst: allnodes multicast
        SLL option exists
        Prefix option
              PrefixLength: 64
              LFlag: 1
              AFlag: 1
              ValidLifetime: 60
              PreferredLifetime: 30
              Prefix: <Prefix>

  TN wait the DAD NS sends from NUT. (This judgement is informational only.)
  <=== Judgement #1: DAD NS ====
        name: dadns_from_NUT
        src: ::0
        dst: solnode[TargetAddress]
        TargetAddress: NUT's tentative <Prefix> + interface-id

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

  Check if NUT's address is configured.
  ==== Action #2: DAD NS ====>
        name: chkconf_dadns_to_NUT
        src: ::0
        dst: solnode[TargetAddress]
        TargetAddress: NUT's <Prefix> + interface-id

  DAD NA come from NUT because NUT's address is configured (valid preferred).
  <=== Judgement #2: DAD NA come====
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        src: NUT's Link-local address or TargetAddress
        dst: allnodes multicast
        TargetAddress: NUT's <Prefix> + interface-id
        OFlag: 1
        RFlag: 0 ( if NUT is a Router then 1)

  Wait for NUT's address state becomes valid deprecated. (sleep 35[sec])

  Check if NUT's address is configured.
  ==== Action #3: DAD NS ====>
        name: chkconf_dadns_to_NUT
        src: ::0
        dst: solnode[TargetAddress]
        TargetAddress: NUT's <Prefix> + interface-id

  DAD NA come from NUT because NUT's address is configured (valid deprecated).
  <=== Judgement #3: DAD NA come====
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        src: NUT's Link-local address or TargetAddress
        dst: allnodes multicast
        TargetAddress: NUT's <Prefix> + interface-id
        OFlag: 1
        RFlag: 0 ( if NUT is a Router then 1)

  Wait for NUT's address state becomes invalid. (sleep 35[sec])

  Check if NUT's address is configured.
  ==== Action #4: DAD NS ====>
        name: chkconf_dadns_to_NUT
        src: ::0
        dst: solnode[TargetAddress]
        TargetAddress: NUT's <Prefix> + interface-id

  DAD NA does not come from NUT because NUT's address is not configured (invalid).
  <=== Judgement #4: DAD NA does not come====
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        src: NUT's Link-local address or TargetAddress
        dst: allnodes multicast
        TargetAddress: NUT's <Prefix> + interface-id
        OFlag: 1
        RFlag: 0 ( if NUT is a Router then 1)


JUDGEMENT

Test for a Host

 Packet receiving and Global address lifetime expiry (valid preferred, valid deprecated, invalid)
      -pkt GLOBAL0_valRA_vlt60plt30.def  addrconf=ra init=DADSuccess_boot

  TN(or X)                   NUT
  ------------------------------
  Send Unsolicited RA to configure address of NUT (sequence parameter addrconf=ra)
  ==== Action #1: Unsolicited RA ===>
        name: usolra
        Prefix option
              ValidLifetime: 60
              PreferredLifetime: 30
              Prefix: _GLOBAL0_UCAST_PRFX

  TN wait the DAD NS sends from NUT. (This judgement is informational only.)
  <=== Judgement #1: DAD NS ====
        name: dadns_from_NUT
        TargetAddress: NUT's tentative _GLOBAL0_UCAST_PRFX + interface-id

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

  Check if NUT's address is configured.
  ==== Action #2: DAD NS ====>
        name: chkconf_dadns_to_NUT
        TargetAddress: NUT's _GLOBAL0_UCAST_PRFX + interface-id

  DAD NA come from NUT because NUT's address is configured (valid preferred).
  <=== Judgement #2: DAD NA come====
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        TargetAddress: NUT's _GLOBAL0_UCAST_PRFX + interface-id

  Wait for NUT's address state becomes valid deprecated. (sleep 35[sec])

  Check if NUT's address is configured.
  ==== Action #3: DAD NS ====>
        name: chkconf_dadns_to_NUT
        TargetAddress: NUT's _GLOBAL0_UCAST_PRFX + interface-id

  DAD NA come from NUT because NUT's address is configured (valid deprecated).
  <=== Judgement #3: DAD NA come====
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        TargetAddress: NUT's _GLOBAL0_UCAST_PRFX + interface-id

  Wait for NUT's address state becomes invalid.

  Check if NUT's address is configured.
  ==== Action #4: DAD NS ====>
        name: chkconf_dadns_to_NUT
        TargetAddress: NUT's _GLOBAL0_UCAST_PRFX + interface-id

  DAD NA does not come from NUT because NUT's address is not configured (invalid).
  <=== Judgement #4: DAD NA does not come====
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        TargetAddress: NUT's _GLOBAL0_UCAST_PRFX + interface-id

 Packet receiving and Site-local address lifetime expiry (valid preferred, valid deprecated, invalid)
      -pkt SLOCAL0_valRA_vlt60plt30.def  addrconf=ra init=DADSuccess_boot

  TN(or X)                   NUT
  ------------------------------
  Send Unsolicited RA to configure address of NUT (sequence parameter addrconf=ra)
  ==== Action #1: Unsolicited RA ===>
        name: usolra
        Prefix option
              ValidLifetime: 60
              PreferredLifetime: 30
              Prefix: _SLOCAL0_UCAST_PRFX

  TN wait the DAD NS sends from NUT. (This judgement is informational only.)
  <=== Judgement #1: DAD NS ====
        name: dadns_from_NUT
        TargetAddress: NUT's tentative _SLOCAL0_UCAST_PRFX + interface-id

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

  Check if NUT's address is configured.
  ==== Action #2: DAD NS ====>
        name: chkconf_dadns_to_NUT
        TargetAddress: NUT's _SLOCAL0_UCAST_PRFX + interface-id

  DAD NA come from NUT because NUT's address is configured (valid preferred).
  <=== Judgement #2: DAD NA come====
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        TargetAddress: NUT's _SLOCAL0_UCAST_PRFX + interface-id

  Wait for NUT's address state becomes valid deprecated. (sleep 35[sec])

  Check if NUT's address is configured.
  ==== Action #3: DAD NS ====>
        name: chkconf_dadns_to_NUT
        TargetAddress: NUT's _SLOCAL0_UCAST_PRFX + interface-id

  DAD NA come from NUT because NUT's address is configured (valid deprecated).
  <=== Judgement #3: DAD NA come====
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        TargetAddress: NUT's _SLOCAL0_UCAST_PRFX + interface-id

  Wait for NUT's address state becomes invalid.

  Check if NUT's address is configured.
  ==== Action #4: DAD NS ====>
        name: chkconf_dadns_to_NUT
        TargetAddress: NUT's _SLOCAL0_UCAST_PRFX + interface-id

  DAD NA does not come from NUT because NUT's address is not configured (invalid).
  <=== Judgement #4: DAD NA does not come====
        name: chkconf_dadna_from_NUT (or chkconf_dadna_from_NUT_rf1 if NUT is a Router)
        TargetAddress: NUT's _SLOCAL0_UCAST_PRFX + interface-id


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.