CodingBox Q&A Ask question

第三方 SFP+ 光模块在一台二手 DCS-7150S-24 上一直起不来:enable3px 这个 flash 文件还能用吗?

Asked Active Viewed 69 AI translation from English
5

我为实验室淘了几台二手 Arista 交换机,结果直接撞上了光模块的门槛。Arista 编码的模块能连上,无源 DAC 线也能连上,任何第三方的东西都会让端口一直是 down 的。

实验室情况:

  • DCS-7150S-24,二手买的,没有支持合同,背后也没有客户经理
  • 各种第三方 SFP+ 模块
  • 机架内短距用的是无源 DAC 线
Et1  passive DAC        -> link comes up
Et5  third-party SFP+   -> port stays down
Et6  Arista-coded SFP+  -> link comes up

目前搞清楚的:

  • DAC 能连上而光模块不能,说明这是编码检查的问题,跟布线和笼子本身坏没关系
  • 有一条格式为 service unsupported-transceiver CUSTOMERNAME LICENSEKEY 的配置命令,很明显需要一个我根本没法拿到的密钥
  • 更早的一些文章提到用 flash 上的一个标记文件代替密钥,但我搞不清楚这适用于哪一代设备

对这个年代的设备来说,这两种机制里到底该用哪一种,flash 文件这条路在 7150S 上还能用吗,还是密钥已经是唯一的出路了?

Comments 6

在那一代设备上是文件那种方式,而且确实简陋得跟听起来一样。在 EOS CLI 里:

bash touch /mnt/flash/enable3px
write memory
reload

一个空文件,里面什么都没有——它光是存在,重启之后就会打开第三方光模块的支持。支持这个办法的平台列表很长:DCS-7120T-4S、整个 DCS-7050 系列、以及整条 DCS-7150S 产品线等等,每个型号能认这个文件的最新 EOS 版本各不相同,大致从最老设备上的 4.13.16M 一直到 7150S 上的 4.23 分支。更新的交换机会完全无视这个文件。

所以 7150S-24 是落在这条界线好的那一侧的,前提是你没有升级到超出这个型号支持范围的版本。在你走密钥那条路之前先试试这个。

1 South Koreawaverunner63KR Show original (English) AI translation

那台 7150S-24 上跑的是哪个 EOS 分支,买回来之后有没有升级过?这一点很重要,因为这个截止线是按具体平台算的,不是按整个系列算的。这个标记文件在 7048T、7120T-4S、7140T-8S、7124 和 7148 的 SFP+ 变体、7050 和 7150S 系列、以及 7548S-LC 线卡上都有文档说明能用,但每一款能认这个文件的最后一个 EOS 版本各不相同。

如果你在一台二手设备上已经升级过 EOS,那你很有可能已经把自己升级出了这个技巧能用的范围,这时候便宜的解法是退回到更早的分支,而不是去找密钥。

4 KazakhstanrackhubKZ Show original (English) AI translation

这台设备到手之后 EOS 从来没动过,所以还停在卖家留下的那个分支上——事后看来这算是运气好。做了 touch、write memory、reload——之前起不来的那些第三方 SFP+ 模块现在都能作为普通端口正常起来了。不用密钥,也没有客户经理,别的什么都不需要。DAC 全程都正常,跟预期一样。

3 United Statesphotonrunner70US Show original (English) AI translation

给以后碰到更新设备的人提个醒:在那上面这个文件是真的被完全忽略了,唯一的路是一个按客户签发的加密密钥,写在运行配置里,形式是这样的:

service unsupported-transceiver CUSTOMERNAME LICENSEKEY

这个密钥是客户经理或销售工程团队给的,不是官方支持给的——TAC 没有权限签发解锁密钥,只会把你转给客户经理团队,而如果这台交换机是二手买来的,这条路基本就是死胡同。

对实验室搭建来说这一点也值得重复一下:不管解锁状态如何,无源 DAC 线默认都是被接受的。如果线路够短,你完全可以绕开这整个问题,短距用 DAC 布线,光模块只留给那些真正需要的链路。

1 Egyptnetadmin16EG Show original (English) AI translation

对"写在运行配置里"这一点做个小修正:在我接触过的更老的代码里,同一条命令还有一个没有文档记录的变体,所以如果你看到的参考资料语法跟上面对不上,多半是这个原因,而不是有人打错字了。

以我的经验,这个密钥不用重启就能生效——大多数第三方光模块在输入命令之后立刻就开始工作了,不过有那么几个模块不管怎样都还是不认。这是我很久以前在一台现在已经不在手里的设备上的经历,所以在你围绕这个计划维护窗口之前,先在自己的设备上确认一下。

2 United Arab Emirateslambdahawk88AE Show original (English) AI translation

既然每次讨论这个话题都会有人拿它来对比:在 Cisco IOS-XE 和 IOS XR 上,等价的做法是两步,而不是一步。光有全局命令是不够的,你还需要在每一个应该接受这个模块的物理端口上加一条按接口的命令:

service unsupported-transceiver
transceiver permit pid all

按接口的这一条才是跳过产品 ID 检查的关键,这样端口至少会去尝试点亮这个光模块——不保证模块之后就能正常工作,只是说平台不再直接拒绝它了。我在 IOS XR 5.3.3 和 IOS-XE 的设备上都做过。

两家厂商的注意事项是一样的,这也是这个话题一直有人争论的原因:如果故障被追溯到客户自己安装的第三方收发器,保修期内的支持或者合同支持可能会被拒绝。用在实验室没问题,用在生产环境则是一个需要清醒权衡之后再做的决定。

4 Egyptnetadmin16EG Show original (English) AI translation
Log in to comment. Log in