Convención de nomenclatura de IQN

9

He visto mucha información sobre cómo se deben formatear los IQN, pero no hay mucha información sobre cómo construirlos. Soy un poco nuevo cuando se trata de iSCSI, y lo tengo funcionando, pero me pregunto si debería estar inventando esto, o si hay una buena razón para seguir algún tipo de estándar.

Como ejemplo, así es como (wikipedia http://en.wikipedia.org/wiki/ISCSI#Addressing ) dice que debe formatear los IQN.

              Naming     String defined by
 Type  Date    Auth      "example.com" naming authority
+--++-----+ +---------+ +-----------------------------+
|  ||     | |         | |                             |     

iqn.1992-01.com.example:storage:diskarrays-sn-a8675309
iqn.1992-01.com.example
iqn.1992-01.com.example:storage.tape1.sys1.xyz
iqn.1992-01.com.example:storage.disk2.sys1.xyz[10]

Mi pregunta es particularmente, ¿Por qué la fecha? ¿Puede ser cualquier cosa? ¿Significa algo? ¿Hay alguna aplicación aquí? ¿Alguna vez me encontraré con un punto en el que poner la fecha 'incorrecta' me morderá?

¿Se invierte el ejemplo de dominio (como lo es dns) por alguna razón? Si tengo un nombre de dominio como starkindustries.pri, mi iqn se vería así:

iqn.2006-05.pri.starkindustries:Linux:array0

¿Depende esto del DNS? (la experiencia me dice que no lo es, pero podría estar fallando de manera sublime) Y si depende del DNS, ¿uso un nombre de host o solo mi nombre de dominio? es decir, Jarvis.starkindustries.pri o simplemente starkindustries.pri?

Además, si uso una dirección IP (que algunos sugieren si no está usando DNS, lo cual es más confuso porque funciona sin DNS), ¿la revierte como lo hace dns? es decir, 10.1.2.0

iqn.2006-05.0.2.1.10:Linux:array0 

Además, ¿utiliza una dirección de host (del objetivo iSCSI?) O una dirección de red.

¿Existe alguna aplicación de la 'cadena definida por la autoridad de nombres "example.com", es decir, hay alguna razón por la que no puedo usar blahblahblah frente a algo útil? Me doy cuenta de que un nombre útil es más descriptivo, pero ¿hay alguna razón técnica para esto? También doy un gran salto de fe de que soy la 'autoridad de nombres'.

Supongo que más que nada, estoy inventando un montón de cosas para estos IQN, y parecen estar funcionando. Solo quiero saber al menos dónde encontrar algunas mejores prácticas en lo que respecta a la generación real de los iqns. Solo estoy considerando que algún día no voy a ser el único a cargo del almacenamiento, por lo que necesito pasar algunos estándares, o voy a hacer un desastre, o que alguien más lo haga cuando Se necesita un nuevo bloque de IQN.

Steve Butler
fuente
La página wiki a la que hizo referencia explica la parte de la fecha "fecha (aaaa-mm) que la autoridad de denominación tomó posesión del dominio". Por qué tiene sentido. Significa lo que dice. Debería ser lo que dice que será. No uses datos incorrectos. ?
CrackerJack9
Soy la autoridad de nombres. ¿Que fecha uso? Cuando configuro el servidor DNS. ¿Cuándo se registró por primera vez el nombre DNS? ¿Cuándo ganaron por última vez los Yankees la serie mundial?
Steve Butler
No sé nada del resto, pero la razón por la que el nombre de dominio es al revés es muy simple: va de la parte menos específica a la más específica. Lo mismo es cierto acerca de por qué el formato de fecha tiene primero el año, luego el mes. Esta es también una de las formas más comunes de configurar espacios de nombres de código en lenguajes que los admiten, como Java, C #, PHP. Ver Wikipedia .
Moshe Katz
Supongo que entiendo las razones por las que podría ser, pero parece muy arbitrario. Parece que no hay cumplimiento, solo pautas. Las pautas son geniales, pero si puedo salirme con iqn: host: Target: Lun lo haré.
Steve Butler

Respuestas:

7

La razón detrás de esto en RFC 3720 es que, sobre todo, los IQN deberían ser únicos. La fecha antepuesta es una garantía razonable de que la entidad que controlaba el nombre de dominio representado (en el campo de autenticación de nombres) en ese momento era una "autoridad de nombres" que podía garantizar la unicidad: los nombres de dominio cambian de manos todo el tiempo y dado que las únicas otras cosas únicas continuar con el RHS de eso primero: (que es un juego gratuito) ya podría haber un Linux: array0 o algo similar imaginativo flotando.

RFC 3720 utiliza el (a menudo divertido) DEBE definir la fecha como AAAA-MM y entra en detalles perniciosos sobre el formato preciso y la hora de uso, etc. Me imagino que esto es simplemente para simplificar el análisis y la clasificación (longitudes de campo fijas, siempre en aumento ) ¿Los policías de RFC van a romper tu puerta si llamas a tu objetivo iqn.screwyouRFC3720? ¿Romperá internet? No.

No tiene absolutamente nada que ver con DNS, DNS es simplemente un sistema jerárquico, delegado y práctico que ya lo lleva de cualquier TLD a un solo dispositivo, si lo desea, por lo que es una manera fácil de identificar a las partes responsables.

Personalmente, me gusta asegurarme de que el IQN diga algo sobre cuándo, quién, qué, por qué y qué tan importantes son los datos, así que cuando busco espacio en algún lugar sé a quién preguntar.

Te guste o no, eres la autoridad de nomenclatura.

quadruplebucky
fuente
Gran explicación Me doy cuenta de que soy la autoridad de nombres. Afortunadamente / Desafortunadamente, las NetApps que uso en producción se vuelven muy exigentes al apegarse al RFC (mientras que mi caja de prueba de Linux no parece importarme), incluso hasta el punto en que tengo que usar com / net / org en el iqn. Es frustrante, especialmente porque me gustaría usar nombres más detallados y útiles. es decir, iqn. {Fecha arbitraria}. {hostname}: {Array} {Lun}. Personalmente, también prefiero tenerlo hacia adelante que hacia atrás. es mucho más fácil recordar que el anfitrión jarvis.starkindustries.pri, tiene un iqn de iqn.2012-01.jarvis.starkindustries.pri
Steve Butler