# ICX6650 Licensing **DISCLAIMER:** This is intended for educational use only, or for a homelab type environment. Brocade licenses are keyed to a specific switch License ID, so they cannot be loaded on multiple switches. Thankfully these IDs are stored in a separate EEPROM and can be easily changed. To download and use the master license files in this guide on as many switches as you need, you simply need to change your license ID to match. Only the license code reads this value, so changing it has no negative effects. To begin, visit the [Brocade Overview](brocade-overview.md) page, and download the firmware ZIP - this also contains the license files. ## What Does This Do? On the Brocade ICX6650, the two `POD` licenses in this guide unlock the following: - 10gbE functionality on the rest of the 10gbE SFP+ ports (all will be unlocked) - 40gbE functionality on the rear 40gbE ports - IPv6 Routing - static/unicast/multicast - BGP - OSPF - PIM (all variations) - VRRP (all variations) - Policy Based Routing - VRFs - GRE Tunnels - IPv6-in-IPv4 tunnels - will terminate Hurricane Electric tunnels etc ## Update The Switch To do this, you need the latest firmware - this is not optional! Follow the update guide to upgrade to the latest firmware image if you haven't already - [ICX6650 Update & Start Guide](icx6650.md). **Note:** If this is a new/unconfigured switch, or a switch with an unknown config on it, follow that update guide all the way through to the `Saving & Conclusions` section! This will get the switch in a state that it can TFTP licenses in. When upgraded and configured, move on to the below. ## Change The Serial We need to change the serial and license ID to match the new licenses. From the normal switch OS: ``` enable hw pid-prom serial 2ax5o2jk68e hw pid-prom clear-sw-lid reload ``` The switch will reboot, and when it comes back up it will have a new license ID and serial. ## Importing The Licenses Once it's booted into the OS, ensure you are hosting the firmware ZIP contents via TFTP. If you need an easy and temporary TFTP server for windows, I recommend [Tftpd32 Portable Edition](http://www.tftpd64.com/tftpd32_download.html). Now we can import the licenses. Replace the IPs in the commands with the IP of your own TFTP server: ``` enable copy tftp license 192.168.1.8 ICX6650/1-6650-10gb.xml unit 1 copy tftp license 192.168.1.8 ICX6650/2-6650-40gb.xml unit 1 ``` Now make sure they imported properly: ``` show license ``` The ```Status``` column should show ```Active``` for all the new licenses. **Note:** If the switch had other licenses on it beforehand, they will now show as `invalid` - this is expected as the serial no longer matches. If you ever decide to revert the switch, the original licenses will become `active` again once the serial is reverted to stock. If everything looks good, write mem and the licensing is finished: ``` write mem ``` ## Turning On The Rear 40gbE Ports When the licenses are imported, the remaining front 10gbE ports are automatically enabled. However the rear 40gbE ports need to be told to unlock: ``` conf t fpod-40g-enable group 1 fpod-40g-enable group 2 fpod-40g-enable group 3 write mem ``` That's it! **Note:** The first 4 rear 40gbE ports are 40gbE only (1/2/1 - 1/2/4) **Note:** The last 2 rear 40gbE ports are 10gbE breakout only (1/3/1 - 1/3/8) ## Reverting If you want to revert the switch to its original serial and license ID (for instance, if you sell it), that's quite easy. First, get the serial number from your switch. It should be on a sticker on the bottom of the unit. Then just use the commands we used earlier, but now using your actual serial. Make sure the capitalization matches what is on your switch! ``` enable hw pid-prom serial YourSNhere hw pid-prom clear-sw-lid reload ``` Once the switch reboots and has a new serial, you need to delete the licenses you loaded from this guide. Do not skip this! They will be `invalid` after changing the serial back. ``` enable #if you had no previous licenses from before this guide: license delete unit 1 all #you're done #If you have previous licenses from before this guide you want to keep: #list the licenses: show license #now delete each of my licenses (they should be the ones showing invalid) #replace X with the number of the license in the list you want to delete: license delete unit 1 index X #once a license is deleted, the index number of remaining lics changes #run show license again before deleting more if you're deleting multiple ``` It now has the stock license ID and serial, and the licenses have been removed. The output of `show license` should be empty (unless you previously had licenses from before this guide, in which case they should now show valid). ## Does This Affect Stacking? Q: Since all the switches in a stack would have the same license and serial after this procedure, would this cause issues? A: No - stacking works perfectly. The License and Serial ID are only used for licensing. The switch and stack is totally unaware of them. Stacking uses each switch base MAC address to keep track of stack members, and the MAC is unmodified. **Note:** The ICX6650 does not support stacking anyhow