Subject: iSCSI: draft 7: IPv6 addresses

From: "Elliott, Robert" <[email-masked]>
Date: Mon, 30 Jul 2001 17:44:57 -0500

In iSCSI revision 7, section 1.2.7 (page 27) and appendix E (page 172)
describe specifying IPv6 addresses with "dotted decimal notation."

According to RFC2373 the preferred representation for IPv6 
addresses is hex numbers with colons, with a few variations:
1. The preferred form is x:x:x:x:x:x:x:x, where the 'x's are the
      hexadecimal values of the eight 16-bit pieces of the address.
2. ...The use of "::" indicates multiple groups of 16-bits of zeros.
      The "::" can only appear once in an address.  The "::" can also be
      used to compress the leading and/or trailing zeros in an address.
3. An alternative form that is sometimes more convenient when dealing
      with a mixed environment of IPv4 and IPv6 nodes is
      x:x:x:x:x:x:d.d.d.d, where the 'x's are the hexadecimal values of
      the six high-order 16-bit pieces of the address, and the 'd's are
      the decimal values of the four low-order 8-bit pieces of the
      address (standard IPv4 representation). 

I suggest that iSCSI follow these conventions.

The reference for section 11 would be:
[RFC2373] Hinden, R. and Deering, S.  "IP Version 6 Addressing 
    Architecture," July 1998.

This was mentioned on the IPS list back during revision 5:
http://www.pdl.cmu.edu/mailinglists/ips/mail/msg03735.html

apparently without resolution.
---
Rob Elliott, Compaq Server Storage
[email-masked]

---

From: "Julian Satran" <[email-masked]>
Date: Tue, 31 Jul 2001 10:07:31 +0300

Robert,

This was long on our ToDo list and we got to it recently (fixed according
to RFC2373 and RFC2732 ).

1.2.7 now reads:

1.1.1     Naming and Addressing

   All iSCSI initiators and targets are named.  Each target or initiator
   is known by an iSCSI Name.  The iSCSI Name is independent of the
   location of the initiator and target; two formats are provided that
   allow the use of existing naming authorities when generating them.
   One of these formats allows the use of a registered domain name as a
   naming authority; it is important not to confuse this with an address.
   The iSCSI Name is a UTF-8 text string, and is defined in [NDT].

   iSCSI Names are used to provide:

      - a target identifier for configurations that present multiple
      targets behind a single IP address and port.
      - a method to recognize multiple paths to the same device on
      different IP addresses and ports.
      - an identifier for source and destination targets for use in third
      party commands.
      - an identifier for initiators and targets to enable them to
      recognize each other regardless of IP address and port mapping on
      intermediary firewalls.

   The initiator MUST present both its iSCSI Initiator Name and the iSCSI
   Target Name to which it wishes to connect during the login phase.  The
   only exception is if a discovery session (see 1.4) is to be established;
   the iSCSI Initiator Name is still required, but the iSCSI Target Name
   may be ignored.  The key "SessionType=Discovery" is sent by the
   initiator at login to indicate a discovery session.

   The default name "iSCSI" is reserved, and is not used as an individual
   initiator or target name.

   iSCSI Names do not require special handling within iSCSI; they are
   opaque and case-sensitive for the purposes of comparison.

   Examples of iSCSI Names:

      iqn.5886.com.disk-vendor.diskarrays.sn.45678
      iqn.5886.com.gateways.yourtargets.24
      iqn.5886.com.os-vendor.plan9.cdrom.12345
      iqn.5886.com.service-provider.users.customer235.host90
      eui.02004567A425678D

   iSCSI targets also have addresses.  An iSCSI address specifies a single
   path on which to find an iSCSI target.

      <domain-name>[:<port>]

   Where <domain-name> is one of:

      - IPv4 address, in dotted decimal notation.  Assumed if the name
      contains exactly four numbers, separated by dots (.), where each
      number is in the range 0..255.
      - IPv6 address, in colon-separated hexadecimal notation, as specified
      in [RFC2373] and enclosed in "[" and "]" characters, as specified in
      [RFC2732].
      - Fully Qualified Domain Name (host name).  Assumed if the
      <domain-name> is neither an IPv4 nor an IPv6 address.

   The <port> in the address is optional; if specified it is the TCP port
   on which the target is listening for connections.  If <port> is not
   specified, a default port, to be assigned by IANA, will be   assumed.

   Examples of addresses:

      10.40.1.2
      [FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]
      [FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]
      [1080:0:0:0:8:800:200C:417A]
      [3ffe:2a00:100:7031::1]
      [1080::8:800:200C:417A]
      [::192.9.5.5]
      mydisks.example.com

   To assist in providing a more human-readable user interface for devices
   containing iSCSI targets and initiators, a target or initiator may also
   provide an alias.  This alias is a simple UTF-8 string, is not globally
   unique, and is never interpreted or used to identify an initiator or
   device within the iSCSI protocol.  Its use is described in [NDT].

   Third party commands require that protocol-specific addresses be
   communicated within SCSI CDBs.  The iSCSI protocol-specific address
   consists of an iSCSI name, or an iSCSI name + TCP address.  Work on this
   mechanism is in progress in T10.

   An initiator may discover the iSCSI Target Names to which it has access,
   along with their addresses, using the SendTargets text command, or by
   other techniques discussed in [NDT].

 Changes where made in other parts too (examples, SendTargets etc).

 Thanks,
 Julo

"Elliott, Robert" <[email-masked]> on 31-07-2001 01:44:57

Please respond to "Elliott, Robert" <[email-masked]>

To:   "[email-masked]'" <[email-masked]>
cc:
Subject:  iSCSI: draft 7: IPv6 addresses