What is a Firmware Upgrade and why is it important?
Firmware is the software that is embedded into a hardware device. Firmware consists of a set of instructions or commands which controls how your network device behaves. So, when a vendor releases the latest OS version for certain device models, you will have to upgrade the existing OS version to the latest one. This is known as a Firmware Upgrade. Network devices like routers, switches should always be always updated to the latest firmware version to ensure optimal network performance. With firmware updates, improvements made to the functionality of these devices can be acquired instantly and without cost, enhancing the experience when using them. Upgrading Firmware also contains bug fixes and protects you from vulnerabilities to meet with customer satisfaction.
Fixing vulnerabilities by upgrading Firmware in Network Configuration Manager
Whenever a vendor releases the latest OS version, you can upgrade to the latest version using Network Configuration Manager to avoid vulnerabilities. Manually logging into each device to check if it is vulnerable or not is a time-consuming ask. Instead, you can use the Hardware Inventory to filter vulnerable devices based on the Firmware version number. Network Configuration Manager will list all the devices which fall under that particular version number which needs an upgrade to be bug-free. Once the devices are listed, Firmware can be updated in those devices by bulk execution of Configlets. Thus, Upgrading Firmware in bulk not only saves time but also helps to fix vulnerabilities in multiple devices at one go.
How to execute firmware upgrade in Network Configuration Manager?
Network Configuration Manager helps to upgrade firmware through the use of advanced script execution mode in Configlets. Advanced script execution helps in executing a series of inter-connected commands on a device in command line. Firmware upgrade can be performed on demand or can be scheduled for execution automatically at any future point of time. All you need to do is to create a small template containing the required commands and then execute the template for carrying out repetitive tasks for many devices, multiple times.
Now, let us take an example to upgrade Firmware by executing configlets:
The Requirements to upgrade Firmware for a Cisco IOS Router
- Memory requirement: The router should have sufficient disk or flash memory to store the Cisco IOS. The router should also have sufficient memory (DRAM) to run the Cisco IOS. If the router does not have sufficient memory (DRAM), the router will have boot problems when it boots through the new Cisco IOS.
- Interfaces and modules support: You must ensure that the new Cisco IOS supports all the interfaces and modules in the router.
- Software feature support: You must make sure that the new Cisco IOS supports all the features used with the old Cisco IOS.
Upgrading Firmware for a Cisco IOS Router
Once all the above requirements are satisfied, you must follow the following steps to upgrade Firmware in a Cisco device
- Download the Cisco IOS Software Image onto the TFTP server in network configuration manager.
- Verify whether TFTP Server has IP Connectivity to the router. In order to achieve connection, the router interface and the TFTP server must have an IP address in the same range or a default gateway configured.
- Once, the connection is established, Copy the IOS Image to the Router from the TFTP server.
- Save the configuration and reload the router, After the reload is complete, the router should run the desired Cisco IOS Software image
Sample command for copying an IOS image to the Router:
The above terminal shows the sample command that will be executed in a TELNET or a putty. The corresponding configlet commands for upgrading Firmware in Network Configuration Manager is shown below:
<command prompt=']?'>copy tftp: flash:</command>
<command timeout='120' suffix='$NO_ENTER'>y</command>
Once the commands are given, the configlets can be applied in bulk to multiple devices to upgrade Firmware. Not just that, with the help of configlets you can also execute commands to fix errors and to make bulk changes. Click here to know more about Configlets!