Catalyst 9200/9200L Third-Party SFP/Optics oddities

Introduction

Most of the networks I work with very rarely use Cisco-branded SFPs/optics. A lot of people resort to cheaper third-party optics because of the insane price difference. You could buy 20 third-party optics and barely get one from Cisco in comparison. It’s not a hard deal to take considering there are very rarely any operational differences between the two…once you get them going.

When I first got my hands on a bunch of Catalyst 9200 switches earlier this year, I ran into some strange issues when it was time to install all the SFPs into the Network Modules (NM).

My C9200-24P had the 10 Gigabit network module called C9200-NM-4X installed into it and when I inserted SFPs into the slots I ran into all sorts of weird behavior. Sometimes the SFPs would not show up at all, sometimes the switch would tell me the SFP was unsupported, sometimes it took several minutes before the switch told me that a transceiver had been inserted. I did a lot of reloads of the switch and moved the SFPs around but I was never able to figure out a pattern for what was going on.

Below you see two identical SFPs inserted at the same time, one which took an additional 3 and a half minutes before the switch recognized it.

I also tried all of this on a C9200L-24P-X and the issue seemed to be present here as well.

Software-wise I tested the “Gibraltar” 16.9.X code, then the 16.10.X code, and finally the 16.11.X code, same issue everywhere.

Command “service unsupported-transceiver” is broken

In a last attempt to get the SFPs working as they should every time I was going to use the command service unsupported-transceiver but to my surprise, it didn’t work at all.

Looking at the command using the “?” help menu showed me the command was butchered, there were even two entries of it.

IOS-XE Gibraltar 16.12 has come to save us

Last week (late July 2019) Cisco finally released a new version of IOS-XE for use with 9200 and 9200L switches and it seems they have at least fixed the issue with the command service unsupported-transceiver.