Re: open-iscsi isns registration fails using Solaris isns server
Hi, The iSNS server refuses connection to a network entity (eid) if there exists an object already registered with the same network entity id but different iSCSI node type(i.e. one initator and other target or vice versa). But if the iSCSI node type is same (in case of two targets on same network entity) iSNS server accepts the connection. Conclusion: If we use iSNS discovery method, we cannot have initiator and target on the same m/c with the same DNS name. cheers,nikhil On Wed, Jan 14, 2009 at 3:26 PM, Nikhil Talpallikar < nikhil.talpalli...@gmail.com> wrote: > ok it worked after a reboot.but dropping eid does not make sense to > me. What might be the exact cause of this eid being the FQDN not to be > authorised??? > > On Tue, Jan 13, 2009 at 11:27 PM, Nikhil wrote: > >> >> Hi, >> >> It does not work for me :( >> I used target name instead of eid . but the same err HELP! >> >> cheers, >> nikhil >> >> On Jan 5, 2:21 am, Albert Pauw wrote: >> > For the watchfull observant,the patch is shown in reverse, >> > it should read: >> > >> > --- usr/isns.c 2009-01-04 12:11:27.0 +0100 >> > +++ usr/isns.c.new 2009-01-04 11:17:43.0 +0100 >> > @@ -162,10 +162,10 @@ >> > >> > length += isns_tlv_set(&tlv, ISNS_ATTR_ISCSI_NAME, strlen >> > (name), name); >> > length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_IDENTIFIER, >> > - strlen(eid), eid); >> > + strlen(name), name); >> > length += isns_tlv_set(&tlv, 0, 0, 0); >> > length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_IDENTIFIER, >> > - strlen(eid), eid); >> > + strlen(name), name);; >> > >> > length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_PROTOCOL, >> >sizeof(type), &type); >> >> >> > > > -- > If you fool me once shame on you. If you fool me twice shame on me. > > \|||/ > (o o) > ooO-(_)-Ooo > > Nikhil Talpallikar > --talli ;) > -- If you fool me once shame on you. If you fool me twice shame on me. \|||/ (o o) ooO-(_)-Ooo Nikhil Talpallikar --talli ;) --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to open-iscsi+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: open-iscsi isns registration fails using Solaris isns server
ok it worked after a reboot.but dropping eid does not make sense to me. What might be the exact cause of this eid being the FQDN not to be authorised??? On Tue, Jan 13, 2009 at 11:27 PM, Nikhil wrote: > > Hi, > > It does not work for me :( > I used target name instead of eid . but the same err HELP! > > cheers, > nikhil > > On Jan 5, 2:21 am, Albert Pauw wrote: > > For the watchfull observant,the patch is shown in reverse, > > it should read: > > > > --- usr/isns.c 2009-01-04 12:11:27.0 +0100 > > +++ usr/isns.c.new 2009-01-04 11:17:43.0 +0100 > > @@ -162,10 +162,10 @@ > > > > length += isns_tlv_set(&tlv, ISNS_ATTR_ISCSI_NAME, strlen > > (name), name); > > length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_IDENTIFIER, > > - strlen(eid), eid); > > + strlen(name), name); > > length += isns_tlv_set(&tlv, 0, 0, 0); > > length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_IDENTIFIER, > > - strlen(eid), eid); > > + strlen(name), name);; > > > > length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_PROTOCOL, > >sizeof(type), &type); > > > -- If you fool me once shame on you. If you fool me twice shame on me. \|||/ (o o) ooO-(_)-Ooo Nikhil Talpallikar --talli ;) --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to open-iscsi+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: open-iscsi isns registration fails using Solaris isns server
Hi, It does not work for me :( I used target name instead of eid . but the same err HELP! cheers, nikhil On Jan 5, 2:21 am, Albert Pauw wrote: > For the watchfull observant,the patch is shown in reverse, > it should read: > > --- usr/isns.c 2009-01-04 12:11:27.0 +0100 > +++ usr/isns.c.new 2009-01-04 11:17:43.0 +0100 > @@ -162,10 +162,10 @@ > > length += isns_tlv_set(&tlv, ISNS_ATTR_ISCSI_NAME, strlen > (name), name); > length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_IDENTIFIER, > - strlen(eid), eid); > + strlen(name), name); > length += isns_tlv_set(&tlv, 0, 0, 0); > length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_IDENTIFIER, > - strlen(eid), eid); > + strlen(name), name);; > > length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_PROTOCOL, > sizeof(type), &type); --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to open-iscsi+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: open-iscsi isns registration fails using Solaris isns server
For the watchfull observant,the patch is shown in reverse, it should read: --- usr/isns.c 2009-01-04 12:11:27.0 +0100 +++ usr/isns.c.new 2009-01-04 11:17:43.0 +0100 @@ -162,10 +162,10 @@ length += isns_tlv_set(&tlv, ISNS_ATTR_ISCSI_NAME, strlen (name), name); length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_IDENTIFIER, - strlen(eid), eid); + strlen(name), name); length += isns_tlv_set(&tlv, 0, 0, 0); length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_IDENTIFIER, - strlen(eid), eid); + strlen(name), name);; length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_PROTOCOL, sizeof(type), &type); --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to open-iscsi+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: open-iscsi isns registration fails using Solaris isns server
I found the problem. The problem is in the Entity Identifier. As it is now, it's just the IP number of the initiator. The Solaris initiator reports then Entity Identifier with its iqn name. If I change usr/isns.c like this: --- usr/isns.c.new 2009-01-04 12:11:27.0 +0100 +++ usr/isns.c 2009-01-04 11:17:43.0 +0100 @@ -162,10 +162,10 @@ length += isns_tlv_set(&tlv, ISNS_ATTR_ISCSI_NAME, strlen (name), name); length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_IDENTIFIER, - strlen(name), name); + strlen(eid), eid); length += isns_tlv_set(&tlv, 0, 0, 0); length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_IDENTIFIER, - strlen(name), name); + strlen(eid), eid); length += isns_tlv_set(&tlv, ISNS_ATTR_ENTITY_PROTOCOL, sizeof(type), &type); both the Linux isns server as well as the Solaris isns server registers the initiator properly. So what is this parameter (Entity Identifier) according to the rfc: --- 6.2.1. Entity Identifier (EID) The Entity Identifier (EID) is variable-length UTF-8 encoded NULL- terminated text-based description for a Network Entity. This key attribute uniquely identifies each Network Entity registered in the iSNS server. The attribute length varies from 4 to 256 bytes (including the NULL termination), and is a unique value within the iSNS server. If the iSNS client does not provide an EID during registration, the iSNS server SHALL generate one that is unique within the iSNS database. If an EID is to be generated, then the EID attribute value in the registration message SHALL be empty (0 length). The generated EID SHALL be returned in the registration response. In environments where the iSNS server is integrated with a DNS infrastructure, the Entity Identifier may be used to store the Fully Qualified Domain Name (FQDN) of the iSCSI or iFCP device. FQDNs of greater than 255 bytes MUST NOT be used. If FQDNs are not used, the iSNS server can be used to generate EIDs. EIDs generated by the iSNS server MUST begin with the string "isns:". iSNS clients MUST NOT generate and register EIDs beginning with the string "isns:". This field MUST be normalized according to the nameprep template [NAMEPREP] before it is stored in the iSNS database. --- The code to create the eid in open-iscsi using the IP number does not work in my case as the IP number is not registered in the hosts file or DNS. I checked this putting the IP number in the hosts file. Indeed the eid is now properly translated to its DNS name (aka hosts file name). Unfortunately, the OpenSolaris isns server refused this with a "Source Unauthorized (8)". So I added the same IP entry to the /etc/hosts file of the OpenSolaris isns server. A ping to my initiator showed that that worked. However, an nslookup on the OpenSolaris did not, OpenSolaris doesn't use the hosts file in this case. And (assumingly) the isns also does not. The registration fails. I propose to drop the eid generation code, and just use the iSCSI name (iqn) in its place. That seems to work all the time. Comments? Albert --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to open-iscsi+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
open-iscsi isns registration fails using Solaris isns server
I am using the isns server of OpenSolaris and version 2.0-870 of open- iscsi on Fedora 9. Unfortunately, the isns server refuses the registration of open-iscsi. The response of OpenSolaris iSNS is ErrorCode: Invalid Registration (3). The isns payload sent by Fedora 9 is: iSCSI Name: iqn.1994-05.com.fedora:56a2fe6ddc Entity Identifier: 10.0.0.2 Attribute Tag: Delimiter (0) Attribute Lenght: 0 Entity Identifier: 10.0.0.2 Portal IP Address: :::10.0.0.2 (:::10.0.0.2) Portal Port: 34666 ESI Port: 46481 iSCSI Name: iqn.1994-05.com.fedora:56a2fe6ddc iSCSI Node Type: 0x0002 Initiator iSCSI Alias: Fedoar 9 open-iscsi initiator Two things are looking odd: the iSCSI Name is sent twice, and the Entity Identifier is sent twice. Weirdly enough I noticed that open-iscsi on Fedora 10 works fine. Has anything changed in the code between F9 and F10? Albert --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to open-iscsi+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---