# NAME

      RRRepliedStatuCode.seq - Requesting Router has received reply message with Status Code option NoBinding

# TARGET

      Router for DHCP Client

# SYNOPSIS

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

# TOPOLOGY

>        TN
>         |                     ISP site
>       --+----+--------------- Link0
>              |
>             NUT     Host
>              |       |        Customer site
>       -------+-------+------- Link1 3ffe:501:fff7:XXXX::/64

> `TN` | `Link-local` | `fe80::200:ff:fe00:a0a0`
> `Ether` | `00:00:00:00:a0:a0`
> `Delegate Prefix` | `3ffe:501:fff7::`
> `Prefix Length` | `48`
> `Host` | `Link-local` | `fe80::200:ff:fe00:101`
> `ether` | `00:00:00:00:01:01`

# INITIALIZATION

1. NUT sets up Prefix Delegation.
2. NUT sets up Router Advertisement to the interface by the side of downstream.

    Tester as Server          Target as Client        Tester as Host
        |                           |                           |
        |<--------------------------|                           |
        |   DHCP Solicit message    |                           |
        |                           |                           |
        |-------------------------->|                           |
        |   DHCP Advertise message  |                           |
        |                           |                           |
        |<--------------------------|                           |
        |   DHCP Request message    |                           |
        |                           |                           |
        |-------------------------->|                           |
        |   DHCP Reply message      |                           |
        |                           |                           |
        |           :               |                           |
        |  Continue waiting until   |                           |
        |  T1 passed                |                           |
        |           :               |                           |
        |                           |                           |
        |<--------------------------|                           |
        |   DHCP Renew message      |                           |
        |                           |                           |

      1. Wait DHCP Solicit message
      2. Send DHCP Advertise message
      3. Wait DHCP Request message
      4. Send DHCP Reply message
      5. Wait DHCP Renew message

    Addresses

    Solicit, Request, Renew messages

          Src
          NUT link-local address

          Dst
          All_DHCP_Relay_Agents_and_Servers

    All_DHCP_Relay_Agents_and_Servers FF02::1:2

    Advertise, Reply message

          Src
          fe80::200:ff:fe00:a0a0

          Dst
          NUT link-local address

    UDP Ports

          Clients listen for DHCP messages on UDP port 546
          Server listen for DHCP messages on UDP port 547

    DHCP Messages

    DHCP Solicit message

          msg-type
          SOLICIT(1)

          transaction-id
          The transaction ID for this message exchange

          options

          Client Identifier Option (MUST)

          IA_PD Option (MUST)

          Code
          33 (TBD)

          IAID
          The unique identifier which client specified

          T1
          ANY

          T2
          ANY

          Elapsed Time Option (MUST)

          elapsed-time
          ANY

          Option Request Option (Optional)

    DHCP Advertise message

          msg-type
          ADVERTISE(2)

          transaction-id
          The same transaction ID previous message

          options

          Client Identifier Option

          Server Identifier Option

          DUID Contents type
          1 Link-layer address plus time

          hardware type
          1 Ether

          time
          Time which the server included

          link-layer address
          00:00:00:00:a0:a0

          IA_PD Option

          Code
          33 (TBD)

          IAID
          Unique identifier which client specified

          T1
          40

          T2
          64

          IA_PD Prefix Option

          Code
          34 (TBD)

          preferred-lifetime
          80

          valid-lifetime
          120

          prefix-length
          48

          IPv6 prefix
          3ffe:501:fff7::

    DHCP Request message with IA_PD option

          msg-type
          REQUEST(3)

          transaction-id
          The transaction ID for this message exchange

          options

          Client Identifier Option  (MUST)

          Server Identifier Option  (MUST)

          DUID Contents type
          1 Link-layer address plus time

          hardware type
          1 Ether

          time
          Time which the server included

          link-layer address
          00:00:00:00:a0:a0

          IA_PD Option  (MUST)

          Code
          33 (TBD)

          IAID
          Unique identifier which client specified

          T1
          ANY

          T2
          ANY

          IA_PD Prefix Option (Optional)

          Code
          34 (TBD)

          preferred-lifetime
          ANY

          valid-lifetime
          ANY

          prefix-length
          48

          IPv6 prefix
          3ffe:501:fff7::

            Elapsed Time Option  (MUST)

          elapsed-time
          ANY

           Option Request Option (Optional)

    DHCP Reply message with IA_PD option including IA_Prefix option

          msg-type
          REPLY(7)

          transaction-id
          The same transaction ID previous message

          options

          Client Identifier Option

          Server Identifier Option

          DUID Contents type
          1 Link-layer address plus time

          hardware type
          1 Ether

          time
          Time which the server included

          link-layer address
          00:00:00:00:a0:a0

          IA_PD Option

          Code
          33 (TBD)

          IAID
          Unique identifier which client specified

          T1
          40

          T2
          64

          Code
          34 (TBD)

          preferred-lifetime
          80

          valid-lifetime
          120

          prefix-length
          48

          IPv6 prefix
          3ffe:501:fff7::

    DHCP Renew message with IA_PD option including IA_PD Prefix option

          msg-type
          RENEW(5)

          transaction-id
          The transaction ID for this message exchange

          options

          Client Identifier Option  (MUST)

          Server Identifier Option  (MUST)

          DUID Contents type
          1 Link-layer address plus time

          hardware type
          1 Ether

          time
          Time which the server included

          link-layer address
          00:00:00:00:a0:a0

          IA_PD Option  (MUST)

          Code
          33 (TBD)

          IAID
          Unique identifier which client specified

          T1
          ANY

          T2
          ANY

          IA_PD Prefix Option  (MUST)

          Code
          34 (TBD)

          preferred-lifetime
          ANY

          valid-lifetime
          ANY

          prefix-length
          48

          IPv6 prefix
          3ffe:501:fff7::

            Elapsed Time Option  (MUST)

          elapsed-time
          ANY

           Option Request Option (Optional)

# TEST PROCEDURE

    Tester as Server          Target as Client        Tester as Host
        |                           |                           |
        |-------------------------->|                           |
        |   DHCP Reply message      |                           |
        |   with Status Code option |                           |
        |   NoBinding               |                           |
        |                           |                           |
        |<--------------------------|                           |
        |   Judgment #1             |                           |
        |   DHCP Request message    |                           |
        |                           |                           |
        |-------------------------->|                           |
        |   DHCP Reply message      |                           |
        |                           |                           |
        |           :               |                           |
        |  Continue waiting until   |                           |
        |  T1 passed                |                           |
        |           :               |                           |
        |                           |                           |
        |<--------------------------|                           |
        |   DHCP Renew message      |                           |
        |                           |                           |
        |           :               |                           |
        |  Continue waiting until   |                           |
        |  T2 passed                |                           |
        |           :               |                           |
        |                           |                           |
        |<--------------------------|                           |
        |   DHCP Rebind message     |                           |
        |                           |                           |
        |-------------------------->|                           |
        |   DHCP Reply message      |                           |
        |   with Status Code option |                           |
        |   NoBinding               |                           |
        |                           |                           |
        |<--------------------------|                           |
        |   Judgment #3             |                           |
        |   DHCP Request message    |                           |
        |                           |                           |
        |-------------------------->|                           |
        |   DHCP Reply message      |                           |
        |                           |                           |
        v                           v                           v

      1. Send DHCP Reply message with Status Code option NoBinding
      2. Wait DHCP Request message
      3. Send DHCP Reply message
      4. Wait DHCP Renew message
      5. Wait DHCP Rebind message
      6. Send DHCP Reply message with Status Code option NoBinding
      7. Wait DHCP Request message
      8. Send DHCP Reply message

    Addresses

    Request, Renew, Rebind messages

          Src
          NUT link-local address

          Dst
          All_DHCP_Relay_Agents_and_Servers

    All_DHCP_Relay_Agents_and_Servers FF02::1:2

    Advertise, Reply message

          Src
          fe80::200:ff:fe00:a0a0

          Dst
          NUT link-local address

    UDP Ports

          Clients listen for DHCP messages on UDP port 546
          Server listen for DHCP messages on UDP port 547

    DHCP Messages

    DHCP Reply message with Status Code option including NoBinding

          msg-type
          REPLY(7)

          transaction-id
          The same transaction ID previous message

          options

          Client Identifier Option

          Server Identifier Option

          DUID Contents type
          1 Link-layer address plus time

          hardware type
          1 Ether

          time
          Time which the server included

          link-layer address
          00:00:00:00:a0:a0

          IA_PD Option

          Code
          33 (TBD)

          IAID
          Unique identifier which client specified

          T1
          0

          T2
          0

          Status Code Option

          status-code
          3 NoBinding

          status-message
          0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56

    DHCP Request message with IA_PD option

          msg-type
          REQUEST(3)

          transaction-id
          The transaction ID for this message exchange

          options

          Client Identifier Option  (MUST)

          Server Identifier Option  (MUST)

          DUID Contents type
          1 Link-layer address plus time

          hardware type
          1 Ether

          time
          Time which the server included

          link-layer address
          00:00:00:00:a0:a0

          IA_PD Option  (MUST)

          Code
          33 (TBD)

          IAID
          Unique identifier which client specified

          T1
          ANY

          T2
          ANY

          IA_PD Prefix Option (Optional)

          Code
          34 (TBD)

          preferred-lifetime
          ANY

          valid-lifetime
          ANY

          prefix-length
          48

          IPv6 prefix
          3ffe:501:fff7::

            Elapsed Time Option  (MUST)

          elapsed-time
          ANY

           Option Request Option (Optional)

    DHCP Reply message is same above

    DHCP Renew message is same above

    DHCP Rebind message with IA_PD option including IA_PD Prefix option

          msg-type
          REBIND(6)

          transaction-id
          The transaction ID for this message exchange

          options

          Client Identifier Option (MUST)

          IA_PD Option  (MUST)

          Code
          33 (TBD)

          IAID
          Unique identifier which client specified

          T1
          ANY

          T2
          ANY

          IA_PD Prefix Option (MUST)

          Code
          34 (TBD)

          preferred-lifetime
          ANY

          valid-lifetime
          ANY

          prefix-length
          48

          IPv6 prefix
          3ffe:501:fff7::

            Elapsed Time Option  (MUST)

          elapsed-time
          ANY

           Option Request Option (Optional)

    DHCP Reply message with Status Code option including NoBinding is same above.

    DHCP Request message with IA_PD option

          msg-type
          REQUEST(3)

          transaction-id
          The transaction ID for this message exchange

          options

          Client Identifier Option  (MUST)

          Server Identifier Option  (MUST)

          DUID Contents type
          1 Link-layer address plus time

          hardware type
          1 Ether

          time
          Time which the server included

          link-layer address
          00:00:00:00:a0:a0

          IA_PD Option  (MUST)

          Code
          33 (TBD)

          IAID
          Unique identifier which client specified

          T1
          ANY

          T2
          ANY

          IA_PD Prefix Option (Optional)

          Code
          34 (TBD)

          preferred-lifetime
          ANY

          valid-lifetime
          ANY

          prefix-length
          48

          IPv6 prefix
          3ffe:501:fff7::

            Elapsed Time Option  (MUST)

          elapsed-time
          ANY

           Option Request Option (Optional)

    DHCP Reply message is same above.

# JUDGEMENT

      1. DHCP Request message is received. NUT sends Request message to reestablish an IA_PD with the server.

      2. DHCP Request message is received. NUT sends Request message to reestablish an IA_PD with the server.

# TERMINATION

      N/A

# REFERENCE

    draft-ietf-dhc-dhcpv6-28.txt

    18. DHCP Client-Initiated Configuration Exchange

    18.1. Client Behavior

    18.1.8. Receipt of Reply Messages

       Upon the receipt of a valid Reply message in response to a Solicit
       (with a Rapid Commit option), Request, Confirm, Renew, Rebind or
       Information-request message, the client extracts the configuration
       information contained in the Reply.  The client MAY choose to report
       any status code or message from the status code option in the Reply
       message.

       The client SHOULD perform duplicate address detection [21] on each
       of the addresses in any IAs it receives in the Reply message before
       using that address for traffic.  If any of the addresses are found
       to be in use on the link, the client sends a Decline message to the
       server as described in section 18.1.7.

       If the Reply was received in response to a Solicit (with a Rapid
       Commit option), Request, Renew or Rebind message, the client updates
       the information it has recorded about IAs from the IA options
       contained in the Reply message:

        -  Record T1 and T2 times

        -  Add any new addresses in the IA option to the IA as recorded by
           the client

        -  Update lifetimes for any addresses in the IA option that the
           client already has recorded in the IA

        -  Discard any addresses from the IA as recorded by the client that
           have a valid lifetime of 0 in the IA Address option

       Management of the specific configuration information is detailed in
       the definition of each option, in section 22.

       If the client receives a Reply message with a Status Code containing
       UnspecFail, the server is indicating that it was unable to process
       the message due to an unspecified failure condition.  If the client
       retransmits the original message to the same server to retry the
       desired operation, the client MUST limit the rate at which it
       retransmits the message and limit the duration of the time during
       which it retransmits the message.

       When the client receives a Reply message with a Status Code option
       with value UseMulticast, the client records the receipt of the
       message and sends subsequent messages to the server through the
       interface on which the message was received using multicast.  The
       client resends the original message using multicast.

       When the client receives a NotOnLink status from the server in
       response to a Confirm message, the client performs DHCP server
       solicitation as described in section 17 and client-initiated
       configuration as described in section 18.  If the client receives any
       Reply messages that do not indicate a NotOnLink status, the client
       can use the addresses in the IA and ignore any messages that do
       indicate a NotOnLink status.

       When the client receives a NotOnLink status from the server in
       response to a Request, the client can either re-issue the Request
       without specifying any addresses or restart the DHCP server discovery
       process (see section 17).

       When the client receives a NoAddrsAvail status from the server in
       response to a Request, the client can either try another server
       (perhaps restarting the DHCP server discovery process) or use the
       Information-Request to obtain configuration parameters only.

       When the client receives a NoBinding status in an IA from the server
       in response to a Renew message or a Rebind message, the client sends
       a Request to reestablish an IA with the server.

       When the client receives a valid Reply message in response to a
       Release message, the client considers the Release event completed,
       regardless of the Status Code option(s) returned by the server.

       When the client receives a valid Reply message in response to a
       Decline message, the client considers the Decline event completed,
       regardless of the Status Code option(s) returned by the server.

    24.4. Status Codes

       IANA is requested to record the status codes defined in the following
       table.  IANA is requested to manage the definition of additional
       status codes in the future.

       Name         Code Description
       ----------   ---- -----------
       NoBinding       3 Client record (binding) unavailable

    A. Appearance of Options in Message Types

       The following table indicates with a "*" the options are allowed in
       each DHCP message type:

            Client Server IA_NA  Option Pref  Time Relay Auth. Server
              ID     ID   IA_TA  Request            Msg.       Unica.
    Request   *      *      *      *           *           *

             Status  Rap. User  Vendor Vendor Inter. Recon. Recon.
              Code  Comm. Class Class  Spec.    ID    Msg.  Accept
    Request                 *     *      *                    *

# SEE ALSO

      perldoc V6evalTool