Convenção de Nomenclatura IQN

9

Eu já vi muitas informações sobre como os IQNs devem ser formatados, mas não há muitas informações sobre como construí-los. Eu sou uma espécie de novato no que diz respeito ao iSCSI, e eu o tenho funcionando, mas estou me perguntando se eu deveria estar inventando essas coisas ou se há um bom motivo para seguir algum tipo de padrão.

Como exemplo, é assim que (wikipedia http://en.wikipedia.org/wiki/ISCSI#Addressing ) diz que você deve formatar IQNs.

              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]

Minha pergunta é particularmente: por que a data? Pode ser qualquer coisa, significa alguma coisa? Existe alguma aplicação aqui? Será que algum dia chegarei a um ponto em que a data 'errada' me morderá?

O exemplo de domínio é revertido (como o DNS é) por um motivo? Se eu tiver um nome de domínio como starkindustries.pri, meu iqn se parecerá com:

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

Isso depende do DNS? (a experiência me diz que não, mas pode estar falhando de maneira sublime). E se for dependente do DNS, devo usar um nome de host ou apenas o meu nome de domínio? ie Jarvis.starkindustries.pri ou apenas starkindustries.pri?

Além disso, se eu usar um endereço IP (que alguns sugerem, se você não estiver usando DNS, o que é mais confuso porque funciona sem DNS), você o reverterá como o DNS? ie 10.1.2.0

iqn.2006-05.0.2.1.10:Linux:array0 

Além disso, você usa um endereço de host (do destino iSCSI?) Ou um endereço de rede.

Existe alguma imposição da 'string definida pela autoridade de nomeação "example.com"', ou seja, existe um motivo pelo qual não posso usar blahblahblah vs algo útil? Sei que um nome útil é mais descritivo, mas existem razões técnicas para isso? Também dou um grande salto de fé que sou a 'autoridade de nomeação'.

Acho que mais do que tudo, estou inventando um monte de coisas para esses IQNs, e eles parecem estar funcionando. Eu só quero saber pelo menos onde encontrar algumas práticas recomendadas quando se trata da geração real dos iqns. Só estou considerando que um dia não serei o único encarregado do armazenamento, então preciso passar alguns padrões, ou vou fazer uma bagunça, ou alguém mais fará uma bagunça quando é necessário um novo bloco de IQNs.

Steve Butler
fonte
A página wiki mencionada explica a parte da data "data (aaaa-mm) em que a autoridade de nomes tomou posse do domínio". Por que - faz sentido. Significa o que diz. Deve ser o que diz que será. Não use dados incorretos. ?
precisa saber é o seguinte
Eu sou a autoridade de nomeação. Que data eu uso? Quando eu configuro o servidor DNS. Quando o nome DNS foi registrado pela primeira vez? Quando os Yankees venceram pela última vez a série mundial?
Steve Butler
Não sei nada sobre o resto, mas a razão pela qual o nome de domínio é reverso é muito simples: passa da parte menos específica para a mais específica. O mesmo vale para o motivo pelo qual o formato da data tem o ano primeiro e depois o mês. Essa também é uma das maneiras mais comuns de configurar namespaces de código em linguagens que os suportam, como Java, C #, PHP. Veja Wikipedia .
Moshe Katz
Eu acho que recebo as razões pelas quais poderia ser, mas parece muito arbitrário. Parece não haver aplicação, apenas diretrizes. As diretrizes são ótimas, mas se eu puder me safar do iqn: host: Target: Lun, eu irei.
Steve Butler

Respostas:

7

A lógica por trás disso na RFC 3720 é que, acima de tudo, os IQNs devem ser únicos. A data prevista é uma garantia razoável de que a entidade que controlava o nome de domínio representava (no campo de autenticação de nomes) na época uma "autoridade de nomes" que poderia garantir a exclusividade - os nomes de domínio mudam de mãos o tempo todo e uma vez que são as únicas outras coisas únicas O primeiro passo é o RHS: (que é gratuito para todos), já pode haver um Linux: array0 ou algo similarmente imaginativo flutuando.

A RFC 3720 usa o (muitas vezes divertido) DEVE definir a data como AAAA-MM e entra em detalhes perniciosos sobre o formato e o tempo de uso precisos, etc. ) Os policiais da RFC vão arrombar sua porta se você ligar para o iqn.screwyouRFC3720 de destino? Isso vai quebrar a internet? Não.

Não tem absolutamente nada a ver com o DNS, o DNS é apenas um sistema hierárquico prático e delegado que já leva você de qualquer TLD a um único dispositivo, se desejar, por isso é uma maneira fácil de identificar partes responsáveis.

Pessoalmente, gosto de garantir que o IQN diga algo sobre quando, quem, o que, por que e como os dados são importantes; portanto, quando estou procurando espaço em algum lugar, sei a quem perguntar.

Goste ou não, você é a autoridade de nomes.

quadruplebucky
fonte
Ótima explicação. Eu percebo que sou a autoridade de nomeação. Felizmente / infelizmente os NetApps que eu uso na produção ficam muito exigentes quanto à aderência ao RFC (enquanto minha caixa de teste do linux parece não se importar), até o ponto em que eu tenho que usar com / net / org no iqn. É frustrante, especialmente porque eu gostaria de usar nomes mais detalhados e úteis. iqn. {Data arbitrária}. {hostname}: {Matriz} {Lun}. Pessoalmente, eu também prefiro tê-lo para a frente do que para trás. é muito mais fácil de lembrar que o jarvis.starkindustries.pri anfitrião, tem uma iqn de iqn.2012-01.jarvis.starkindustries.pri
Steve Butler