Test Specification:
IPv6 Conformance Test For Stateless Address Configuration
(for host)


No.Title

1. Test for a Link-local Address Duplicate Address Detection (DAD)

1.1 Confirm if NUT makes Link-local Address(LLA) and performs DAD and receive no packets
1NUT performs DAD for its Link-local address

1.2 NUT receives NS or NA *BEFORE* transmitting DAD NS

1.2.1 DAD would Succeed

These tests try to find incorrect behavior, when NUT receives NS or NA while NUT is delaying transmision of DADNS.

If some tests result FAIL, it means NUT works incorrectly.

If some tests result PASS, it dose not mean NUT works incorrectly, because of timing issue.

(Interface UP) -> (Receive NS or NA) -> (Send DADNS)
2NUT receives valid DAD NS (Target!=NUT), before performing DAD
3NUT receives valid NS (Src==Unicast, Target==NUT), before performing DAD
4NUT receives valid DAD NA (Target!=NUT), before performing DAD

1.2.2 DAD would Fail

These tests try to find incorrect behaivor, when NUT receives NS or NA while NUT is delaying transmision of DADNS.

If some tests result PASS, it means NUT works corrctly.

If some tests result FAIL, it dose not mean NUT works incorrectly, because of timing issue.

(Interface UP) -> (Receive NS or NA) -> (Send DADNS)
5NUT receives valid DAD NS (Target==NUT), before performing DAD
6NUT receives valid DAD NA (Target==NUT), before performing DAD

1.3 NUT receives NS or NA *AFTER* transmitting DAD NS

1.3.1 DAD would Succeed (Valid packets)
7NUT receives valid DAD NS (Target!=NUT), after transmitting DAD NS
8NUT receives valid NS (Src==Unicast), after transmitting DAD NS
9NUT receives valid NS (Src==Unicast, Dst==Unicast), after transmitting DAD NS
10NUT receives valid DAD NA (Target!=NUT), after transmitting DAD NS

1.3.2 DAD would Succeed (Invalid packets)
11NUT receives invalid DAD NS (Hoplimit==254), after transmitting DAD NS
12NUT receives invalid DAD NA (Hoplimit==254), after transmitting DAD NS
13NUT receives invalid DAD NS (Dst==Allnode), after transmitting DAD NS
14NUT receives invalid DAD NS (Src==Unspecified, Dst==Tentative), after transmitting DAD NS
15NUT receives invalid DAD NS (w/ SLL option), after transmitting DAD NS
16NUT receives invalid DAD NA (S Flag==1), after transmitting DAD NS

1.3.3 DAD would Fail (Valid packets)
17NUT receives valid DAD NS (Target==NUT), after transmitting DAD NS
18NUT receives valid DAD NA (Target==NUT), after transmitting DAD NS

1.3.4 DAD would Fail (Invalid packets, but SLL option should ignore)
19NUT receives invalid DAD NA (w/ SLL option), after transmitting DAD NS

2. Test for a Site-local Address and Global Address

2.1 Transmittion of RS and Receiption of RA (Normal case) Single Prefix
20NUT receives valid RA (Prefix==Global)
21NUT receives valid RA (Prefix==Site-local)

2.2 Receiption of Single RA with Multiple Prefix from a ROUTER (Normal case)
22NUT receives TWO valid prefix options (Prefix==Global, Prefix==Global) in single RA
23NUT receives TWO valid prefix options (Prefix==Global, Prefix==Site-local) in single RA

2.3 Receiption of Multiple RA with different Prefix from a ROUTER
24NUT receives TWO valid RA (Prefix==Global-0, Prefix==Global-1) from a ROUTER
25NUT receives TWO valid RA (Prefix==Global, Prefix==Site-local) from a ROUTER

2.4 Receiption of Multiple RA from Multiple ROUTER
26NUT receives TWO valid RA (Prefix==Global, Prefix==Global) from different ROUTERs
27NUT receives TWO valid RA (Prefix==Global, Prefix==Site-local) from different ROUTERs

2.5 Receiption of RA with Strange Parameter

2.5.1 IPv6 Header
28NUT receives INVALID RA (HopLimit=254)

2.5.2 PrefixOption
29NUT receives INVALID RA (Prefix Option has Autonomous==0)
30NUT receives INVALID RA (Prefix Option has VLT==0)
31NUT receives INVALID RA (Prefix Option has bigger PLT than VLT)
32NUT receives RA (Prefix Option has Prefix==LLA)
33NUT receives RA (Prefix Option has PrefixLen==48)
34NUT receives RA (Prefix Option has PrefixLen==96)
35NUT receives RA (Prefix Option has PrefixLen==130)

2.6 VLT Expiration check
36NUT receives RA twice. (VLT@1stRA == VLT@2ndRA, SLT < VLT@2ndRA)
37NUT receives RA twice. (VLT@1stRA < VLT@2ndRA, SLT < VLT@2ndRA)
38NUT receives RA three times. (VLT@1stRA > VLT@2ndRA (== VLT@3rdRA), SLT > VLT@2ndRA later SLT < VLT@3rdRA)