IQN-Namenskonvention

9

Ich habe viele Informationen darüber gesehen, wie IQNs formatiert werden sollten, aber es gibt nicht viele Informationen darüber, wie man sie erstellt. Ich bin eine Art Neuling, wenn es um iSCSI geht, und ich habe es funktioniert, aber ich frage mich, ob ich mir dieses Zeug nur ausdenken sollte oder ob es einen guten Grund gibt, einem Standard zu folgen.

So sagt beispielsweise (Wikipedia http://en.wikipedia.org/wiki/ISCSI#Addressing ), dass Sie IQNs formatieren sollten.

              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]

Meine Frage ist insbesondere, warum das Datum? Kann es etwas sein, bedeutet es etwas? Gibt es hier irgendwelche Durchsetzungsmaßnahmen? Werde ich jemals auf einen Punkt stoßen, an dem es mich beißen wird, wenn ich das falsche Datum einnehme?

Ist das Domain-Beispiel aus einem bestimmten Grund umgekehrt (wie DNS)? Wenn ich einen Domainnamen wie starkindustries.pri habe, würde mein iqn so aussehen:

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

Kommt es auf DNS an? (Die Erfahrung zeigt mir, dass dies nicht der Fall ist, aber es könnte auf subtile Weise fehlschlagen.) Und wenn es von DNS abhängig ist, verwende ich einen Hostnamen oder nur meinen Domainnamen? dh Jarvis.starkindustries.pri oder nur starkindustries.pri?

Auch wenn ich eine IP-Adresse verwende (was einige vorschlagen, wenn Sie kein DNS verwenden, was verwirrender ist, weil es ohne DNS funktioniert), kehren Sie es um, wie Sie DNS tun? dh 10.1.2.0

iqn.2006-05.0.2.1.10:Linux:array0 

Verwenden Sie außerdem eine Hostadresse (des iSCSI-Ziels?) Oder eine Netzwerkadresse.

Gibt es eine Durchsetzung der von der Namensbehörde "example.com" definierten Zeichenfolge, dh gibt es einen Grund, warum ich blahblahblah nicht gegen etwas Nützliches verwenden kann? Mir ist klar, dass ein nützlicher Name aussagekräftiger ist, aber gibt es dafür technische Gründe? Ich mache auch einen großen Vertrauenssprung, dass ich die "Namensautorität" bin.

Ich denke mehr als alles andere, ich mache ein paar Sachen für diese IQNs und sie scheinen zu funktionieren. Ich möchte nur wissen, wo ich einige Best Practices finden kann, wenn es um die tatsächliche Generierung der iqns geht. Ich denke nur daran, dass ich eines Tages nicht der einzige sein werde, der für die Speicherung zuständig ist, also muss ich einige Standards weitergeben, oder ich werde entweder ein Chaos anrichten oder jemand anderen ein Chaos anrichten lassen, wenn Ein neuer Block von IQNs wird benötigt.

Steve Butler
quelle
Auf der Wiki-Seite, auf die Sie verwiesen haben, wird der Datumsteil "Datum (JJJJ-MM), an dem die Benennungsbehörde das Eigentum an der Domain übernommen hat" erläutert. Warum - es macht Sinn. Es bedeutet, was es sagt. Es sollte so sein, wie es heißt. Verwenden Sie keine falschen Daten. ?
CrackerJack9
Ich bin die Namensbehörde. Welches Datum verwende ich? Wenn ich den DNS-Server einrichte. Wann wurde der DNS-Name zum ersten Mal registriert? Wann haben die Yankees zuletzt die Weltmeisterschaft gewonnen?
Steve Butler
Ich weiß nichts über den Rest, aber der Grund, warum der Domainname rückwärts ist, ist sehr einfach: Er geht vom am wenigsten spezifischen Teil zum spezifischsten. Gleiches gilt dafür, warum das Datumsformat zuerst das Jahr und dann den Monat hat. Dies ist auch eine der häufigsten Methoden zum Einrichten von Code-Namespaces in Sprachen, die diese unterstützen, wie Java, C #, PHP. Siehe Wikipedia .
Moshe Katz
Ich denke, ich verstehe die Gründe, warum es sein könnte , aber es scheint nur sehr willkürlich. Es scheint keine Durchsetzung zu geben, nur Richtlinien. Richtlinien sind großartig, aber wenn ich mit iqn: host: Target: Lun durchkomme, werde ich es tun.
Steve Butler

Antworten:

7

Der Grund dafür in RFC 3720 ist, dass IQNs vor allem eindeutig sein sollten. Das vorangestellte Datum ist eine angemessene Garantie dafür, dass die Entität, die den zu diesem Zeitpunkt dargestellten Domänennamen (im Feld für die Namensauthentifizierung) kontrollierte , eine "Namensbehörde" ist, die die Eindeutigkeit sicherstellen kann - Domänennamen wechseln ständig den Besitzer und seitdem das einzige andere eindeutige Material Weiter geht es mit der RHS des ersten: (was für alle kostenlos ist) Möglicherweise gibt es bereits ein Linux: array0 oder etwas ähnlich Einfallsreiches.

RFC 3720 verwendet das (oft amüsante) MUSS, um das Datum als JJJJ-MM zu definieren, und geht auf schädliche Details über das genaue Format und die genaue Verwendungszeit usw. ein. Ich stelle mir vor, dies dient lediglich dazu, das Parsen und Sortieren zu vereinfachen (feste Feldlängen, immer größer) ). Werden die RFC-Polizisten Ihre Tür aufbrechen, wenn Sie Ihr Ziel iqn.screwyouRFC3720 anrufen? Wird es das Internet brechen? Nein.

Es hat absolut nichts mit DNS zu tun. DNS ist lediglich ein praktisches, delegiertes, hierarchisches System, mit dem Sie bereits von jeder TLD auf ein einzelnes Gerät übertragen werden, wenn Sie möchten. Auf diese Weise können Sie auf einfache Weise Verantwortliche identifizieren.

Persönlich möchte ich sicherstellen, dass der IQN etwas darüber sagt, wann, wer, was, warum und wie wichtig die Daten sind. Wenn ich also irgendwo nach Platz suche, weiß ich, wen ich fragen muss.

Ob es Ihnen gefällt oder nicht, Sie sind die Namensbehörde.

Vierbeiner
quelle
Tolle Erklärung. Mir ist klar, dass ich die Namensbehörde bin. Glücklicherweise / Leider werden die NetApps, die ich in der Produktion verwende, sehr pingelig, wenn es darum geht, sich an den RFC zu halten (während es meine Test-Linux-Box nicht zu interessieren scheint), sogar bis zu dem Punkt, an dem ich com / net / org im iqn verwenden muss. Es ist frustrierend, zumal ich eine ausführlichere und nützlichere Benennung verwenden möchte. dh iqn. {Beliebiges Datum}. {Hostname}: {Array} {Lun}. Persönlich hätte ich es auch lieber vorwärts als rückwärts. Es ist viel einfacher, sich daran zu erinnern, dass der Host jarvis.starkindustries.pri einen iqn von iqn.2012-01.jarvis.starkindustries.pri hat
Steve Butler