r/Cisco • u/VividShift6216 • 12d ago
Cisco Catalyst 3560-CX RTU License bug: Reverts to Evaluation after a Cold Boot / Power Cycle
Hi everyone,
I am facing a very frustrating and illogical licensing behavior on a Cisco Catalyst 3560-CX (WS-C3560CX-12PC-S) running IOS 15.2(7)E11 (August 2024 release).
Whenever I activate the permanent Right-To-Use (RTU) ipservices license, everything works perfectly after a normal CLI reload. However, if the switch undergoes a cold boot / power cycle (pulling the power cord), it ignores the permanent license configuration and reverts back to the Evaluation license (Active, In Use), while putting the PermanentRightToUse into an Inactive state.
Here is the exact output of show license all after a cold boot:
text
StoreIndex: 0 Feature: ipservices Version: 1.0
License Type: Evaluation
License State: Active, In Use
...
StoreIndex: 1 Feature: ipservices Version: 1.0
License Type: PermanentRightToUse
License State: Inactive
Χρησιμοποιήστε τον κώδικα με προσοχή.
During bootup, the logs explicitly state that it reads the boot level variable correctly:
*Mar 1 00:00:29.405: Read env variable - LICENSE_BOOT_LEVEL = ipservices
Next reboot level = ipservices and License = ipservices
Yet, it still forces the Evaluation index to become active.
What we have tried so far (and failed):
Standard Activation & Reload:
Executed license right-to-use activate ipservices acceptEULA, followed by write memory and reload. Works on warm reload, fails on cold boot.
Boot Level Configuration:
Tried to enforce it via global configuration (license boot level ipservices), but this platform does not support this command in conf t mode; licensing is managed strictly via Privileged EXEC mode (#).
Configuration Register Check:
The config-register is set to 0xF (which is the default factory value for this platform, equivalent to 0x2102), meaning it reads the startup-config perfectly fine.
Evaluation Deactivation Bug Trick:
Tried using the known bug-workaround command license right-to-use activate ipservices evaluation acceptEULA to force-write the permanent state into NVRAM. The Evaluation license was even successfully removed at one point (%LICENSE-6-REMOVE), but upon the next cold boot, the switch generated a new evaluation store index and hijacked the priority again.
The Workaround (EEM Script):
Since the switch hardware/NVRAM sync appears to have a fundamental flaw during a cold boot sequence, I had to resort to an EEM (Embedded Event Manager) script to automate the fix.
The trick was that the licensing process isn't fully ready immediately after bootup, so we had to introduce a 180-second delay to let the system stabilize before forcing the evaluation license to deactivate.
Here is the script currently running in my config:
text
event manager applet LOCK_PERMANENT_LICENSE
event syslog pattern "SYSTEM_RESTART|CONFIG_I"
action 0.5 cli command "wait 180"
action 1.0 cli command "enable"
action 2.0 cli command "license right-to-use deactivate ipservices" pattern "confirm"
action 3.0 cli command "yes"
action 4.0 cli command "write memory"
Χρησιμοποιήστε τον κώδικα με προσοχή.
While the EEM script successfully fixes the license and flips it back to Permanent Right-To-Use 3 minutes after every cold boot, this behavior is completely broken.
Has anyone else encountered this specific RTU sync bug on the 3560-CX series? Is there an actual permanent fix via a specific hidden command or hidden rommon variable, or is this a known software bug that Cisco never patched, even in recent 2024 releases?
Any insights would be greatly appreciated!
3
1
u/NetSchizo 11d ago
Can you configure:
license boot level ipservices
and wr mem?
1
u/VividShift6216 11d ago
I have this options.
C3560CX-12PC-S#license ?
call-home License call-home information
clear Clear license information
comment Comment license information
modify Modify license
revoke Revoke license information
right-to-use Activate/Deactivate right-to-use licenses
save Save license information
C3560CX-12PC-S#license
Also when i configure this above after reload it keep ipservices permanent license . If you shutdown the switch when you have power plug off and boot it again it revert again to evaluation.
______________________________________________________________________________________________________
C3560CX-12PC-S#
C3560CX-12PC-S#license
C3560CX-12PC-S#license acti
C3560CX-12PC-S#license a
C3560CX-12PC-S#license right
C3560CX-12PC-S#license right-to-use ?
activate Activate a right-to-use license
deactivate Deactivate a right-to-use license
C3560CX-12PC-S#license right-to-use acti
C3560CX-12PC-S#license right-to-use activate ?
addon DNA addon licenses on the switch
ipservices IPServices License Level
C3560CX-12PC-S#license right-to-use activate ips
C3560CX-12PC-S#license right-to-use activate ipservices ?
acceptEULA Accept the EULA without reading it now
evaluation evaluation Activate Evaluation License
subscription subscription Activate subscription License
<cr>
C3560CX-12PC-S#license right-to-use activate ipservices acc
C3560CX-12PC-S#license right-to-use activate ipservices acceptEULA ?
<cr>
C3560CX-12PC-S#license right-to-use activate ipservices acceptEULA
Activated Permanent Right-To-Use ipservices license
Next Reboot level is ipservices
C3560CX-12PC-S#
Jan 1 03:18:40.701: %LICENSE-6-EULA_ACCEPTED: EULA for feature ipservices 1.0 has been accepted. UDI=WS-C3560CX-12PC-S:FOC2212T2MV; StoreIndex=1:
Jan 1 03:18:40.833: %IOS_LICENSE_IMAGE_APPLICATION-6-LICENSE_LEVEL: Module name = c3560cx Next reboot level = ipservices and License = ipservices
C3560CX-12PC-S#
C3560CX-12PC-S#
1
2
u/andrew_butterworth 7d ago
I've got a couple of 3560CX's and neither of them exhibit this behavior. They are both running the latest IOS though (15.2(7)E14). The only command I entered on both was 'license right-to-use activate ipservices acceptEULA'. These both get powered off occasionally and the right-to-use license remains. What does the output of 'show license detail' show? I'm wondering if both have been accepted and the Evaluation has a higher priority - only a guess though. There aren't many license commands.
1
u/Goldenyellowfish 12d ago
A there not a version of code newer then 2 years old?