Рано или поздно все мы сталкиваемся с тем, что нам нужно обновить IOS. Если Вы никогда этого не делали, но сделать надо, то этот пост для вас!
Для обновления нам понадобится:
1. TFTP сервер
2. Свежий IOS
3. Доступ к консоли маршрутизатора
В качестве TFTP сервера можно использовать Tftpd32. Кроме TFTP сервера выполняет функции TFTP клиента, DHCP сервера, Syslog сервера. Настройки у нее простейшие — необходимо указать папку корневую папку с файлами и интерфейс по которому будет отвечать наш TFTP сервер.
Свежий IOS берется на cisco.com. Правда предварительно нужно оплатить SmartNet (на разные железки он стоит разных денег). Можно пойти другим путем и посетив один из множества торрент-трекеров найти необходимый.
Итак, TFTP настроен, IOS положен в соответствующую папку. Запускаем консольного клиента (я использую putty) и логинимся на рутер.
Первое на что нужно сделать, работает ли наш TFTP, для этого просто скопируем на него нашу текущую конфигурацию:
В логах TFTP увидим приблизительно следующее:
А на диске, у нас появится файл rtr001-confg.
Сразу после проверки линка, выясним сколько у нас места на флешке:
В данном примере места достаточно чтобы залить новый ipbase IOS, но ведь так не всегда, частенько места на флешке не хватает, как в следующем примере:
и для того чтобы залить туда новый adventerprisek9 IOS места уже не хватит. Что же делать? Есть 2 варианта:
— скопировать старый IOS на TFTP, удалить с маршрутизатора, залить новый
или
— удалить с маршрутизатора и залить новый.
Для чего сохранять старый? Бывает что под новой редакцией IOS что-то может и не заработать, и придется откатиться назад :(
Как Вам поступить Вы решите сами. Я делаю так — если это мой локальный маршрутизатор к которому в случае чего можно подступиться, то выбираю пункт 2, если это удаленная площадка, то в зависимости от ширины канала все равно пункт 2 :)
Удаляем старый IOS:
Файл удален, заливаем новый:
IOS на флешке, но торопиться не надо. Нужно проверить MD5, для этого воспользуемся командой:
И если MD5 совпадают (правильный MD5 показывается при скачивании файла с cisco.com) можно завершать начатое :)
Остается только поменять в конфиге команду загрузки с
boot system flash:c2800nm-adventerprisek9_mz.124-24.T.bin
на
boot system flash:c2800nm-adventerprisek9_ivs_mz.124-24.T1.bin
и отправить рутер в перезагрузку
После перезагрузки остается залогиниться и проверить все ли хорошо:
Для обновления нам понадобится:
1. TFTP сервер
2. Свежий IOS
3. Доступ к консоли маршрутизатора
В качестве TFTP сервера можно использовать Tftpd32. Кроме TFTP сервера выполняет функции TFTP клиента, DHCP сервера, Syslog сервера. Настройки у нее простейшие — необходимо указать папку корневую папку с файлами и интерфейс по которому будет отвечать наш TFTP сервер.
Свежий IOS берется на cisco.com. Правда предварительно нужно оплатить SmartNet (на разные железки он стоит разных денег). Можно пойти другим путем и посетив один из множества торрент-трекеров найти необходимый.
Итак, TFTP настроен, IOS положен в соответствующую папку. Запускаем консольного клиента (я использую putty) и логинимся на рутер.
Первое на что нужно сделать, работает ли наш TFTP, для этого просто скопируем на него нашу текущую конфигурацию:
RTR001#copy run tftp Address or name of remote host []? 10.10.10.10 Destination filename [rtr001-confg]? !! 28345 bytes copied in 1.980 secs (14316 bytes/sec) RTR001#
В логах TFTP увидим приблизительно следующее:
Connection received from 10.10.10.1 on port 59968 [30/09 12:57:15.775] Write request for file <rtr001-confg>. Mode octet [30/09 12:57:15.775] Using local port 4706 [30/09 12:57:15.791] <rtr001-confg>: rcvd 56 blks, 28345 bytes in 0 s. 0 blk resent [30/09 12:57:15.978]
А на диске, у нас появится файл rtr001-confg.
Сразу после проверки линка, выясним сколько у нас места на флешке:
RTR001#sho flash: -#- --length-- -----date/time------ path 1 27624324 Apr 21 2009 03:48:56 c2801-ipbasek9-mz.124-24.T.bin 2 2746 Apr 29 2008 13:22:40 sdmconfig-2801.cfg 3 931840 Apr 29 2008 13:23:02 es.tar 4 1505280 Apr 29 2008 13:23:24 common.tar 5 1038 Apr 29 2008 13:23:42 home.shtml 6 112640 Apr 29 2008 13:24:00 home.tar 7 1697952 Apr 29 2008 13:24:32 securedesktop-ios-3.1.1.45-k9.pkg 8 415956 Apr 29 2008 13:24:58 sslclient-win-1.1.4.176.pkg 31686656 bytes available (32309248 bytes used) RTR001#
В данном примере места достаточно чтобы залить новый ipbase IOS, но ведь так не всегда, частенько места на флешке не хватает, как в следующем примере:
RTR002#sho fla -#- --length-- -----date/time------ path 1 869 Apr 01 2009 11:52:28 XMLDefaultCIPC.cnf.xml 2 281506 Mar 20 2008 09:23:50 ATA030100SCCP040211A.zup 3 638 Mar 20 2008 09:23:50 CME_GUI_README.TXT 4 331101 Mar 20 2008 09:23:50 CP7902060000SCCP050124A.sbin 5 338897 Mar 20 2008 09:23:52 CP7905060000SCCP050124A.sbin 6 338481 Mar 20 2008 09:23:54 CP7905060000SCCP050124A.zup 7 340247 Mar 20 2008 09:23:54 CP7912060000SCCP050124A.sbin 8 1602 Mar 20 2008 09:23:54 CiscoLogo.gif 9 953 Mar 20 2008 09:23:54 Delete.gif 10 128792 Mar 20 2008 09:23:56 P00307020200.bin 11 458 Mar 20 2008 09:23:56 P00307020200.loads 12 680394 Mar 20 2008 09:23:58 P00307020200.sb2 13 129196 Mar 20 2008 09:23:58 P00307020200.sbn 14 333822 Mar 20 2008 09:24:00 P00403020214.bin 15 1347 Mar 20 2008 09:24:00 Plus.gif 16 47904 Mar 20 2008 09:24:00 S00103020002.bin 17 49169 Mar 20 2008 09:24:00 S00104000100.sbn 18 174 Mar 20 2008 09:24:02 Tab.gif 19 4448 Mar 20 2008 09:24:02 admin_user.html 20 656913 Mar 20 2008 09:24:04 admin_user.js 21 1045952 Mar 20 2008 09:24:08 cmterm_7920.4.0-02-00.bin 22 16948 Mar 20 2008 09:24:08 dom.js 23 864 Mar 20 2008 09:24:08 downarrow.gif 24 6315 Mar 20 2008 09:24:10 ephone_admin.html 25 4658 Mar 20 2008 09:24:10 logohome.gif 26 496521 Mar 20 2008 09:24:12 music-on-hold.au 27 3831 Mar 20 2008 09:24:12 normal_user.html 28 78819 Mar 20 2008 09:24:12 normal_user.js 29 843 Mar 20 2008 09:24:12 sxiconad.gif 30 2453 Mar 20 2008 09:24:12 telephony_service.html 31 870 Mar 20 2008 09:24:12 uparrow.gif 32 10230 Mar 20 2008 09:24:12 xml-test.html 33 3389 Mar 20 2008 09:24:12 xml.template 34 1823 Mar 20 2008 09:25:30 sdmconfig-2811.cfg 35 6036480 Mar 20 2008 09:26:24 sdm.tar 36 861696 Mar 20 2008 09:26:48 es.tar 37 1164288 Mar 20 2008 09:27:20 common.tar 38 1038 Mar 20 2008 09:27:40 home.shtml 39 113152 Mar 20 2008 09:28:02 home.tar 40 1697952 Mar 20 2008 09:28:36 securedesktop-ios-3.1.1.45-k9.pkg 41 416354 Mar 20 2008 09:29:02 sslclient-win-1.1.3.173.pkg 42 61 Apr 02 2009 08:11:56 SEP000ea6a11782.cnf.xml 43 61 Apr 01 2009 11:48:58 SEP0014f2721179.cnf.xml 44 11181 May 18 2009 05:39:36 conf180509.txt 45 59846440 Sep 14 2009 08:08:38 c2800nm-adventerprisek9_mz.124-24.T.bin 54026240 bytes available (75726848 bytes used) RTR002#
и для того чтобы залить туда новый adventerprisek9 IOS места уже не хватит. Что же делать? Есть 2 варианта:
— скопировать старый IOS на TFTP, удалить с маршрутизатора, залить новый
или
— удалить с маршрутизатора и залить новый.
Для чего сохранять старый? Бывает что под новой редакцией IOS что-то может и не заработать, и придется откатиться назад :(
Как Вам поступить Вы решите сами. Я делаю так — если это мой локальный маршрутизатор к которому в случае чего можно подступиться, то выбираю пункт 2, если это удаленная площадка, то в зависимости от ширины канала все равно пункт 2 :)
Удаляем старый IOS:
RTR002#delete c2800nm-adventerprisek9_mz.124-24.T.bin Delete filename [c2800nm-adventerprisek9_mz.124-24.T.bin]? Delete flash:/c2800nm-adventerprisek9_mz.124-24.T.bin? [confirm] RTR002#
Файл удален, заливаем новый:
RTR002#copy tftp flash: Address or name of remote host []? 10.10.10.10 Source filename []? ios/c2800nm-adventerprisek9_ivs_mz.124-24.T1.bin Destination filename [c2800nm-adventerprisek9_ivs_mz.124-24.T1.bin]? Accessing tftp://10.10.10.10/ios/c2800nm-adventerprisek9_ivs_mz.124-24.T1.bin... Loading ios/c2800nm-adventerprisek9_ivs_mz.124-24.T1.bin from 10.10.10.10 (via FastEthernet0/1.10): !!!!!!!!!!!!!!!!!!!!!!! [OK - 59971380 bytes]
IOS на флешке, но торопиться не надо. Нужно проверить MD5, для этого воспользуемся командой:
RTR002#verify /md5 flash:c2800nm-adventerprisek9_ivs_mz.124-24.T1.bin .............................................................................................................. [часть строк удалена] .............................................................................................................. .............................................................................................................. .............................................................................................................. ..............................................................................................................Done! verify /md5 (flash:c2800nm-adventerprisek9_ivs_mz.124-24.T1.bin) = e8fab98a72c1516538da7686f8404fcf RTR001#
И если MD5 совпадают (правильный MD5 показывается при скачивании файла с cisco.com) можно завершать начатое :)
Остается только поменять в конфиге команду загрузки с
boot system flash:c2800nm-adventerprisek9_mz.124-24.T.bin
на
boot system flash:c2800nm-adventerprisek9_ivs_mz.124-24.T1.bin
и отправить рутер в перезагрузку
RTR002#reload Verifying file integrity of flash:/c2800nm-adventerprisek9_ivs_mz.124-24.T1.bin................................................ .............................................................................................................. .............................................................................................................. .............................................................................................................. [часть строк удалена] .............................................................................................................. .............................................................................................................. .............................................................................................................. .............................................................................................................. Done! Embedded Hash MD5 : 564526F4D154F7BEC08F89309A633AE9 Computed Hash MD5 : 564526F4D154F7BEC08F89309A633AE9 CCO Hash MD5 : E8FAB98A72C1516538DA7686F8404FCF Signature Verified Proceed with reload? [confirm]
После перезагрузки остается залогиниться и проверить все ли хорошо:
RTR002#sho ver | inc bin System image file is "flash:c2800nm-adventerprisek9_ivs_mz.124-24.T1.bin" RTR002#