IQN 命名约定

Ste*_*ler 10 storage iscsi storage-area-network

我已经看到了很多关于 IQN 应该如何格式化的信息,但是关于如何构建它们的信息并不多。谈到 iSCSI,我是个新手,我可以使用它,但我想知道我是否应该只是编造这些东西,或者是否有充分的理由遵循某种标准。

例如,这就是 (wikipedia http://en.wikipedia.org/wiki/ISCSI#Addressing ) 说您应该格式化 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]
Run Code Online (Sandbox Code Playgroud)

我的问题特别是,为什么要约会?它可以是任何东西,它意味着什么吗?这里有执法吗?我会不会遇到把“错误”日期放进去会咬我的地步?

域示例是否因某种原因被颠倒(如 dns)?如果我有一个像 starkindustries.pri 这样的域名,我的 iqn 会像:

iqn.2006-05.pri.starkindustries:Linux:array0
Run Code Online (Sandbox Code Playgroud)

这取决于DNS吗?(经验告诉我它不是,但它可能会以微妙的方式失败)如果它依赖于 DNS,我是使用主机名还是仅使用我的域名?即 Jarvis.starkindustries.pri 或只是 starkindustries.pri ?

另外,如果我使用 IP 地址(有些人建议您不使用 DNS,这会更令人困惑,因为它在没有 DNS 的情况下工作)您是否像使用 dns 一样反转它?即 10.1.2.0

iqn.2006-05.0.2.1.10:Linux:array0 
Run Code Online (Sandbox Code Playgroud)

此外,您是否使用主机地址(iSCSI 目标的?)或网络地址。

是否有任何强制执行“由“example.com”命名机构定义的字符串,即有什么原因我不能使用 blahblahblah 还是有用的东西?我意识到一个有用的名称更具描述性,但是否有任何技术原因?我也相信我是“命名权威”的巨大飞跃。

我想最重要的是,我正在为这些 IQN 制作一堆东西,而且它们似乎正在起作用。我只是想至少知道在实际生成 iqns 时在哪里可以找到一些最佳实践。我只是在考虑有一天我不会成为唯一负责存储的人,所以我需要传递一些标准,否则我要么会弄得一团糟,要么让其他人弄得一团糟需要一个新的 IQN 块。

qua*_*cky 8

RFC 3720背后的基本原理是,最重要的是,IQN 应该是唯一的。前面的日期是合理保证当时控制域名的实体(在命名身份验证字段中)一个“命名机构”,可以确保唯一性 - 域名一直易手,因为只有其他唯一的东西继续是第一个的 RHS :(这是一个免费的)可能已经有一个 Linux:array0 或类似的富有想象力的东西。

RFC 3720 使用(通常很有趣)必须将日期定义为 YYYY-MM,并详细介绍了关于精确格式和使用时间等的有害细节。我想这只是为了使解析和排序更简单(固定字段长度,总是增加)。如果你给目标 iqn.screwyouRFC3720 打电话,RFC 警察会打破你的门吗?它会破坏互联网吗?不。

它与 DNS 完全无关,DNS 只是一个方便的、委托的、分层系统,如果您愿意,它已经可以将您从任何 TLD 带到单个设备,因此这是识别责任方的简单方法。

就我个人而言,我喜欢确保 IQN 说明数据的时间、对象、内容、原因和重要性,因此当我在某个地方寻找空间时,我知道该问谁。

不管你喜不喜欢,你就是命名的权威。